140822b09:	48 83 eb 01          	sub    $0x1,%rbx
140822b0d:	75 f1                	jne    0x140822b00
140822b0f:	44 89 64 24 70       	mov    %r12d,0x70(%rsp)
140822b14:	66 41 ff c6          	inc    %r14w
140822b18:	44 89 b5 d8 00 00 00 	mov    %r14d,0xd8(%rbp)
140822b1f:	66 44 89 74 24 60    	mov    %r14w,0x60(%rsp)
140822b25:	45 33 d2             	xor    %r10d,%r10d
140822b28:	4c 89 55 90          	mov    %r10,-0x70(%rbp)
140822b2c:	44 89 55 88          	mov    %r10d,-0x78(%rbp)
140822b30:	44 8b 85 d0 00 00 00 	mov    0xd0(%rbp),%r8d
140822b37:	45 85 e4             	test   %r12d,%r12d
140822b3a:	0f 88 3a fc ff ff    	js     0x14082277a
140822b40:	41 bf 10 00 00 00    	mov    $0x10,%r15d
140822b46:	49 bb 15 7c 4a 7f b9 	movabs $0x9e3779b97f4a7c15,%r11
140822b4d:	79 37 9e
140822b50:	41 b9 ff ff 00 00    	mov    $0xffff,%r9d
140822b56:	eb 0b                	jmp    0x140822b63
140822b58:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140822b5f:	00
140822b60:	45 33 d2             	xor    %r10d,%r10d
140822b63:	45 85 ff             	test   %r15d,%r15d
140822b66:	0f 8e 64 02 00 00    	jle    0x140822dd0
140822b6c:	49 63 cc             	movslq %r12d,%rcx
140822b6f:	48 c1 e1 05          	shl    $0x5,%rcx
140822b73:	0f b7 04 31          	movzwl (%rcx,%rsi,1),%eax
140822b77:	66 41 3b c1          	cmp    %r9w,%ax
140822b7b:	0f 84 29 02 00 00    	je     0x140822daa
140822b81:	41 8b d4             	mov    %r12d,%edx
140822b84:	2b d0                	sub    %eax,%edx
140822b86:	45 0f b7 f0          	movzwl %r8w,%r14d
140822b8a:	44 89 75 c8          	mov    %r14d,-0x38(%rbp)
140822b8e:	45 85 f6             	test   %r14d,%r14d
140822b91:	75 05                	jne    0x140822b98
140822b93:	41 8b fa             	mov    %r10d,%edi
140822b96:	eb 16                	jmp    0x140822bae
140822b98:	8b 7c 31 08          	mov    0x8(%rcx,%rsi,1),%edi
140822b9c:	b9 40 00 00 00       	mov    $0x40,%ecx
140822ba1:	49 2b ce             	sub    %r14,%rcx
140822ba4:	49 0f af fb          	imul   %r11,%rdi
140822ba8:	48 d3 e7             	shl    %cl,%rdi
140822bab:	48 d3 ef             	shr    %cl,%rdi
140822bae:	3b d7                	cmp    %edi,%edx
140822bb0:	0f 84 f4 01 00 00    	je     0x140822daa
140822bb6:	45 33 c9             	xor    %r9d,%r9d
140822bb9:	45 8b c4             	mov    %r12d,%r8d
140822bbc:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140822bc1:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
140822bc6:	e8 75 84 d5 ff       	call   0x14057b040
140822bcb:	8b df                	mov    %edi,%ebx
140822bcd:	33 c9                	xor    %ecx,%ecx
140822bcf:	8b c1                	mov    %ecx,%eax
140822bd1:	48 85 f6             	test   %rsi,%rsi
140822bd4:	41 0f 45 c5          	cmovne %r13d,%eax
140822bd8:	4c 63 c7             	movslq %edi,%r8
140822bdb:	4c 63 c8             	movslq %eax,%r9
140822bde:	41 bb ff ff 00 00    	mov    $0xffff,%r11d
140822be4:	4d 3b c1             	cmp    %r9,%r8
140822be7:	7d 2b                	jge    0x140822c14
140822be9:	49 8b d0             	mov    %r8,%rdx
140822bec:	48 c1 e2 05          	shl    $0x5,%rdx
140822bf0:	48 03 d6             	add    %rsi,%rdx
140822bf3:	0f b7 02             	movzwl (%rdx),%eax
140822bf6:	66 41 3b c3          	cmp    %r11w,%ax
140822bfa:	74 16                	je     0x140822c12
140822bfc:	8b cb                	mov    %ebx,%ecx
140822bfe:	2b c8                	sub    %eax,%ecx
140822c00:	3b cf                	cmp    %edi,%ecx
140822c02:	7f 0e                	jg     0x140822c12
140822c04:	ff c3                	inc    %ebx
140822c06:	49 ff c0             	inc    %r8
140822c09:	48 83 c2 20          	add    $0x20,%rdx
140822c0d:	4d 3b c1             	cmp    %r9,%r8
140822c10:	7c e1                	jl     0x140822bf3
140822c12:	33 c9                	xor    %ecx,%ecx
140822c14:	0f b7 c3             	movzwl %bx,%eax
140822c17:	66 2b c7             	sub    %di,%ax
140822c1a:	66 89 44 24 40       	mov    %ax,0x40(%rsp)
140822c1f:	0f 10 74 24 50       	movups 0x50(%rsp),%xmm6
140822c24:	0f 10 7c 24 40       	movups 0x40(%rsp),%xmm7
140822c29:	8b c1                	mov    %ecx,%eax
140822c2b:	48 85 f6             	test   %rsi,%rsi
140822c2e:	41 0f 45 c5          	cmovne %r13d,%eax
140822c32:	3b d8                	cmp    %eax,%ebx
140822c34:	0f 8d a9 00 00 00    	jge    0x140822ce3
140822c3a:	48 63 d3             	movslq %ebx,%rdx
140822c3d:	4c 8b d2             	mov    %rdx,%r10
140822c40:	49 c1 e2 05          	shl    $0x5,%r10
140822c44:	4c 03 d6             	add    %rsi,%r10
140822c47:	41 0f b7 02          	movzwl (%r10),%eax
140822c4b:	66 41 3b c3          	cmp    %r11w,%ax
140822c4f:	0f 84 80 00 00 00    	je     0x140822cd5
140822c55:	41 0f 10 02          	movups (%r10),%xmm0
140822c59:	0f 11 44 24 40       	movups %xmm0,0x40(%rsp)
140822c5e:	41 0f 10 4a 10       	movups 0x10(%r10),%xmm1
140822c63:	44 8b db             	mov    %ebx,%r11d
140822c66:	44 2b d8             	sub    %eax,%r11d
140822c69:	44 8b c3             	mov    %ebx,%r8d
140822c6c:	8b c1                	mov    %ecx,%eax
140822c6e:	48 85 f6             	test   %rsi,%rsi
140822c71:	41 0f 45 c5          	cmovne %r13d,%eax
140822c75:	48 63 f8             	movslq %eax,%rdi
140822c78:	48 3b d7             	cmp    %rdi,%rdx
140822c7b:	7d 32                	jge    0x140822caf
140822c7d:	4d 8b ca             	mov    %r10,%r9
140822c80:	41 be ff ff 00 00    	mov    $0xffff,%r14d
140822c86:	41 0f b7 01          	movzwl (%r9),%eax
140822c8a:	66 41 3b c6          	cmp    %r14w,%ax
140822c8e:	74 19                	je     0x140822ca9
140822c90:	41 8b c8             	mov    %r8d,%ecx
140822c93:	2b c8                	sub    %eax,%ecx
140822c95:	41 3b cb             	cmp    %r11d,%ecx
140822c98:	75 0f                	jne    0x140822ca9
140822c9a:	41 ff c0             	inc    %r8d
140822c9d:	48 ff c2             	inc    %rdx
140822ca0:	49 83 c1 20          	add    $0x20,%r9
140822ca4:	48 3b d7             	cmp    %rdi,%rdx
140822ca7:	7c dd                	jl     0x140822c86
140822ca9:	44 8b 75 c8          	mov    -0x38(%rbp),%r14d
140822cad:	33 c9                	xor    %ecx,%ecx
140822caf:	41 0f b7 c0          	movzwl %r8w,%eax
140822cb3:	66 2b c3             	sub    %bx,%ax
140822cb6:	66 01 44 24 40       	add    %ax,0x40(%rsp)
140822cbb:	41 0f 11 3a          	movups %xmm7,(%r10)
140822cbf:	41 0f 11 72 10       	movups %xmm6,0x10(%r10)
140822cc4:	0f 10 f1             	movups %xmm1,%xmm6
140822cc7:	41 8b d8             	mov    %r8d,%ebx
140822cca:	41 bb ff ff 00 00    	mov    $0xffff,%r11d
140822cd0:	e9 4f ff ff ff       	jmp    0x140822c24
140822cd5:	41 0f 11 3a          	movups %xmm7,(%r10)
140822cd9:	41 0f 11 72 10       	movups %xmm6,0x10(%r10)
140822cde:	e9 b2 00 00 00       	jmp    0x140822d95
140822ce3:	44 8b e1             	mov    %ecx,%r12d
140822ce6:	48 85 f6             	test   %rsi,%rsi
140822ce9:	45 0f 45 e5          	cmovne %r13d,%r12d
140822ced:	41 8d 46 01          	lea    0x1(%r14),%eax
140822cf1:	0f b7 c8             	movzwl %ax,%ecx
140822cf4:	0f b7 c1             	movzwl %cx,%eax
140822cf7:	89 85 d0 00 00 00    	mov    %eax,0xd0(%rbp)
140822cfd:	66 89 4c 24 62       	mov    %cx,0x62(%rsp)
140822d02:	ba 01 00 00 00       	mov    $0x1,%edx
140822d07:	d3 e2                	shl    %cl,%edx
140822d09:	89 54 24 68          	mov    %edx,0x68(%rsp)
140822d0d:	44 8d 2c 0a          	lea    (%rdx,%rcx,1),%r13d
140822d11:	44 89 6c 24 64       	mov    %r13d,0x64(%rsp)
140822d16:	45 33 f6             	xor    %r14d,%r14d
140822d19:	41 8b c6             	mov    %r14d,%eax
140822d1c:	48 85 f6             	test   %rsi,%rsi
140822d1f:	41 0f 45 c5          	cmovne %r13d,%eax
140822d23:	48 63 f8             	movslq %eax,%rdi
140822d26:	48 8b d7             	mov    %rdi,%rdx
140822d29:	48 c1 e2 05          	shl    $0x5,%rdx
140822d2d:	48 8b ce             	mov    %rsi,%rcx
140822d30:	e8 73 e4 60 00       	call   0x140e311a8
140822d35:	48 8b f0             	mov    %rax,%rsi
140822d38:	48 89 45 a0          	mov    %rax,-0x60(%rbp)
140822d3c:	49 63 cc             	movslq %r12d,%rcx
140822d3f:	48 3b cf             	cmp    %rdi,%rcx
140822d42:	7d 1c                	jge    0x140822d60
140822d44:	48 8b c1             	mov    %rcx,%rax
140822d47:	48 c1 e0 05          	shl    $0x5,%rax
140822d4b:	48 03 c6             	add    %rsi,%rax
140822d4e:	48 2b f9             	sub    %rcx,%rdi
140822d51:	66 c7 00 ff ff       	movw   $0xffff,(%rax)
140822d56:	48 8d 40 20          	lea    0x20(%rax),%rax
140822d5a:	48 83 ef 01          	sub    $0x1,%rdi
140822d5e:	75 f1                	jne    0x140822d51
140822d60:	44 89 64 24 70       	mov    %r12d,0x70(%rsp)
140822d65:	44 8b 85 d8 00 00 00 	mov    0xd8(%rbp),%r8d
140822d6c:	66 41 ff c0          	inc    %r8w
140822d70:	44 89 85 d8 00 00 00 	mov    %r8d,0xd8(%rbp)
140822d77:	66 44 89 44 24 60    	mov    %r8w,0x60(%rsp)
140822d7d:	4c 89 75 90          	mov    %r14,-0x70(%rbp)
140822d81:	44 89 75 88          	mov    %r14d,-0x78(%rbp)
140822d85:	48 63 c3             	movslq %ebx,%rax
140822d88:	48 c1 e0 05          	shl    $0x5,%rax
140822d8c:	0f 11 3c 30          	movups %xmm7,(%rax,%rsi,1)
140822d90:	0f 11 74 30 10       	movups %xmm6,0x10(%rax,%rsi,1)
140822d95:	41 ff cf             	dec    %r15d
140822d98:	41 b9 ff ff 00 00    	mov    $0xffff,%r9d
140822d9e:	49 bb 15 7c 4a 7f b9 	movabs $0x9e3779b97f4a7c15,%r11
140822da5:	79 37 9e
140822da8:	eb 08                	jmp    0x140822db2
140822daa:	41 ff cc             	dec    %r12d
140822dad:	44 89 64 24 70       	mov    %r12d,0x70(%rsp)
140822db2:	45 85 e4             	test   %r12d,%r12d
140822db5:	44 8b 85 d0 00 00 00 	mov    0xd0(%rbp),%r8d
140822dbc:	0f 89 9e fd ff ff    	jns    0x140822b60
140822dc2:	45 33 e4             	xor    %r12d,%r12d
140822dc5:	66 44 89 64 24 60    	mov    %r12w,0x60(%rsp)
140822dcb:	e9 ad f9 ff ff       	jmp    0x14082277d
140822dd0:	45 85 e4             	test   %r12d,%r12d
140822dd3:	0f 89 a1 f9 ff ff    	jns    0x14082277a
140822dd9:	45 33 e4             	xor    %r12d,%r12d
140822ddc:	66 44 89 64 24 60    	mov    %r12w,0x60(%rsp)
140822de2:	e9 96 f9 ff ff       	jmp    0x14082277d
140822de7:	49 8b c4             	mov    %r12,%rax
140822dea:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
140822dee:	ba 0a 00 00 00       	mov    $0xa,%edx
140822df3:	48 8d 8d d0 00 00 00 	lea    0xd0(%rbp),%rcx
140822dfa:	e8 e1 8d 01 00       	call   0x14083bbe0
140822dff:	8b 08                	mov    (%rax),%ecx
140822e01:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
140822e05:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
140822e09:	89 4d e8             	mov    %ecx,-0x18(%rbp)
140822e0c:	4c 89 a5 d8 00 00 00 	mov    %r12,0xd8(%rbp)
140822e13:	4c 8d 85 d8 00 00 00 	lea    0xd8(%rbp),%r8
140822e1a:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140822e1f:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140822e23:	e8 88 a1 ff ff       	call   0x14081cfb0
140822e28:	90                   	nop
140822e29:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140822e2e:	4c 8d 0d fb b1 81 00 	lea    0x81b1fb(%rip),%r9        # 0x14103e030
140822e35:	41 b8 5f 00 00 00    	mov    $0x5f,%r8d
140822e3b:	48 8d 15 ce af 81 00 	lea    0x81afce(%rip),%rdx        # 0x14103de10
140822e42:	b9 0a 00 00 00       	mov    $0xa,%ecx
140822e47:	e8 64 c8 01 00       	call   0x14083f6b0
140822e4c:	90                   	nop
140822e4d:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140822e52:	e8 c9 99 01 00       	call   0x14083c820
140822e57:	48 8b 4d 50          	mov    0x50(%rbp),%rcx
140822e5b:	48 85 c9             	test   %rcx,%rcx
140822e5e:	74 38                	je     0x140822e98
140822e60:	83 7d 14 00          	cmpl   $0x0,0x14(%rbp)
140822e64:	7e 32                	jle    0x140822e98
140822e66:	4c 8b 01             	mov    (%rcx),%r8
140822e69:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140822e6d:	49 2b c8             	sub    %r8,%rcx
140822e70:	48 8b c3             	mov    %rbx,%rax
140822e73:	48 f7 e9             	imul   %rcx
140822e76:	48 c1 fa 04          	sar    $0x4,%rdx
140822e7a:	48 8b c2             	mov    %rdx,%rax
140822e7d:	48 c1 e8 3f          	shr    $0x3f,%rax
140822e81:	48 03 d0             	add    %rax,%rdx
140822e84:	0f 84 50 02 00 00    	je     0x1408230da
140822e8a:	49 8b d0             	mov    %r8,%rdx
140822e8d:	48 8d 4d 00          	lea    0x0(%rbp),%rcx
140822e91:	e8 0a 74 d5 ff       	call   0x14057a2a0
140822e96:	eb 03                	jmp    0x140822e9b
140822e98:	49 8b c4             	mov    %r12,%rax
140822e9b:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
140822e9f:	ba 0a 00 00 00       	mov    $0xa,%edx
140822ea4:	48 8d 8d d8 00 00 00 	lea    0xd8(%rbp),%rcx
140822eab:	e8 30 8d 01 00       	call   0x14083bbe0
140822eb0:	8b 10                	mov    (%rax),%edx
140822eb2:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
140822eb6:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
140822eba:	89 55 e8             	mov    %edx,-0x18(%rbp)
140822ebd:	c7 85 d0 00 00 00 0f 	movl   $0xf,0xd0(%rbp)
140822ec4:	00 00 00
140822ec7:	4c 8d 85 d0 00 00 00 	lea    0xd0(%rbp),%r8
140822ece:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140822ed3:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140822ed7:	e8 a4 9f ff ff       	call   0x14081ce80
140822edc:	90                   	nop
140822edd:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140822ee2:	4c 8d 0d 5f b1 81 00 	lea    0x81b15f(%rip),%r9        # 0x14103e048
140822ee9:	41 b8 64 00 00 00    	mov    $0x64,%r8d
140822eef:	48 8d 15 1a af 81 00 	lea    0x81af1a(%rip),%rdx        # 0x14103de10
140822ef6:	b9 0a 00 00 00       	mov    $0xa,%ecx
140822efb:	e8 b0 c7 01 00       	call   0x14083f6b0
140822f00:	90                   	nop
140822f01:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140822f06:	e8 15 99 01 00       	call   0x14083c820
140822f0b:	49 8b cd             	mov    %r13,%rcx
140822f0e:	e8 7d ec f7 ff       	call   0x1407a1b90
140822f13:	ba 38 00 00 00       	mov    $0x38,%edx
140822f18:	49 8b cd             	mov    %r13,%rcx
140822f1b:	e8 24 82 5f 00       	call   0x140e1b144
140822f20:	49 8b cf             	mov    %r15,%rcx
140822f23:	e8 68 ec f7 ff       	call   0x1407a1b90
140822f28:	ba 38 00 00 00       	mov    $0x38,%edx
140822f2d:	49 8b cf             	mov    %r15,%rcx
140822f30:	e8 0f 82 5f 00       	call   0x140e1b144
140822f35:	48 8b 4d c0          	mov    -0x40(%rbp),%rcx
140822f39:	e8 52 ec f7 ff       	call   0x1407a1b90
140822f3e:	ba 38 00 00 00       	mov    $0x38,%edx
140822f43:	48 8b 4d c0          	mov    -0x40(%rbp),%rcx
140822f47:	e8 f8 81 5f 00       	call   0x140e1b144
140822f4c:	48 8b ce             	mov    %rsi,%rcx
140822f4f:	e8 3c ec f7 ff       	call   0x1407a1b90
140822f54:	ba 38 00 00 00       	mov    $0x38,%edx
140822f59:	48 8b ce             	mov    %rsi,%rcx
140822f5c:	e8 e3 81 5f 00       	call   0x140e1b144
140822f61:	90                   	nop
140822f62:	48 8d 4d 00          	lea    0x0(%rbp),%rcx
140822f66:	e8 c5 65 d5 ff       	call   0x140579530
140822f6b:	48 8b 55 50          	mov    0x50(%rbp),%rdx
140822f6f:	48 85 d2             	test   %rdx,%rdx
140822f72:	74 0a                	je     0x140822f7e
140822f74:	48 8d 4d 50          	lea    0x50(%rbp),%rcx
140822f78:	e8 33 60 d5 ff       	call   0x140578fb0
140822f7d:	90                   	nop
140822f7e:	4c 8b 7d a0          	mov    -0x60(%rbp),%r15
140822f82:	4d 85 ff             	test   %r15,%r15
140822f85:	74 6a                	je     0x140822ff1
140822f87:	8b 44 24 64          	mov    0x64(%rsp),%eax
140822f8b:	83 e8 01             	sub    $0x1,%eax
140822f8e:	48 63 f8             	movslq %eax,%rdi
140822f91:	78 56                	js     0x140822fe9
140822f93:	48 8b df             	mov    %rdi,%rbx
140822f96:	48 c1 e3 05          	shl    $0x5,%rbx
140822f9a:	48 83 c3 04          	add    $0x4,%rbx
140822f9e:	49 03 df             	add    %r15,%rbx
140822fa1:	48 8b 75 98          	mov    -0x68(%rbp),%rsi
140822fa5:	41 bc ff ff 00 00    	mov    $0xffff,%r12d
140822fab:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140822fb0:	66 44 39 63 fc       	cmp    %r12w,-0x4(%rbx)
140822fb5:	74 25                	je     0x140822fdc
140822fb7:	48 85 f6             	test   %rsi,%rsi
140822fba:	74 0d                	je     0x140822fc9
140822fbc:	48 8b 4b 0c          	mov    0xc(%rbx),%rcx
140822fc0:	48 8b c6             	mov    %rsi,%rax
140822fc3:	ff 15 57 0a 76 00    	call   *0x760a57(%rip)        # 0x140f83a20
140822fc9:	83 3b 08             	cmpl   $0x8,(%rbx)
140822fcc:	76 09                	jbe    0x140822fd7
140822fce:	48 8b 4b 14          	mov    0x14(%rbx),%rcx
140822fd2:	e8 6d 81 5f 00       	call   0x140e1b144
140822fd7:	66 44 89 63 fc       	mov    %r12w,-0x4(%rbx)
140822fdc:	48 83 eb 20          	sub    $0x20,%rbx
140822fe0:	48 83 ef 01          	sub    $0x1,%rdi
140822fe4:	79 ca                	jns    0x140822fb0
140822fe6:	45 33 e4             	xor    %r12d,%r12d
140822fe9:	49 8b cf             	mov    %r15,%rcx
140822fec:	e8 9f e0 60 00       	call   0x140e31090
140822ff1:	4d 85 f6             	test   %r14,%r14
140822ff4:	74 72                	je     0x140823068
140822ff6:	49 8b fe             	mov    %r14,%rdi
140822ff9:	4d 8b f4             	mov    %r12,%r14
140822ffc:	48 85 ff             	test   %rdi,%rdi
140822fff:	74 67                	je     0x140823068
140823001:	48 8b 1f             	mov    (%rdi),%rbx
140823004:	48 85 db             	test   %rbx,%rbx
140823007:	74 52                	je     0x14082305b
140823009:	48 8b 77 08          	mov    0x8(%rdi),%rsi
14082300d:	48 3b de             	cmp    %rsi,%rbx
140823010:	74 11                	je     0x140823023
140823012:	48 8b cb             	mov    %rbx,%rcx
140823015:	e8 76 eb f7 ff       	call   0x1407a1b90
14082301a:	48 83 c3 38          	add    $0x38,%rbx
14082301e:	48 3b de             	cmp    %rsi,%rbx
140823021:	75 ef                	jne    0x140823012
140823023:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140823027:	48 2b 0f             	sub    (%rdi),%rcx
14082302a:	48 b8 25 49 92 24 49 	movabs $0x4924924924924925,%rax
140823031:	92 24 49
140823034:	48 f7 e9             	imul   %rcx
140823037:	48 c1 fa 04          	sar    $0x4,%rdx
14082303b:	4c 8b c2             	mov    %rdx,%r8
14082303e:	49 c1 e8 3f          	shr    $0x3f,%r8
140823042:	4c 03 c2             	add    %rdx,%r8