140e61b88:	c1 ea 02             	shr    $0x2,%edx
140e61b8b:	41 8b c1             	mov    %r9d,%eax
140e61b8e:	41 23 c3             	and    %r11d,%eax
140e61b91:	41 81 e1 80 01 00 00 	and    $0x180,%r9d
140e61b98:	0b d0                	or     %eax,%edx
140e61b9a:	c1 ea 03             	shr    $0x3,%edx
140e61b9d:	41 0b d1             	or     %r9d,%edx
140e61ba0:	c1 ea 03             	shr    $0x3,%edx
140e61ba3:	41 0b d0             	or     %r8d,%edx
140e61ba6:	0b d1                	or     %ecx,%edx
140e61ba8:	8b c2                	mov    %edx,%eax
140e61baa:	25 00 ff ff ff       	and    $0xffffff00,%eax
140e61baf:	8d 0c 95 00 00 00 00 	lea    0x0(,%rdx,4),%ecx
140e61bb6:	0b c1                	or     %ecx,%eax
140e61bb8:	c1 e0 16             	shl    $0x16,%eax
140e61bbb:	0b c2                	or     %edx,%eax
140e61bbd:	c3                   	ret
140e61bbe:	cc                   	int3
140e61bbf:	cc                   	int3
140e61bc0:	8b c1                	mov    %ecx,%eax
140e61bc2:	83 e0 3f             	and    $0x3f,%eax
140e61bc5:	c1 e0 18             	shl    $0x18,%eax
140e61bc8:	0b c1                	or     %ecx,%eax
140e61bca:	c3                   	ret
140e61bcb:	cc                   	int3
140e61bcc:	0f ae 5c 24 08       	stmxcsr 0x8(%rsp)
140e61bd1:	8b 54 24 08          	mov    0x8(%rsp),%edx
140e61bd5:	83 e2 3f             	and    $0x3f,%edx
140e61bd8:	44 8b c2             	mov    %edx,%r8d
140e61bdb:	8b c2                	mov    %edx,%eax
140e61bdd:	83 e0 10             	and    $0x10,%eax
140e61be0:	41 c1 e8 02          	shr    $0x2,%r8d
140e61be4:	41 83 e0 08          	and    $0x8,%r8d
140e61be8:	8b ca                	mov    %edx,%ecx
140e61bea:	44 0b c0             	or     %eax,%r8d
140e61bed:	83 e1 02             	and    $0x2,%ecx
140e61bf0:	41 c1 e8 02          	shr    $0x2,%r8d
140e61bf4:	8b c2                	mov    %edx,%eax
140e61bf6:	83 e0 08             	and    $0x8,%eax
140e61bf9:	c1 e1 03             	shl    $0x3,%ecx
140e61bfc:	44 0b c0             	or     %eax,%r8d
140e61bff:	8b c2                	mov    %edx,%eax
140e61c01:	83 e0 04             	and    $0x4,%eax
140e61c04:	41 d1 e8             	shr    $1,%r8d
140e61c07:	0b c8                	or     %eax,%ecx
140e61c09:	83 e2 01             	and    $0x1,%edx
140e61c0c:	03 c9                	add    %ecx,%ecx
140e61c0e:	c1 e2 04             	shl    $0x4,%edx
140e61c11:	44 0b c1             	or     %ecx,%r8d
140e61c14:	44 0b c2             	or     %edx,%r8d
140e61c17:	41 8b c0             	mov    %r8d,%eax
140e61c1a:	c1 e0 18             	shl    $0x18,%eax
140e61c1d:	41 0b c0             	or     %r8d,%eax
140e61c20:	c3                   	ret
140e61c21:	cc                   	int3
140e61c22:	cc                   	int3
140e61c23:	cc                   	int3
140e61c24:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140e61c29:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140e61c2e:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140e61c33:	8b c1                	mov    %ecx,%eax
140e61c35:	8b d1                	mov    %ecx,%edx
140e61c37:	c1 e8 16             	shr    $0x16,%eax
140e61c3a:	41 b8 00 03 00 00    	mov    $0x300,%r8d
140e61c40:	c1 ea 18             	shr    $0x18,%edx
140e61c43:	41 23 c0             	and    %r8d,%eax
140e61c46:	83 e2 3f             	and    $0x3f,%edx
140e61c49:	33 f6                	xor    %esi,%esi
140e61c4b:	0b d0                	or     %eax,%edx
140e61c4d:	bf 00 04 00 00       	mov    $0x400,%edi
140e61c52:	b8 00 0c 00 00       	mov    $0xc00,%eax
140e61c57:	41 bb 00 08 00 00    	mov    $0x800,%r11d
140e61c5d:	23 c8                	and    %eax,%ecx
140e61c5f:	3b cf                	cmp    %edi,%ecx
140e61c61:	74 1f                	je     0x140e61c82
140e61c63:	41 3b cb             	cmp    %r11d,%ecx
140e61c66:	74 12                	je     0x140e61c7a
140e61c68:	3b c8                	cmp    %eax,%ecx
140e61c6a:	74 06                	je     0x140e61c72
140e61c6c:	44 0f b7 ce          	movzwl %si,%r9d
140e61c70:	eb 16                	jmp    0x140e61c88
140e61c72:	41 b9 00 80 00 00    	mov    $0x8000,%r9d
140e61c78:	eb 0e                	jmp    0x140e61c88
140e61c7a:	41 b9 40 00 00 00    	mov    $0x40,%r9d
140e61c80:	eb 06                	jmp    0x140e61c88
140e61c82:	41 b9 40 80 00 00    	mov    $0x8040,%r9d
140e61c88:	8b c2                	mov    %edx,%eax
140e61c8a:	bb 00 01 00 00       	mov    $0x100,%ebx
140e61c8f:	41 ba 00 02 00 00    	mov    $0x200,%r10d
140e61c95:	41 23 c0             	and    %r8d,%eax
140e61c98:	74 26                	je     0x140e61cc0
140e61c9a:	3b c3                	cmp    %ebx,%eax
140e61c9c:	74 1a                	je     0x140e61cb8
140e61c9e:	41 3b c2             	cmp    %r10d,%eax
140e61ca1:	74 0d                	je     0x140e61cb0
140e61ca3:	41 3b c0             	cmp    %r8d,%eax
140e61ca6:	75 18                	jne    0x140e61cc0
140e61ca8:	41 b8 00 60 00 00    	mov    $0x6000,%r8d
140e61cae:	eb 14                	jmp    0x140e61cc4
140e61cb0:	41 b8 00 40 00 00    	mov    $0x4000,%r8d
140e61cb6:	eb 0c                	jmp    0x140e61cc4
140e61cb8:	41 b8 00 20 00 00    	mov    $0x2000,%r8d
140e61cbe:	eb 04                	jmp    0x140e61cc4
140e61cc0:	44 0f b7 c6          	movzwl %si,%r8d
140e61cc4:	0f ba e2 00          	bt     $0x0,%edx
140e61cc8:	73 07                	jae    0x140e61cd1
140e61cca:	b9 00 10 00 00       	mov    $0x1000,%ecx
140e61ccf:	eb 03                	jmp    0x140e61cd4
140e61cd1:	0f b7 ce             	movzwl %si,%ecx
140e61cd4:	0f ba e2 01          	bt     $0x1,%edx
140e61cd8:	72 04                	jb     0x140e61cde
140e61cda:	44 0f b7 de          	movzwl %si,%r11d
140e61cde:	66 41 0b cb          	or     %r11w,%cx
140e61ce2:	0f ba e2 02          	bt     $0x2,%edx
140e61ce6:	72 03                	jb     0x140e61ceb
140e61ce8:	0f b7 fe             	movzwl %si,%edi
140e61ceb:	66 0b cf             	or     %di,%cx
140e61cee:	0f ba e2 03          	bt     $0x3,%edx
140e61cf2:	72 04                	jb     0x140e61cf8
140e61cf4:	44 0f b7 d6          	movzwl %si,%r10d
140e61cf8:	66 41 0b ca          	or     %r10w,%cx
140e61cfc:	0f ba e2 04          	bt     $0x4,%edx
140e61d00:	73 07                	jae    0x140e61d09
140e61d02:	b8 80 00 00 00       	mov    $0x80,%eax
140e61d07:	eb 03                	jmp    0x140e61d0c
140e61d09:	0f b7 c6             	movzwl %si,%eax
140e61d0c:	66 0b c8             	or     %ax,%cx
140e61d0f:	0f ba e2 05          	bt     $0x5,%edx
140e61d13:	72 03                	jb     0x140e61d18
140e61d15:	0f b7 de             	movzwl %si,%ebx
140e61d18:	48 8b 74 24 18       	mov    0x18(%rsp),%rsi
140e61d1d:	66 0b cb             	or     %bx,%cx
140e61d20:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
140e61d25:	66 44 0b c1          	or     %cx,%r8w
140e61d29:	48 8b 7c 24 20       	mov    0x20(%rsp),%rdi
140e61d2e:	b8 c0 ff 00 00       	mov    $0xffc0,%eax
140e61d33:	0f ae 5c 24 08       	stmxcsr 0x8(%rsp)
140e61d38:	66 45 0b c1          	or     %r9w,%r8w
140e61d3c:	66 44 23 c0          	and    %ax,%r8w
140e61d40:	8b 44 24 08          	mov    0x8(%rsp),%eax
140e61d44:	25 3f 00 ff ff       	and    $0xffff003f,%eax
140e61d49:	41 0f b7 c8          	movzwl %r8w,%ecx
140e61d4d:	0b c1                	or     %ecx,%eax
140e61d4f:	89 44 24 08          	mov    %eax,0x8(%rsp)
140e61d53:	0f ae 54 24 08       	ldmxcsr 0x8(%rsp)
140e61d58:	c3                   	ret
140e61d59:	cc                   	int3
140e61d5a:	cc                   	int3
140e61d5b:	cc                   	int3
140e61d5c:	8b d1                	mov    %ecx,%edx
140e61d5e:	c1 ea 18             	shr    $0x18,%edx
140e61d61:	83 e2 3f             	and    $0x3f,%edx
140e61d64:	8b c2                	mov    %edx,%eax
140e61d66:	83 e0 01             	and    $0x1,%eax
140e61d69:	f7 d8                	neg    %eax
140e61d6b:	8b c2                	mov    %edx,%eax
140e61d6d:	1b c9                	sbb    %ecx,%ecx
140e61d6f:	83 e0 02             	and    $0x2,%eax
140e61d72:	83 e1 20             	and    $0x20,%ecx
140e61d75:	f7 d8                	neg    %eax
140e61d77:	0f ae 5c 24 08       	stmxcsr 0x8(%rsp)
140e61d7c:	1b c0                	sbb    %eax,%eax
140e61d7e:	83 e0 10             	and    $0x10,%eax
140e61d81:	0b c8                	or     %eax,%ecx
140e61d83:	8b c2                	mov    %edx,%eax
140e61d85:	83 e0 04             	and    $0x4,%eax
140e61d88:	f7 d8                	neg    %eax
140e61d8a:	1b c0                	sbb    %eax,%eax
140e61d8c:	83 e0 08             	and    $0x8,%eax
140e61d8f:	0b c8                	or     %eax,%ecx
140e61d91:	8b c2                	mov    %edx,%eax
140e61d93:	83 e0 08             	and    $0x8,%eax
140e61d96:	f7 d8                	neg    %eax
140e61d98:	1b c0                	sbb    %eax,%eax
140e61d9a:	83 e0 04             	and    $0x4,%eax
140e61d9d:	0b c8                	or     %eax,%ecx
140e61d9f:	b8 00 00 00 00       	mov    $0x0,%eax
140e61da4:	0f ba e2 04          	bt     $0x4,%edx
140e61da8:	0f 92 c0             	setb   %al
140e61dab:	83 e2 20             	and    $0x20,%edx
140e61dae:	0b c8                	or     %eax,%ecx
140e61db0:	f7 da                	neg    %edx
140e61db2:	1b c0                	sbb    %eax,%eax
140e61db4:	83 e0 02             	and    $0x2,%eax
140e61db7:	0b c8                	or     %eax,%ecx
140e61db9:	8b 44 24 08          	mov    0x8(%rsp),%eax
140e61dbd:	83 e0 c0             	and    $0xffffffc0,%eax
140e61dc0:	83 e1 3f             	and    $0x3f,%ecx
140e61dc3:	0b c1                	or     %ecx,%eax
140e61dc5:	89 44 24 08          	mov    %eax,0x8(%rsp)
140e61dc9:	0f ae 54 24 08       	ldmxcsr 0x8(%rsp)
140e61dce:	c3                   	ret
140e61dcf:	cc                   	int3
140e61dd0:	66 89 4c 24 08       	mov    %cx,0x8(%rsp)
140e61dd5:	48 83 ec 58          	sub    $0x58,%rsp
140e61dd9:	b8 ff ff 00 00       	mov    $0xffff,%eax
140e61dde:	66 3b c8             	cmp    %ax,%cx
140e61de1:	0f 84 d5 00 00 00    	je     0x140e61ebc
140e61de7:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140e61dec:	e8 73 03 fd ff       	call   0x140e32164
140e61df1:	4c 8b 54 24 38       	mov    0x38(%rsp),%r10
140e61df6:	41 bb 00 01 00 00    	mov    $0x100,%r11d
140e61dfc:	41 81 7a 0c e9 fd 00 	cmpl   $0xfde9,0xc(%r10)
140e61e03:	00
140e61e04:	75 2a                	jne    0x140e61e30
140e61e06:	0f b7 4c 24 60       	movzwl 0x60(%rsp),%ecx
140e61e0b:	41 8d 43 80          	lea    -0x80(%r11),%eax
140e61e0f:	66 3b c8             	cmp    %ax,%cx
140e61e12:	73 58                	jae    0x140e61e6c
140e61e14:	0f b6 c1             	movzbl %cl,%eax
140e61e17:	4c 8d 05 d2 3c 38 00 	lea    0x383cd2(%rip),%r8        # 0x1411e5af0
140e61e1e:	41 f6 44 40 02 01    	testb  $0x1,0x2(%r8,%rax,2)
140e61e24:	74 05                	je     0x140e61e2b
140e61e26:	0f b6 c9             	movzbl %cl,%ecx
140e61e29:	eb 25                	jmp    0x140e61e50
140e61e2b:	0f b6 d1             	movzbl %cl,%edx
140e61e2e:	eb 76                	jmp    0x140e61ea6
140e61e30:	0f b7 54 24 60       	movzwl 0x60(%rsp),%edx
140e61e35:	66 41 3b d3          	cmp    %r11w,%dx
140e61e39:	73 27                	jae    0x140e61e62
140e61e3b:	0f b6 c2             	movzbl %dl,%eax
140e61e3e:	4c 8d 05 ab 3c 38 00 	lea    0x383cab(%rip),%r8        # 0x1411e5af0
140e61e45:	41 f6 44 40 02 01    	testb  $0x1,0x2(%r8,%rax,2)
140e61e4b:	74 10                	je     0x140e61e5d
140e61e4d:	0f b6 ca             	movzbl %dl,%ecx
140e61e50:	49 8b 82 10 01 00 00 	mov    0x110(%r10),%rax
140e61e57:	0f b6 14 08          	movzbl (%rax,%rcx,1),%edx
140e61e5b:	eb 49                	jmp    0x140e61ea6
140e61e5d:	0f b6 d2             	movzbl %dl,%edx
140e61e60:	eb 44                	jmp    0x140e61ea6
140e61e62:	49 83 ba 38 01 00 00 	cmpq   $0x0,0x138(%r10)
140e61e69:	00
140e61e6a:	74 3a                	je     0x140e61ea6
140e61e6c:	49 8b 8a 38 01 00 00 	mov    0x138(%r10),%rcx
140e61e73:	48 8d 44 24 70       	lea    0x70(%rsp),%rax
140e61e78:	c7 44 24 28 01 00 00 	movl   $0x1,0x28(%rsp)
140e61e7f:	00
140e61e80:	4c 8d 44 24 60       	lea    0x60(%rsp),%r8
140e61e85:	41 b9 01 00 00 00    	mov    $0x1,%r9d
140e61e8b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140e61e90:	41 8b d3             	mov    %r11d,%edx
140e61e93:	e8 f0 0f 00 00       	call   0x140e62e88
140e61e98:	0f b7 54 24 60       	movzwl 0x60(%rsp),%edx
140e61e9d:	85 c0                	test   %eax,%eax
140e61e9f:	74 05                	je     0x140e61ea6
140e61ea1:	0f b7 54 24 70       	movzwl 0x70(%rsp),%edx
140e61ea6:	80 7c 24 48 00       	cmpb   $0x0,0x48(%rsp)
140e61eab:	74 0c                	je     0x140e61eb9
140e61ead:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
140e61eb2:	83 a1 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rcx)
140e61eb9:	0f b7 c2             	movzwl %dx,%eax
140e61ebc:	48 83 c4 58          	add    $0x58,%rsp
140e61ec0:	c3                   	ret
140e61ec1:	cc                   	int3
140e61ec2:	cc                   	int3
140e61ec3:	cc                   	int3
140e61ec4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e61ec9:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140e61ece:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140e61ed3:	57                   	push   %rdi
140e61ed4:	48 83 ec 30          	sub    $0x30,%rsp
140e61ed8:	49 63 f8             	movslq %r8d,%rdi
140e61edb:	44 8b c1             	mov    %ecx,%r8d
140e61ede:	48 8b f2             	mov    %rdx,%rsi
140e61ee1:	f7 c1 ff f3 ff ff    	test   $0xfffff3ff,%ecx
140e61ee7:	75 08                	jne    0x140e61ef1
140e61ee9:	81 f9 00 0c 00 00    	cmp    $0xc00,%ecx
140e61eef:	75 4e                	jne    0x140e61f3f
140e61ef1:	48 85 f6             	test   %rsi,%rsi
140e61ef4:	75 04                	jne    0x140e61efa
140e61ef6:	85 ff                	test   %edi,%edi
140e61ef8:	7f 45                	jg     0x140e61f3f
140e61efa:	85 ff                	test   %edi,%edi
140e61efc:	78 41                	js     0x140e61f3f
140e61efe:	45 33 c9             	xor    %r9d,%r9d
140e61f01:	48 8d 2d 28 9d 38 00 	lea    0x389d28(%rip),%rbp        # 0x1411ebc30
140e61f08:	41 ba e3 00 00 00    	mov    $0xe3,%r10d
140e61f0e:	43 8d 04 0a          	lea    (%r10,%r9,1),%eax
140e61f12:	99                   	cltd
140e61f13:	2b c2                	sub    %edx,%eax
140e61f15:	41 8b d0             	mov    %r8d,%edx
140e61f18:	d1 f8                	sar    $1,%eax
140e61f1a:	48 63 c8             	movslq %eax,%rcx
140e61f1d:	48 c1 e1 04          	shl    $0x4,%rcx
140e61f21:	2b 14 29             	sub    (%rcx,%rbp,1),%edx
140e61f24:	74 30                	je     0x140e61f56
140e61f26:	85 d2                	test   %edx,%edx
140e61f28:	8d 48 ff             	lea    -0x1(%rax),%ecx
140e61f2b:	41 0f 49 ca          	cmovns %r10d,%ecx
140e61f2f:	ff c0                	inc    %eax
140e61f31:	85 d2                	test   %edx,%edx
140e61f33:	44 8b d1             	mov    %ecx,%r10d
140e61f36:	44 0f 49 c8          	cmovns %eax,%r9d
140e61f3a:	44 3b c9             	cmp    %ecx,%r9d
140e61f3d:	7e cf                	jle    0x140e61f0e
140e61f3f:	33 c0                	xor    %eax,%eax
140e61f41:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140e61f46:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140e61f4b:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140e61f50:	48 83 c4 30          	add    $0x30,%rsp
140e61f54:	5f                   	pop    %rdi
140e61f55:	c3                   	ret
140e61f56:	85 c0                	test   %eax,%eax
140e61f58:	78 e5                	js     0x140e61f3f
140e61f5a:	48 98                	cltq
140e61f5c:	ba 55 00 00 00       	mov    $0x55,%edx
140e61f61:	48 03 c0             	add    %rax,%rax
140e61f64:	48 8b 6c c5 08       	mov    0x8(%rbp,%rax,8),%rbp
140e61f69:	48 8b cd             	mov    %rbp,%rcx
140e61f6c:	e8 c7 45 fe ff       	call   0x140e46538
140e61f71:	48 8b d8             	mov    %rax,%rbx
140e61f74:	85 ff                	test   %edi,%edi
140e61f76:	7e 16                	jle    0x140e61f8e
140e61f78:	3b df                	cmp    %edi,%ebx
140e61f7a:	7d c3                	jge    0x140e61f3f
140e61f7c:	48 8b d7             	mov    %rdi,%rdx
140e61f7f:	4c 8b c5             	mov    %rbp,%r8
140e61f82:	48 8b ce             	mov    %rsi,%rcx
140e61f85:	e8 92 63 ff ff       	call   0x140e5831c
140e61f8a:	85 c0                	test   %eax,%eax
140e61f8c:	75 05                	jne    0x140e61f93
140e61f8e:	8d 43 01             	lea    0x1(%rbx),%eax
140e61f91:	eb ae                	jmp    0x140e61f41
140e61f93:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
140e61f99:	45 33 c9             	xor    %r9d,%r9d
140e61f9c:	45 33 c0             	xor    %r8d,%r8d
140e61f9f:	33 d2                	xor    %edx,%edx
140e61fa1:	33 c9                	xor    %ecx,%ecx
140e61fa3:	e8 2c 82 fc ff       	call   0x140e2a1d4
140e61fa8:	cc                   	int3
140e61fa9:	cc                   	int3
140e61faa:	cc                   	int3
140e61fab:	cc                   	int3
140e61fac:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e61fb1:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140e61fb6:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140e61fbb:	57                   	push   %rdi
140e61fbc:	41 56                	push   %r14
140e61fbe:	41 57                	push   %r15
140e61fc0:	48 83 ec 20          	sub    $0x20,%rsp
140e61fc4:	48 8b e9             	mov    %rcx,%rbp
140e61fc7:	48 85 c9             	test   %rcx,%rcx
140e61fca:	74 47                	je     0x140e62013
140e61fcc:	33 db                	xor    %ebx,%ebx
140e61fce:	4c 8d 3d 2b e0 19 ff 	lea    -0xe61fd5(%rip),%r15        # 0x140000000
140e61fd5:	bf e3 00 00 00       	mov    $0xe3,%edi
140e61fda:	8d 04 1f             	lea    (%rdi,%rbx,1),%eax
140e61fdd:	41 b8 55 00 00 00    	mov    $0x55,%r8d
140e61fe3:	99                   	cltd
140e61fe4:	48 8b cd             	mov    %rbp,%rcx