140098a9e:	49 8b cc             	mov    %r12,%rcx
140098aa1:	66 85 c0             	test   %ax,%ax
140098aa4:	74 1f                	je     0x140098ac5
140098aa6:	41 b8 ff 00 00 00    	mov    $0xff,%r8d
140098aac:	66 41 3b c0          	cmp    %r8w,%ax
140098ab0:	0f 87 4f fe ff ff    	ja     0x140098905
140098ab6:	48 83 c2 02          	add    $0x2,%rdx
140098aba:	48 ff c1             	inc    %rcx
140098abd:	0f b7 02             	movzwl (%rdx),%eax
140098ac0:	66 85 c0             	test   %ax,%ax
140098ac3:	75 e7                	jne    0x140098aac
140098ac5:	48 8b c1             	mov    %rcx,%rax
140098ac8:	eb 4c                	jmp    0x140098b16
140098aca:	48 8d 45 c8          	lea    -0x38(%rbp),%rax
140098ace:	4c 8b c2             	mov    %rdx,%r8
140098ad1:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140098ad6:	48 83 cf ff          	or     $0xffffffffffffffff,%rdi
140098ada:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)
140098adf:	44 8b cf             	mov    %edi,%r9d
140098ae2:	44 89 64 24 28       	mov    %r12d,0x28(%rsp)
140098ae7:	33 d2                	xor    %edx,%edx
140098ae9:	41 8b ca             	mov    %r10d,%ecx
140098aec:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
140098af1:	e8 f2 af ff ff       	call   0x140093ae8
140098af6:	48 98                	cltq
140098af8:	48 85 c0             	test   %rax,%rax
140098afb:	74 0b                	je     0x140098b08
140098afd:	44 39 65 c8          	cmp    %r12d,-0x38(%rbp)
140098b01:	75 05                	jne    0x140098b08
140098b03:	48 ff c8             	dec    %rax
140098b06:	eb 0e                	jmp    0x140098b16
140098b08:	c7 43 2c 2a 00 00 00 	movl   $0x2a,0x2c(%rbx)
140098b0f:	c6 43 30 01          	movb   $0x1,0x30(%rbx)
140098b13:	48 8b c7             	mov    %rdi,%rax
140098b16:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
140098b1a:	48 33 cc             	xor    %rsp,%rcx
140098b1d:	e8 ae 67 fd ff       	call   0x14006f2d0
140098b22:	48 83 c4 78          	add    $0x78,%rsp
140098b26:	41 5f                	pop    %r15
140098b28:	41 5e                	pop    %r14
140098b2a:	41 5d                	pop    %r13
140098b2c:	41 5c                	pop    %r12
140098b2e:	5f                   	pop    %rdi
140098b2f:	5e                   	pop    %rsi
140098b30:	5b                   	pop    %rbx
140098b31:	5d                   	pop    %rbp
140098b32:	c3                   	ret
140098b33:	cc                   	int3
140098b34:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140098b39:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140098b3e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140098b43:	57                   	push   %rdi
140098b44:	41 54                	push   %r12
140098b46:	41 56                	push   %r14
140098b48:	48 83 ec 30          	sub    $0x30,%rsp
140098b4c:	33 db                	xor    %ebx,%ebx
140098b4e:	49 8b c1             	mov    %r9,%rax
140098b51:	49 8b e8             	mov    %r8,%rbp
140098b54:	48 8b f2             	mov    %rdx,%rsi
140098b57:	4c 8b f1             	mov    %rcx,%r14
140098b5a:	44 8b e3             	mov    %ebx,%r12d
140098b5d:	48 85 d2             	test   %rdx,%rdx
140098b60:	74 30                	je     0x140098b92
140098b62:	4d 85 c0             	test   %r8,%r8
140098b65:	74 30                	je     0x140098b97
140098b67:	88 1a                	mov    %bl,(%rdx)
140098b69:	4d 85 f6             	test   %r14,%r14
140098b6c:	74 03                	je     0x140098b71
140098b6e:	48 89 19             	mov    %rbx,(%rcx)
140098b71:	4c 8b 44 24 70       	mov    0x70(%rsp),%r8
140098b76:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
140098b7b:	4c 3b c5             	cmp    %rbp,%r8
140098b7e:	4c 0f 47 c5          	cmova  %rbp,%r8
140098b82:	49 81 f8 ff ff ff 7f 	cmp    $0x7fffffff,%r8
140098b89:	76 3a                	jbe    0x140098bc5
140098b8b:	be 16 00 00 00       	mov    $0x16,%esi
140098b90:	eb 76                	jmp    0x140098c08
140098b92:	48 85 ed             	test   %rbp,%rbp
140098b95:	74 d2                	je     0x140098b69
140098b97:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
140098b9c:	be 16 00 00 00       	mov    $0x16,%esi
140098ba1:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140098ba6:	c6 40 30 01          	movb   $0x1,0x30(%rax)
140098baa:	89 70 2c             	mov    %esi,0x2c(%rax)
140098bad:	45 33 c9             	xor    %r9d,%r9d
140098bb0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140098bb5:	45 33 c0             	xor    %r8d,%r8d
140098bb8:	33 d2                	xor    %edx,%edx
140098bba:	33 c9                	xor    %ecx,%ecx
140098bbc:	e8 ef 5d ff ff       	call   0x14008e9b0
140098bc1:	8b c6                	mov    %esi,%eax
140098bc3:	eb 69                	jmp    0x140098c2e
140098bc5:	4c 8b cf             	mov    %rdi,%r9
140098bc8:	48 8b d0             	mov    %rax,%rdx
140098bcb:	48 8b ce             	mov    %rsi,%rcx
140098bce:	e8 21 fc ff ff       	call   0x1400987f4
140098bd3:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
140098bd7:	75 13                	jne    0x140098bec
140098bd9:	48 85 f6             	test   %rsi,%rsi
140098bdc:	74 02                	je     0x140098be0
140098bde:	88 1e                	mov    %bl,(%rsi)
140098be0:	38 5f 30             	cmp    %bl,0x30(%rdi)
140098be3:	74 03                	je     0x140098be8
140098be5:	8b 5f 2c             	mov    0x2c(%rdi),%ebx
140098be8:	8b c3                	mov    %ebx,%eax
140098bea:	eb 42                	jmp    0x140098c2e
140098bec:	48 ff c0             	inc    %rax
140098bef:	48 85 f6             	test   %rsi,%rsi
140098bf2:	74 2f                	je     0x140098c23
140098bf4:	48 3b c5             	cmp    %rbp,%rax
140098bf7:	76 26                	jbe    0x140098c1f
140098bf9:	48 83 7c 24 70 ff    	cmpq   $0xffffffffffffffff,0x70(%rsp)
140098bff:	74 15                	je     0x140098c16
140098c01:	88 1e                	mov    %bl,(%rsi)
140098c03:	be 22 00 00 00       	mov    $0x22,%esi
140098c08:	89 77 2c             	mov    %esi,0x2c(%rdi)
140098c0b:	c6 47 30 01          	movb   $0x1,0x30(%rdi)
140098c0f:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
140098c14:	eb 97                	jmp    0x140098bad
140098c16:	48 8b c5             	mov    %rbp,%rax
140098c19:	41 bc 50 00 00 00    	mov    $0x50,%r12d
140098c1f:	88 5c 30 ff          	mov    %bl,-0x1(%rax,%rsi,1)
140098c23:	4d 85 f6             	test   %r14,%r14
140098c26:	74 03                	je     0x140098c2b
140098c28:	49 89 06             	mov    %rax,(%r14)
140098c2b:	41 8b c4             	mov    %r12d,%eax
140098c2e:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140098c33:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140098c38:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140098c3d:	48 83 c4 30          	add    $0x30,%rsp
140098c41:	41 5e                	pop    %r14
140098c43:	41 5c                	pop    %r12
140098c45:	5f                   	pop    %rdi
140098c46:	c3                   	ret
140098c47:	cc                   	int3
140098c48:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140098c4d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140098c52:	57                   	push   %rdi
140098c53:	48 83 ec 20          	sub    $0x20,%rsp
140098c57:	45 33 d2             	xor    %r10d,%r10d
140098c5a:	49 8b d8             	mov    %r8,%rbx
140098c5d:	4c 8b da             	mov    %rdx,%r11
140098c60:	4d 85 c9             	test   %r9,%r9
140098c63:	75 31                	jne    0x140098c96
140098c65:	48 85 c9             	test   %rcx,%rcx
140098c68:	75 31                	jne    0x140098c9b
140098c6a:	48 85 d2             	test   %rdx,%rdx
140098c6d:	74 14                	je     0x140098c83
140098c6f:	e8 50 55 fe ff       	call   0x14007e1c4
140098c74:	bb 16 00 00 00       	mov    $0x16,%ebx
140098c79:	89 18                	mov    %ebx,(%rax)
140098c7b:	e8 64 5b ff ff       	call   0x14008e7e4
140098c80:	44 8b d3             	mov    %ebx,%r10d
140098c83:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140098c88:	41 8b c2             	mov    %r10d,%eax
140098c8b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140098c90:	48 83 c4 20          	add    $0x20,%rsp
140098c94:	5f                   	pop    %rdi
140098c95:	c3                   	ret
140098c96:	48 85 c9             	test   %rcx,%rcx
140098c99:	74 d4                	je     0x140098c6f
140098c9b:	4d 85 db             	test   %r11,%r11
140098c9e:	74 cf                	je     0x140098c6f
140098ca0:	4d 85 c9             	test   %r9,%r9
140098ca3:	75 05                	jne    0x140098caa
140098ca5:	44 88 11             	mov    %r10b,(%rcx)
140098ca8:	eb d9                	jmp    0x140098c83
140098caa:	48 85 db             	test   %rbx,%rbx
140098cad:	75 05                	jne    0x140098cb4
140098caf:	44 88 11             	mov    %r10b,(%rcx)
140098cb2:	eb bb                	jmp    0x140098c6f
140098cb4:	48 2b d9             	sub    %rcx,%rbx
140098cb7:	48 8b d1             	mov    %rcx,%rdx
140098cba:	4d 8b c3             	mov    %r11,%r8
140098cbd:	49 8b f9             	mov    %r9,%rdi
140098cc0:	49 83 f9 ff          	cmp    $0xffffffffffffffff,%r9
140098cc4:	75 14                	jne    0x140098cda
140098cc6:	8a 04 13             	mov    (%rbx,%rdx,1),%al
140098cc9:	88 02                	mov    %al,(%rdx)
140098ccb:	48 ff c2             	inc    %rdx
140098cce:	84 c0                	test   %al,%al
140098cd0:	74 b1                	je     0x140098c83
140098cd2:	49 83 e8 01          	sub    $0x1,%r8
140098cd6:	75 ee                	jne    0x140098cc6
140098cd8:	eb 2e                	jmp    0x140098d08
140098cda:	8a 04 13             	mov    (%rbx,%rdx,1),%al
140098cdd:	48 8b f7             	mov    %rdi,%rsi
140098ce0:	88 02                	mov    %al,(%rdx)
140098ce2:	48 ff c2             	inc    %rdx
140098ce5:	84 c0                	test   %al,%al
140098ce7:	74 9a                	je     0x140098c83
140098ce9:	49 83 e8 01          	sub    $0x1,%r8
140098ced:	74 06                	je     0x140098cf5
140098cef:	48 83 ef 01          	sub    $0x1,%rdi
140098cf3:	75 e5                	jne    0x140098cda
140098cf5:	4d 85 c0             	test   %r8,%r8
140098cf8:	48 8d 46 ff          	lea    -0x1(%rsi),%rax
140098cfc:	48 0f 44 c6          	cmove  %rsi,%rax
140098d00:	48 85 c0             	test   %rax,%rax
140098d03:	75 03                	jne    0x140098d08
140098d05:	44 88 12             	mov    %r10b,(%rdx)
140098d08:	4d 85 c0             	test   %r8,%r8
140098d0b:	0f 85 72 ff ff ff    	jne    0x140098c83
140098d11:	49 83 f9 ff          	cmp    $0xffffffffffffffff,%r9
140098d15:	75 0e                	jne    0x140098d25
140098d17:	46 88 54 19 ff       	mov    %r10b,-0x1(%rcx,%r11,1)
140098d1c:	45 8d 50 50          	lea    0x50(%r8),%r10d
140098d20:	e9 5e ff ff ff       	jmp    0x140098c83
140098d25:	44 88 11             	mov    %r10b,(%rcx)
140098d28:	e8 97 54 fe ff       	call   0x14007e1c4
140098d2d:	bb 22 00 00 00       	mov    $0x22,%ebx
140098d32:	e9 42 ff ff ff       	jmp    0x140098c79
140098d37:	cc                   	int3
140098d38:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140098d3d:	57                   	push   %rdi
140098d3e:	48 83 ec 20          	sub    $0x20,%rsp
140098d42:	48 8b d9             	mov    %rcx,%rbx
140098d45:	ba 01 00 00 00       	mov    $0x1,%edx
140098d4a:	01 15 10 70 07 00    	add    %edx,0x77010(%rip)        # 0x14010fd60
140098d50:	bf 00 10 00 00       	mov    $0x1000,%edi
140098d55:	8b cf                	mov    %edi,%ecx
140098d57:	e8 74 a1 f9 ff       	call   0x140032ed0
140098d5c:	33 c9                	xor    %ecx,%ecx
140098d5e:	48 89 43 08          	mov    %rax,0x8(%rbx)
140098d62:	e8 09 a0 f9 ff       	call   0x140032d70
140098d67:	48 83 7b 08 00       	cmpq   $0x0,0x8(%rbx)
140098d6c:	74 07                	je     0x140098d75
140098d6e:	f0 83 4b 14 40       	lock orl $0x40,0x14(%rbx)
140098d73:	eb 15                	jmp    0x140098d8a
140098d75:	f0 81 4b 14 00 04 00 	lock orl $0x400,0x14(%rbx)
140098d7c:	00
140098d7d:	48 8d 43 1c          	lea    0x1c(%rbx),%rax
140098d81:	bf 02 00 00 00       	mov    $0x2,%edi
140098d86:	48 89 43 08          	mov    %rax,0x8(%rbx)
140098d8a:	89 7b 20             	mov    %edi,0x20(%rbx)
140098d8d:	48 8b 43 08          	mov    0x8(%rbx),%rax
140098d91:	83 63 10 00          	andl   $0x0,0x10(%rbx)
140098d95:	48 89 03             	mov    %rax,(%rbx)
140098d98:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140098d9d:	48 83 c4 20          	add    $0x20,%rsp
140098da1:	5f                   	pop    %rdi
140098da2:	c3                   	ret
140098da3:	cc                   	int3
140098da4:	40 53                	rex push %rbx
140098da6:	48 83 ec 20          	sub    $0x20,%rsp
140098daa:	4d 85 c0             	test   %r8,%r8
140098dad:	48 8d 1d 44 7d 07 00 	lea    0x77d44(%rip),%rbx        # 0x140110af8
140098db4:	b8 00 24 00 00       	mov    $0x2400,%eax
140098db9:	4c 8b d1             	mov    %rcx,%r10
140098dbc:	49 0f 45 d8          	cmovne %r8,%rbx
140098dc0:	b9 ff 03 00 00       	mov    $0x3ff,%ecx
140098dc5:	03 c2                	add    %edx,%eax
140098dc7:	83 3b 00             	cmpl   $0x0,(%rbx)
140098dca:	75 47                	jne    0x140098e13
140098dcc:	66 3b c1             	cmp    %cx,%ax
140098dcf:	77 0d                	ja     0x140098dde
140098dd1:	49 8b d1             	mov    %r9,%rdx
140098dd4:	48 8b cb             	mov    %rbx,%rcx
140098dd7:	e8 10 2f 00 00       	call   0x14009bcec
140098ddc:	eb 63                	jmp    0x140098e41
140098dde:	b8 00 28 00 00       	mov    $0x2800,%eax
140098de3:	03 c2                	add    %edx,%eax
140098de5:	66 3b c1             	cmp    %cx,%ax
140098de8:	77 16                	ja     0x140098e00
140098dea:	0f b7 c2             	movzwl %dx,%eax
140098ded:	c1 e0 0a             	shl    $0xa,%eax
140098df0:	25 00 fc 9f fc       	and    $0xfc9ffc00,%eax
140098df5:	05 00 00 01 00       	add    $0x10000,%eax
140098dfa:	89 03                	mov    %eax,(%rbx)
140098dfc:	33 c0                	xor    %eax,%eax
140098dfe:	eb 41                	jmp    0x140098e41
140098e00:	0f b7 d2             	movzwl %dx,%edx
140098e03:	4c 8b c3             	mov    %rbx,%r8
140098e06:	49 8b ca             	mov    %r10,%rcx
140098e09:	48 83 c4 20          	add    $0x20,%rsp
140098e0d:	5b                   	pop    %rbx
140098e0e:	e9 35 00 00 00       	jmp    0x140098e48
140098e13:	66 3b c1             	cmp    %cx,%ax
140098e16:	77 b9                	ja     0x140098dd1
140098e18:	48 83 64 24 40 00    	andq   $0x0,0x40(%rsp)
140098e1e:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
140098e23:	0f b7 d2             	movzwl %dx,%edx
140098e26:	49 8b ca             	mov    %r10,%rcx
140098e29:	81 e2 ff 23 ff ff    	and    $0xffff23ff,%edx
140098e2f:	03 13                	add    (%rbx),%edx
140098e31:	e8 12 00 00 00       	call   0x140098e48
140098e36:	48 8b d3             	mov    %rbx,%rdx
140098e39:	48 8b c8             	mov    %rax,%rcx
140098e3c:	e8 bf 2e 00 00       	call   0x14009bd00
140098e41:	48 83 c4 20          	add    $0x20,%rsp
140098e45:	5b                   	pop    %rbx
140098e46:	c3                   	ret
140098e47:	cc                   	int3
140098e48:	33 c0                	xor    %eax,%eax
140098e4a:	4c 8b d1             	mov    %rcx,%r10
140098e4d:	48 85 c9             	test   %rcx,%rcx
140098e50:	75 09                	jne    0x140098e5b
140098e52:	49 89 00             	mov    %rax,(%r8)
140098e55:	b8 01 00 00 00       	mov    $0x1,%eax
140098e5a:	c3                   	ret
140098e5b:	85 d2                	test   %edx,%edx
140098e5d:	75 04                	jne    0x140098e63
140098e5f:	88 01                	mov    %al,(%rcx)
140098e61:	eb ef                	jmp    0x140098e52
140098e63:	f7 c2 80 ff ff ff    	test   $0xffffff80,%edx
140098e69:	75 04                	jne    0x140098e6f
140098e6b:	88 11                	mov    %dl,(%rcx)
140098e6d:	eb e6                	jmp    0x140098e55
140098e6f:	f7 c2 00 f8 ff ff    	test   $0xfffff800,%edx
140098e75:	75 0a                	jne    0x140098e81
140098e77:	b9 01 00 00 00       	mov    $0x1,%ecx
140098e7c:	41 b1 c0             	mov    $0xc0,%r9b
140098e7f:	eb 37                	jmp    0x140098eb8
140098e81:	f7 c2 00 00 ff ff    	test   $0xffff0000,%edx
140098e87:	75 17                	jne    0x140098ea0
140098e89:	8d 82 00 28 ff ff    	lea    -0xd800(%rdx),%eax
140098e8f:	3d ff 07 00 00       	cmp    $0x7ff,%eax
140098e94:	76 49                	jbe    0x140098edf
140098e96:	b9 02 00 00 00       	mov    $0x2,%ecx
140098e9b:	41 b1 e0             	mov    $0xe0,%r9b
140098e9e:	eb 18                	jmp    0x140098eb8
140098ea0:	f7 c2 00 00 e0 ff    	test   $0xffe00000,%edx
140098ea6:	75 37                	jne    0x140098edf
140098ea8:	81 fa ff ff 10 00    	cmp    $0x10ffff,%edx
140098eae:	77 2f                	ja     0x140098edf
140098eb0:	b9 03 00 00 00       	mov    $0x3,%ecx
140098eb5:	41 b1 f0             	mov    $0xf0,%r9b
140098eb8:	4c 8b d9             	mov    %rcx,%r11
140098ebb:	8a c2                	mov    %dl,%al
140098ebd:	c1 ea 06             	shr    $0x6,%edx
140098ec0:	24 3f                	and    $0x3f,%al
140098ec2:	0c 80                	or     $0x80,%al
140098ec4:	43 88 04 13          	mov    %al,(%r11,%r10,1)
140098ec8:	49 83 eb 01          	sub    $0x1,%r11
140098ecc:	75 ed                	jne    0x140098ebb
140098ece:	41 0a d1             	or     %r9b,%dl
140098ed1:	41 88 12             	mov    %dl,(%r10)
140098ed4:	48 ff c1             	inc    %rcx
140098ed7:	49 8b d0             	mov    %r8,%rdx
140098eda:	e9 21 2e 00 00       	jmp    0x14009bd00
140098edf:	49 8b d1             	mov    %r9,%rdx
140098ee2:	49 8b c8             	mov    %r8,%rcx
140098ee5:	e9 02 2e 00 00       	jmp    0x14009bcec
140098eea:	cc                   	int3
140098eeb:	cc                   	int3
140098eec:	40 53                	rex push %rbx
140098eee:	48 83 ec 20          	sub    $0x20,%rsp
140098ef2:	48 8b d9             	mov    %rcx,%rbx
140098ef5:	4c 8d 0d fc 2b 04 00 	lea    0x42bfc(%rip),%r9        # 0x1400dbaf8
140098efc:	33 c9                	xor    %ecx,%ecx