1406b2b28:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
1406b2b2c:	48 85 c9             	test   %rcx,%rcx
1406b2b2f:	0f 84 b5 02 00 00    	je     0x1406b2dea
1406b2b35:	8b 41 10             	mov    0x10(%rcx),%eax
1406b2b38:	ff c8                	dec    %eax
1406b2b3a:	89 41 10             	mov    %eax,0x10(%rcx)
1406b2b3d:	85 c0                	test   %eax,%eax
1406b2b3f:	0f 8f a5 02 00 00    	jg     0x1406b2dea
1406b2b45:	0f 88 42 03 00 00    	js     0x1406b2e8d
1406b2b4b:	e9 88 02 00 00       	jmp    0x1406b2dd8
1406b2b50:	48 8b 42 18          	mov    0x18(%rdx),%rax
1406b2b54:	49 63 4b 04          	movslq 0x4(%r11),%rcx
1406b2b58:	48 8b 00             	mov    (%rax),%rax
1406b2b5b:	48 8b 1c c8          	mov    (%rax,%rcx,8),%rbx
1406b2b5f:	b9 60 00 00 00       	mov    $0x60,%ecx
1406b2b64:	e8 9f 85 76 00       	call   0x140e1b108
1406b2b69:	48 8b f0             	mov    %rax,%rsi
1406b2b6c:	48 89 45 c8          	mov    %rax,-0x38(%rbp)
1406b2b70:	48 85 c0             	test   %rax,%rax
1406b2b73:	74 4b                	je     0x1406b2bc0
1406b2b75:	0f 57 c0             	xorps  %xmm0,%xmm0
1406b2b78:	0f 11 45 d0          	movups %xmm0,-0x30(%rbp)
1406b2b7c:	0f 57 c9             	xorps  %xmm1,%xmm1
1406b2b7f:	f3 0f 7f 4d e0       	movdqu %xmm1,-0x20(%rbp)
1406b2b84:	49 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%r8
1406b2b8b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1406b2b90:	49 ff c0             	inc    %r8
1406b2b93:	42 80 3c 03 00       	cmpb   $0x0,(%rbx,%r8,1)
1406b2b98:	75 f6                	jne    0x1406b2b90
1406b2b9a:	48 8b d3             	mov    %rbx,%rdx
1406b2b9d:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
1406b2ba1:	e8 5a 42 ae ff       	call   0x140196e00
1406b2ba6:	90                   	nop
1406b2ba7:	bf 02 00 00 00       	mov    $0x2,%edi
1406b2bac:	89 7d b8             	mov    %edi,-0x48(%rbp)
1406b2baf:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
1406b2bb3:	48 8b ce             	mov    %rsi,%rcx
1406b2bb6:	e8 15 4d 09 00       	call   0x1407478d0
1406b2bbb:	48 8b d8             	mov    %rax,%rbx
1406b2bbe:	eb 03                	jmp    0x1406b2bc3
1406b2bc0:	48 8b df             	mov    %rdi,%rbx
1406b2bc3:	83 cf 04             	or     $0x4,%edi
1406b2bc6:	40 f6 c7 02          	test   $0x2,%dil
1406b2bca:	74 3c                	je     0x1406b2c08
1406b2bcc:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
1406b2bd0:	48 83 fa 0f          	cmp    $0xf,%rdx
1406b2bd4:	76 32                	jbe    0x1406b2c08
1406b2bd6:	48 ff c2             	inc    %rdx
1406b2bd9:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
1406b2bdd:	48 8b c1             	mov    %rcx,%rax
1406b2be0:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1406b2be7:	72 19                	jb     0x1406b2c02
1406b2be9:	48 83 c2 27          	add    $0x27,%rdx
1406b2bed:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1406b2bf1:	48 2b c1             	sub    %rcx,%rax
1406b2bf4:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1406b2bf8:	48 83 f8 1f          	cmp    $0x1f,%rax
1406b2bfc:	0f 87 ca 02 00 00    	ja     0x1406b2ecc
1406b2c02:	e8 3d 85 76 00       	call   0x140e1b144
1406b2c07:	90                   	nop
1406b2c08:	48 89 5d c0          	mov    %rbx,-0x40(%rbp)
1406b2c0c:	e9 d9 01 00 00       	jmp    0x1406b2dea
1406b2c11:	48 8b 42 28          	mov    0x28(%rdx),%rax
1406b2c15:	49 63 4b 04          	movslq 0x4(%r11),%rcx
1406b2c19:	48 8b 00             	mov    (%rax),%rax
1406b2c1c:	48 8d 1c c8          	lea    (%rax,%rcx,8),%rbx
1406b2c20:	b9 48 00 00 00       	mov    $0x48,%ecx
1406b2c25:	e8 de 84 76 00       	call   0x140e1b108
1406b2c2a:	4c 8b c0             	mov    %rax,%r8
1406b2c2d:	48 89 45 c8          	mov    %rax,-0x38(%rbp)
1406b2c31:	48 85 c0             	test   %rax,%rax
1406b2c34:	74 39                	je     0x1406b2c6f
1406b2c36:	48 8b 0b             	mov    (%rbx),%rcx
1406b2c39:	48 89 4d b8          	mov    %rcx,-0x48(%rbp)
1406b2c3d:	48 85 c9             	test   %rcx,%rcx
1406b2c40:	74 1c                	je     0x1406b2c5e
1406b2c42:	8b 41 10             	mov    0x10(%rcx),%eax
1406b2c45:	ff c0                	inc    %eax
1406b2c47:	89 41 10             	mov    %eax,0x10(%rcx)
1406b2c4a:	83 f8 01             	cmp    $0x1,%eax
1406b2c4d:	0f 8e 7f 02 00 00    	jle    0x1406b2ed2
1406b2c53:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b2c58:	0f 84 7c 02 00 00    	je     0x1406b2eda
1406b2c5e:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
1406b2c62:	49 8b c8             	mov    %r8,%rcx
1406b2c65:	e8 66 31 ba ff       	call   0x140255dd0
1406b2c6a:	48 8b d8             	mov    %rax,%rbx
1406b2c6d:	eb 03                	jmp    0x1406b2c72
1406b2c6f:	48 8b df             	mov    %rdi,%rbx
1406b2c72:	48 89 5d c0          	mov    %rbx,-0x40(%rbp)
1406b2c76:	e9 6f 01 00 00       	jmp    0x1406b2dea
1406b2c7b:	48 8b 42 28          	mov    0x28(%rdx),%rax
1406b2c7f:	49 63 4b 04          	movslq 0x4(%r11),%rcx
1406b2c83:	48 8b 00             	mov    (%rax),%rax
1406b2c86:	48 8d 1c c8          	lea    (%rax,%rcx,8),%rbx
1406b2c8a:	b9 48 00 00 00       	mov    $0x48,%ecx
1406b2c8f:	e8 74 84 76 00       	call   0x140e1b108
1406b2c94:	4c 8b c0             	mov    %rax,%r8
1406b2c97:	48 89 45 c8          	mov    %rax,-0x38(%rbp)
1406b2c9b:	48 85 c0             	test   %rax,%rax
1406b2c9e:	74 39                	je     0x1406b2cd9
1406b2ca0:	48 8b 0b             	mov    (%rbx),%rcx
1406b2ca3:	48 89 4d b8          	mov    %rcx,-0x48(%rbp)
1406b2ca7:	48 85 c9             	test   %rcx,%rcx
1406b2caa:	74 1c                	je     0x1406b2cc8
1406b2cac:	8b 41 10             	mov    0x10(%rcx),%eax
1406b2caf:	ff c0                	inc    %eax
1406b2cb1:	89 41 10             	mov    %eax,0x10(%rcx)
1406b2cb4:	83 f8 01             	cmp    $0x1,%eax
1406b2cb7:	0f 8e 28 02 00 00    	jle    0x1406b2ee5
1406b2cbd:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b2cc2:	0f 84 25 02 00 00    	je     0x1406b2eed
1406b2cc8:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
1406b2ccc:	49 8b c8             	mov    %r8,%rcx
1406b2ccf:	e8 cc 57 09 00       	call   0x1407484a0
1406b2cd4:	48 8b d8             	mov    %rax,%rbx
1406b2cd7:	eb 03                	jmp    0x1406b2cdc
1406b2cd9:	48 8b df             	mov    %rdi,%rbx
1406b2cdc:	48 89 5d c0          	mov    %rbx,-0x40(%rbp)
1406b2ce0:	e9 05 01 00 00       	jmp    0x1406b2dea
1406b2ce5:	44 89 74 24 20       	mov    %r14d,0x20(%rsp)
1406b2cea:	4c 8b c2             	mov    %rdx,%r8
1406b2ced:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
1406b2cf1:	49 8b ca             	mov    %r10,%rcx
1406b2cf4:	e8 a7 d7 ff ff       	call   0x1406b04a0
1406b2cf9:	48 8b 18             	mov    (%rax),%rbx
1406b2cfc:	48 89 5d c0          	mov    %rbx,-0x40(%rbp)
1406b2d00:	48 89 38             	mov    %rdi,(%rax)
1406b2d03:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
1406b2d07:	48 85 c9             	test   %rcx,%rcx
1406b2d0a:	0f 84 da 00 00 00    	je     0x1406b2dea
1406b2d10:	8b 41 10             	mov    0x10(%rcx),%eax
1406b2d13:	ff c8                	dec    %eax
1406b2d15:	89 41 10             	mov    %eax,0x10(%rcx)
1406b2d18:	85 c0                	test   %eax,%eax
1406b2d1a:	0f 8f ca 00 00 00    	jg     0x1406b2dea
1406b2d20:	0f 88 72 01 00 00    	js     0x1406b2e98
1406b2d26:	e9 ad 00 00 00       	jmp    0x1406b2dd8
1406b2d2b:	4c 8b c2             	mov    %rdx,%r8
1406b2d2e:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
1406b2d32:	49 8b ca             	mov    %r10,%rcx
1406b2d35:	e8 b6 d4 ff ff       	call   0x1406b01f0
1406b2d3a:	48 8b 18             	mov    (%rax),%rbx
1406b2d3d:	48 89 5d c0          	mov    %rbx,-0x40(%rbp)
1406b2d41:	48 89 38             	mov    %rdi,(%rax)
1406b2d44:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
1406b2d48:	48 85 c9             	test   %rcx,%rcx
1406b2d4b:	0f 84 99 00 00 00    	je     0x1406b2dea
1406b2d51:	8b 41 10             	mov    0x10(%rcx),%eax
1406b2d54:	ff c8                	dec    %eax
1406b2d56:	89 41 10             	mov    %eax,0x10(%rcx)
1406b2d59:	85 c0                	test   %eax,%eax
1406b2d5b:	0f 8f 89 00 00 00    	jg     0x1406b2dea
1406b2d61:	0f 88 3c 01 00 00    	js     0x1406b2ea3
1406b2d67:	eb 6f                	jmp    0x1406b2dd8
1406b2d69:	4c 8b c2             	mov    %rdx,%r8
1406b2d6c:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
1406b2d70:	49 8b ca             	mov    %r10,%rcx
1406b2d73:	e8 b8 ce ff ff       	call   0x1406afc30
1406b2d78:	48 8b 18             	mov    (%rax),%rbx
1406b2d7b:	48 89 5d c0          	mov    %rbx,-0x40(%rbp)
1406b2d7f:	48 89 38             	mov    %rdi,(%rax)
1406b2d82:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
1406b2d86:	48 85 c9             	test   %rcx,%rcx
1406b2d89:	74 5f                	je     0x1406b2dea
1406b2d8b:	8b 41 10             	mov    0x10(%rcx),%eax
1406b2d8e:	ff c8                	dec    %eax
1406b2d90:	89 41 10             	mov    %eax,0x10(%rcx)
1406b2d93:	85 c0                	test   %eax,%eax
1406b2d95:	7f 53                	jg     0x1406b2dea
1406b2d97:	0f 88 11 01 00 00    	js     0x1406b2eae
1406b2d9d:	eb 39                	jmp    0x1406b2dd8
1406b2d9f:	44 89 74 24 20       	mov    %r14d,0x20(%rsp)
1406b2da4:	4c 8b c2             	mov    %rdx,%r8
1406b2da7:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
1406b2dab:	49 8b ca             	mov    %r10,%rcx
1406b2dae:	e8 dd d0 ff ff       	call   0x1406afe90
1406b2db3:	48 8b 18             	mov    (%rax),%rbx
1406b2db6:	48 89 5d c0          	mov    %rbx,-0x40(%rbp)
1406b2dba:	48 89 38             	mov    %rdi,(%rax)
1406b2dbd:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
1406b2dc1:	48 85 c9             	test   %rcx,%rcx
1406b2dc4:	74 24                	je     0x1406b2dea
1406b2dc6:	8b 41 10             	mov    0x10(%rcx),%eax
1406b2dc9:	ff c8                	dec    %eax
1406b2dcb:	89 41 10             	mov    %eax,0x10(%rcx)
1406b2dce:	85 c0                	test   %eax,%eax
1406b2dd0:	7f 18                	jg     0x1406b2dea
1406b2dd2:	0f 88 20 01 00 00    	js     0x1406b2ef8
1406b2dd8:	48 8b 01             	mov    (%rcx),%rax
1406b2ddb:	ba 01 00 00 00       	mov    $0x1,%edx
1406b2de0:	48 8b 00             	mov    (%rax),%rax
1406b2de3:	ff 15 37 0c 8d 00    	call   *0x8d0c37(%rip)        # 0x140f83a20
1406b2de9:	90                   	nop
1406b2dea:	49 8b 07             	mov    (%r15),%rax
1406b2ded:	4a 8d 14 f0          	lea    (%rax,%r14,8),%rdx
1406b2df1:	48 85 db             	test   %rbx,%rbx
1406b2df4:	74 1c                	je     0x1406b2e12
1406b2df6:	8b 43 10             	mov    0x10(%rbx),%eax
1406b2df9:	ff c0                	inc    %eax
1406b2dfb:	89 43 10             	mov    %eax,0x10(%rbx)
1406b2dfe:	83 f8 01             	cmp    $0x1,%eax
1406b2e01:	0f 8e fc 00 00 00    	jle    0x1406b2f03
1406b2e07:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1406b2e0c:	0f 84 f9 00 00 00    	je     0x1406b2f0b
1406b2e12:	48 8b 0a             	mov    (%rdx),%rcx
1406b2e15:	48 89 1a             	mov    %rbx,(%rdx)
1406b2e18:	48 85 c9             	test   %rcx,%rcx
1406b2e1b:	74 24                	je     0x1406b2e41
1406b2e1d:	8b 41 10             	mov    0x10(%rcx),%eax
1406b2e20:	ff c8                	dec    %eax
1406b2e22:	89 41 10             	mov    %eax,0x10(%rcx)
1406b2e25:	85 c0                	test   %eax,%eax
1406b2e27:	7f 18                	jg     0x1406b2e41
1406b2e29:	0f 88 e7 00 00 00    	js     0x1406b2f16
1406b2e2f:	48 8b 01             	mov    (%rcx),%rax
1406b2e32:	ba 01 00 00 00       	mov    $0x1,%edx
1406b2e37:	48 8b 00             	mov    (%rax),%rax
1406b2e3a:	ff 15 e0 0b 8d 00    	call   *0x8d0be0(%rip)        # 0x140f83a20
1406b2e40:	90                   	nop
1406b2e41:	48 85 db             	test   %rbx,%rbx
1406b2e44:	74 23                	je     0x1406b2e69
1406b2e46:	8b 43 10             	mov    0x10(%rbx),%eax
1406b2e49:	ff c8                	dec    %eax
1406b2e4b:	89 43 10             	mov    %eax,0x10(%rbx)
1406b2e4e:	85 c0                	test   %eax,%eax
1406b2e50:	7f 17                	jg     0x1406b2e69
1406b2e52:	78 2e                	js     0x1406b2e82
1406b2e54:	48 8b 03             	mov    (%rbx),%rax
1406b2e57:	ba 01 00 00 00       	mov    $0x1,%edx
1406b2e5c:	48 8b cb             	mov    %rbx,%rcx
1406b2e5f:	48 8b 00             	mov    (%rax),%rax
1406b2e62:	ff 15 b8 0b 8d 00    	call   *0x8d0bb8(%rip)        # 0x140f83a20
1406b2e68:	90                   	nop
1406b2e69:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
1406b2e6d:	48 33 cc             	xor    %rsp,%rcx
1406b2e70:	e8 8b 86 76 00       	call   0x140e1b500
1406b2e75:	48 83 c4 78          	add    $0x78,%rsp
1406b2e79:	41 5f                	pop    %r15
1406b2e7b:	41 5e                	pop    %r14
1406b2e7d:	5f                   	pop    %rdi
1406b2e7e:	5e                   	pop    %rsi
1406b2e7f:	5b                   	pop    %rbx
1406b2e80:	5d                   	pop    %rbp
1406b2e81:	c3                   	ret
1406b2e82:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b2e87:	e8 74 78 0d 00       	call   0x14078a700
1406b2e8c:	90                   	nop
1406b2e8d:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b2e92:	e8 69 78 0d 00       	call   0x14078a700
1406b2e97:	90                   	nop
1406b2e98:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b2e9d:	e8 5e 78 0d 00       	call   0x14078a700
1406b2ea2:	90                   	nop
1406b2ea3:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b2ea8:	e8 53 78 0d 00       	call   0x14078a700
1406b2ead:	90                   	nop
1406b2eae:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b2eb3:	e8 48 78 0d 00       	call   0x14078a700
1406b2eb8:	90                   	nop
1406b2eb9:	33 c9                	xor    %ecx,%ecx
1406b2ebb:	e8 40 78 0d 00       	call   0x14078a700
1406b2ec0:	cc                   	int3
1406b2ec1:	b9 01 00 00 00       	mov    $0x1,%ecx
1406b2ec6:	e8 35 78 0d 00       	call   0x14078a700
1406b2ecb:	90                   	nop
1406b2ecc:	e8 d3 72 77 00       	call   0x140e2a1a4
1406b2ed1:	90                   	nop
1406b2ed2:	33 c9                	xor    %ecx,%ecx
1406b2ed4:	e8 27 78 0d 00       	call   0x14078a700
1406b2ed9:	cc                   	int3
1406b2eda:	b9 01 00 00 00       	mov    $0x1,%ecx
1406b2edf:	e8 1c 78 0d 00       	call   0x14078a700
1406b2ee4:	90                   	nop
1406b2ee5:	33 c9                	xor    %ecx,%ecx
1406b2ee7:	e8 14 78 0d 00       	call   0x14078a700
1406b2eec:	cc                   	int3
1406b2eed:	b9 01 00 00 00       	mov    $0x1,%ecx
1406b2ef2:	e8 09 78 0d 00       	call   0x14078a700
1406b2ef7:	90                   	nop
1406b2ef8:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b2efd:	e8 fe 77 0d 00       	call   0x14078a700
1406b2f02:	90                   	nop
1406b2f03:	33 c9                	xor    %ecx,%ecx
1406b2f05:	e8 f6 77 0d 00       	call   0x14078a700
1406b2f0a:	cc                   	int3
1406b2f0b:	b9 01 00 00 00       	mov    $0x1,%ecx
1406b2f10:	e8 eb 77 0d 00       	call   0x14078a700
1406b2f15:	90                   	nop
1406b2f16:	b9 02 00 00 00       	mov    $0x2,%ecx
1406b2f1b:	e8 e0 77 0d 00       	call   0x14078a700
1406b2f20:	cc                   	int3
1406b2f21:	0f 1f 00             	nopl   (%rax)
1406b2f24:	da 2a                	fisubrl (%rdx)
1406b2f26:	6b 00 da             	imul   $0xffffffda,(%rax),%eax
1406b2f29:	2a 6b 00             	sub    0x0(%rbx),%ch
1406b2f2c:	da 2a                	fisubrl (%rdx)
1406b2f2e:	6b 00 da             	imul   $0xffffffda,(%rax),%eax
1406b2f31:	2a 6b 00             	sub    0x0(%rbx),%ch
1406b2f34:	da 2a                	fisubrl (%rdx)
1406b2f36:	6b 00 da             	imul   $0xffffffda,(%rax),%eax
1406b2f39:	2a 6b 00             	sub    0x0(%rbx),%ch
1406b2f3c:	da 2a                	fisubrl (%rdx)
1406b2f3e:	6b 00 da             	imul   $0xffffffda,(%rax),%eax
1406b2f41:	2a 6b 00             	sub    0x0(%rbx),%ch
1406b2f44:	da 2a                	fisubrl (%rdx)
1406b2f46:	6b 00 0f             	imul   $0xf,(%rax),%eax
1406b2f49:	2b 6b 00             	sub    0x0(%rbx),%ebp
1406b2f4c:	da 2a                	fisubrl (%rdx)
1406b2f4e:	6b 00 da             	imul   $0xffffffda,(%rax),%eax
1406b2f51:	2a 6b 00             	sub    0x0(%rbx),%ch
1406b2f54:	da 2a                	fisubrl (%rdx)
1406b2f56:	6b 00 da             	imul   $0xffffffda,(%rax),%eax
1406b2f59:	2a 6b 00             	sub    0x0(%rbx),%ch
1406b2f5c:	2b 2d 6b 00 9f 2d    	sub    0x2d9f006b(%rip),%ebp        # 0x16e0a2fcd
1406b2f62:	6b 00 e5             	imul   $0xffffffe5,(%rax),%eax
1406b2f65:	2c 6b                	sub    $0x6b,%al
1406b2f67:	00 69 2d             	add    %ch,0x2d(%rcx)
1406b2f6a:	6b 00 da             	imul   $0xffffffda,(%rax),%eax
1406b2f6d:	2a 6b 00             	sub    0x0(%rbx),%ch
1406b2f70:	7b 2c                	jnp    0x1406b2f9e
1406b2f72:	6b 00 50             	imul   $0x50,(%rax),%eax
1406b2f75:	2b 6b 00             	sub    0x0(%rbx),%ebp
1406b2f78:	11 2c 6b             	adc    %ebp,(%rbx,%rbp,2)
1406b2f7b:	00 da                	add    %bl,%dl
1406b2f7d:	2a 6b 00             	sub    0x0(%rbx),%ch
1406b2f80:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1406b2f85:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1406b2f8a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1406b2f8f:	57                   	push   %rdi
1406b2f90:	41 56                	push   %r14
1406b2f92:	41 57                	push   %r15
1406b2f94:	48 83 ec 30          	sub    $0x30,%rsp
1406b2f98:	49 63 c0             	movslq %r8d,%rax
1406b2f9b:	48 8b ea             	mov    %rdx,%rbp
1406b2f9e:	49 bf ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%r15
1406b2fa5:	aa aa 2a
1406b2fa8:	33 db                	xor    %ebx,%ebx
1406b2faa:	4d 8b f1             	mov    %r9,%r14
1406b2fad:	48 8b f1             	mov    %rcx,%rsi
1406b2fb0:	4c 8d 04 40          	lea    (%rax,%rax,2),%r8
1406b2fb4:	48 8b 41 18          	mov    0x18(%rcx),%rax
1406b2fb8:	4e 8b 14 c0          	mov    (%rax,%r8,8),%r10
1406b2fbc:	4a 8d 3c c0          	lea    (%rax,%r8,8),%rdi
1406b2fc0:	4e 8b 44 c0 08       	mov    0x8(%rax,%r8,8),%r8
1406b2fc5:	49 8b c7             	mov    %r15,%rax
1406b2fc8:	4d 2b c2             	sub    %r10,%r8
1406b2fcb:	49 f7 e8             	imul   %r8
1406b2fce:	48 c1 fa 02          	sar    $0x2,%rdx
1406b2fd2:	48 8b c2             	mov    %rdx,%rax