140e59a0e:	48 8b d8             	mov    %rax,%rbx
140e59a11:	48 85 c0             	test   %rax,%rax
140e59a14:	75 07                	jne    0x140e59a1d
140e59a16:	33 c9                	xor    %ecx,%ecx
140e59a18:	e9 a5 01 00 00       	jmp    0x140e59bc2
140e59a1d:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
140e59a21:	41 b8 03 01 00 00    	mov    $0x103,%r8d
140e59a27:	48 8b d3             	mov    %rbx,%rdx
140e59a2a:	e8 7d 10 00 00       	call   0x140e5aaac
140e59a2f:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
140e59a33:	48 85 c0             	test   %rax,%rax
140e59a36:	0f 84 83 01 00 00    	je     0x140e59bbf
140e59a3c:	44 38 3b             	cmp    %r15b,(%rbx)
140e59a3f:	0f 84 7a 01 00 00    	je     0x140e59bbf
140e59a45:	49 8b ce             	mov    %r14,%rcx
140e59a48:	48 ff c1             	inc    %rcx
140e59a4b:	44 38 3c 0b          	cmp    %r15b,(%rbx,%rcx,1)
140e59a4f:	75 f7                	jne    0x140e59a48
140e59a51:	4c 8d 7b ff          	lea    -0x1(%rbx),%r15
140e59a55:	ba 5c 00 00 00       	mov    $0x5c,%edx
140e59a5a:	4c 03 f9             	add    %rcx,%r15
140e59a5d:	48 8b cb             	mov    %rbx,%rcx
140e59a60:	e8 17 47 fc ff       	call   0x140e1e17c
140e59a65:	4c 3b f8             	cmp    %rax,%r15
140e59a68:	74 36                	je     0x140e59aa0
140e59a6a:	ba 2f 00 00 00       	mov    $0x2f,%edx
140e59a6f:	48 8b cb             	mov    %rbx,%rcx
140e59a72:	e8 05 47 fc ff       	call   0x140e1e17c
140e59a77:	4c 3b f8             	cmp    %rax,%r15
140e59a7a:	74 24                	je     0x140e59aa0
140e59a7c:	4c 8d 45 c0          	lea    -0x40(%rbp),%r8
140e59a80:	66 c7 45 c0 5c 00    	movw   $0x5c,-0x40(%rbp)
140e59a86:	ba 04 01 00 00       	mov    $0x104,%edx
140e59a8b:	48 8b cb             	mov    %rbx,%rcx
140e59a8e:	45 33 ff             	xor    %r15d,%r15d
140e59a91:	e8 ce d9 fe ff       	call   0x140e47464
140e59a96:	85 c0                	test   %eax,%eax
140e59a98:	0f 85 76 01 00 00    	jne    0x140e59c14
140e59a9e:	eb 03                	jmp    0x140e59aa3
140e59aa0:	45 33 ff             	xor    %r15d,%r15d
140e59aa3:	49 8b c6             	mov    %r14,%rax
140e59aa6:	48 ff c0             	inc    %rax
140e59aa9:	45 38 3c 04          	cmp    %r15b,(%r12,%rax,1)
140e59aad:	75 f7                	jne    0x140e59aa6
140e59aaf:	49 8b ce             	mov    %r14,%rcx
140e59ab2:	48 ff c1             	inc    %rcx
140e59ab5:	44 38 3c 0b          	cmp    %r15b,(%rbx,%rcx,1)
140e59ab9:	75 f7                	jne    0x140e59ab2
140e59abb:	48 03 c1             	add    %rcx,%rax
140e59abe:	b9 04 01 00 00       	mov    $0x104,%ecx
140e59ac3:	48 3b c1             	cmp    %rcx,%rax
140e59ac6:	0f 83 f3 00 00 00    	jae    0x140e59bbf
140e59acc:	8b d1                	mov    %ecx,%edx
140e59ace:	4d 8b c4             	mov    %r12,%r8
140e59ad1:	48 8b cb             	mov    %rbx,%rcx
140e59ad4:	e8 8b d9 fe ff       	call   0x140e47464
140e59ad9:	85 c0                	test   %eax,%eax
140e59adb:	0f 85 1e 01 00 00    	jne    0x140e59bff
140e59ae1:	e8 0a 08 fd ff       	call   0x140e2a2f0
140e59ae6:	4c 8b 4d d8          	mov    -0x28(%rbp),%r9
140e59aea:	4d 8b c5             	mov    %r13,%r8
140e59aed:	8b 4d c4             	mov    -0x3c(%rbp),%ecx
140e59af0:	48 8b d3             	mov    %rbx,%rdx
140e59af3:	44 89 38             	mov    %r15d,(%rax)
140e59af6:	e8 71 8e ff ff       	call   0x140e5296c
140e59afb:	4c 8b f8             	mov    %rax,%r15
140e59afe:	49 3b c6             	cmp    %r14,%rax
140e59b01:	0f 85 92 00 00 00    	jne    0x140e59b99
140e59b07:	e8 e4 07 fd ff       	call   0x140e2a2f0
140e59b0c:	83 38 02             	cmpl   $0x2,(%rax)
140e59b0f:	74 7c                	je     0x140e59b8d
140e59b11:	e8 ba 07 fd ff       	call   0x140e2a2d0
140e59b16:	83 38 15             	cmpl   $0x15,(%rax)
140e59b19:	74 72                	je     0x140e59b8d
140e59b1b:	41 bd 2f 00 00 00    	mov    $0x2f,%r13d
140e59b21:	4c 8d 7b 01          	lea    0x1(%rbx),%r15
140e59b25:	41 8b d5             	mov    %r13d,%edx
140e59b28:	48 8b cb             	mov    %rbx,%rcx
140e59b2b:	e8 e8 43 fc ff       	call   0x140e1df18
140e59b30:	48 3b c3             	cmp    %rbx,%rax
140e59b33:	75 15                	jne    0x140e59b4a
140e59b35:	41 8b d5             	mov    %r13d,%edx
140e59b38:	49 8b cf             	mov    %r15,%rcx
140e59b3b:	e8 d8 43 fc ff       	call   0x140e1df18
140e59b40:	49 3b c7             	cmp    %r15,%rax
140e59b43:	75 05                	jne    0x140e59b4a
140e59b45:	41 b5 01             	mov    $0x1,%r13b
140e59b48:	eb 03                	jmp    0x140e59b4d
140e59b4a:	45 32 ed             	xor    %r13b,%r13b
140e59b4d:	ba 5c 00 00 00       	mov    $0x5c,%edx
140e59b52:	48 8b cb             	mov    %rbx,%rcx
140e59b55:	e8 be 43 fc ff       	call   0x140e1df18
140e59b5a:	48 3b c3             	cmp    %rbx,%rax
140e59b5d:	75 19                	jne    0x140e59b78
140e59b5f:	ba 5c 00 00 00       	mov    $0x5c,%edx
140e59b64:	49 8b cf             	mov    %r15,%rcx
140e59b67:	e8 ac 43 fc ff       	call   0x140e1df18
140e59b6c:	49 3b c7             	cmp    %r15,%rax
140e59b6f:	75 07                	jne    0x140e59b78
140e59b71:	b0 01                	mov    $0x1,%al
140e59b73:	45 33 ff             	xor    %r15d,%r15d
140e59b76:	eb 06                	jmp    0x140e59b7e
140e59b78:	45 33 ff             	xor    %r15d,%r15d
140e59b7b:	41 8a c7             	mov    %r15b,%al
140e59b7e:	45 84 ed             	test   %r13b,%r13b
140e59b81:	75 04                	jne    0x140e59b87
140e59b83:	84 c0                	test   %al,%al
140e59b85:	74 38                	je     0x140e59bbf
140e59b87:	4c 8b 6d c8          	mov    -0x38(%rbp),%r13
140e59b8b:	eb 03                	jmp    0x140e59b90
140e59b8d:	45 33 ff             	xor    %r15d,%r15d
140e59b90:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
140e59b94:	e9 88 fe ff ff       	jmp    0x140e59a21
140e59b99:	48 8b cb             	mov    %rbx,%rcx
140e59b9c:	e8 d3 a0 ff ff       	call   0x140e53c74
140e59ba1:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
140e59ba5:	e8 ca a0 ff ff       	call   0x140e53c74
140e59baa:	48 83 65 b8 00       	andq   $0x0,-0x48(%rbp)
140e59baf:	83 3f 00             	cmpl   $0x0,(%rdi)
140e59bb2:	75 06                	jne    0x140e59bba
140e59bb4:	85 f6                	test   %esi,%esi
140e59bb6:	74 02                	je     0x140e59bba
140e59bb8:	89 37                	mov    %esi,(%rdi)
140e59bba:	49 8b c7             	mov    %r15,%rax
140e59bbd:	eb 23                	jmp    0x140e59be2
140e59bbf:	48 8b cb             	mov    %rbx,%rcx
140e59bc2:	e8 ad a0 ff ff       	call   0x140e53c74
140e59bc7:	48 8b 4d b8          	mov    -0x48(%rbp),%rcx
140e59bcb:	e8 a4 a0 ff ff       	call   0x140e53c74
140e59bd0:	4c 89 7d b8          	mov    %r15,-0x48(%rbp)
140e59bd4:	44 39 3f             	cmp    %r15d,(%rdi)
140e59bd7:	75 06                	jne    0x140e59bdf
140e59bd9:	85 f6                	test   %esi,%esi
140e59bdb:	74 02                	je     0x140e59bdf
140e59bdd:	89 37                	mov    %esi,(%rdi)
140e59bdf:	49 8b c6             	mov    %r14,%rax
140e59be2:	48 8b 4d e8          	mov    -0x18(%rbp),%rcx
140e59be6:	48 33 cc             	xor    %rsp,%rcx
140e59be9:	e8 12 19 fc ff       	call   0x140e1b500
140e59bee:	48 83 c4 78          	add    $0x78,%rsp
140e59bf2:	41 5f                	pop    %r15
140e59bf4:	41 5e                	pop    %r14
140e59bf6:	41 5d                	pop    %r13
140e59bf8:	41 5c                	pop    %r12
140e59bfa:	5f                   	pop    %rdi
140e59bfb:	5e                   	pop    %rsi
140e59bfc:	5b                   	pop    %rbx
140e59bfd:	5d                   	pop    %rbp
140e59bfe:	c3                   	ret
140e59bff:	45 33 c9             	xor    %r9d,%r9d
140e59c02:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
140e59c07:	45 33 c0             	xor    %r8d,%r8d
140e59c0a:	33 d2                	xor    %edx,%edx
140e59c0c:	33 c9                	xor    %ecx,%ecx
140e59c0e:	e8 c1 05 fd ff       	call   0x140e2a1d4
140e59c13:	cc                   	int3
140e59c14:	45 33 c9             	xor    %r9d,%r9d
140e59c17:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
140e59c1c:	45 33 c0             	xor    %r8d,%r8d
140e59c1f:	33 d2                	xor    %edx,%edx
140e59c21:	33 c9                	xor    %ecx,%ecx
140e59c23:	e8 ac 05 fd ff       	call   0x140e2a1d4
140e59c28:	cc                   	int3
140e59c29:	cc                   	int3
140e59c2a:	cc                   	int3
140e59c2b:	cc                   	int3
140e59c2c:	e9 9f fc ff ff       	jmp    0x140e598d0
140e59c31:	cc                   	int3
140e59c32:	cc                   	int3
140e59c33:	cc                   	int3
140e59c34:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140e59c39:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
140e59c3e:	55                   	push   %rbp
140e59c3f:	48 8b ec             	mov    %rsp,%rbp
140e59c42:	48 83 ec 70          	sub    $0x70,%rsp
140e59c46:	8b da                	mov    %edx,%ebx
140e59c48:	48 8b f9             	mov    %rcx,%rdi
140e59c4b:	48 85 c9             	test   %rcx,%rcx
140e59c4e:	75 0a                	jne    0x140e59c5a
140e59c50:	e8 67 7c fd ff       	call   0x140e318bc
140e59c55:	e9 b7 00 00 00       	jmp    0x140e59d11
140e59c5a:	48 83 65 d0 00       	andq   $0x0,-0x30(%rbp)
140e59c5f:	48 8d 4d b0          	lea    -0x50(%rbp),%rcx
140e59c63:	48 83 65 d8 00       	andq   $0x0,-0x28(%rbp)
140e59c68:	33 d2                	xor    %edx,%edx
140e59c6a:	48 83 65 e0 00       	andq   $0x0,-0x20(%rbp)
140e59c6f:	48 83 65 e8 00       	andq   $0x0,-0x18(%rbp)
140e59c74:	48 83 65 f0 00       	andq   $0x0,-0x10(%rbp)
140e59c79:	c6 45 f8 00          	movb   $0x0,-0x8(%rbp)
140e59c7d:	e8 e2 84 fd ff       	call   0x140e32164
140e59c82:	48 8b 45 b8          	mov    -0x48(%rbp),%rax
140e59c86:	41 b9 e9 fd 00 00    	mov    $0xfde9,%r9d
140e59c8c:	44 39 48 0c          	cmp    %r9d,0xc(%rax)
140e59c90:	75 13                	jne    0x140e59ca5
140e59c92:	80 7d c8 00          	cmpb   $0x0,-0x38(%rbp)
140e59c96:	74 42                	je     0x140e59cda
140e59c98:	48 8b 45 b0          	mov    -0x50(%rbp),%rax
140e59c9c:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
140e59ca3:	eb 35                	jmp    0x140e59cda
140e59ca5:	e8 76 d4 ff ff       	call   0x140e57120
140e59caa:	85 c0                	test   %eax,%eax
140e59cac:	75 18                	jne    0x140e59cc6
140e59cae:	38 45 c8             	cmp    %al,-0x38(%rbp)
140e59cb1:	74 0b                	je     0x140e59cbe
140e59cb3:	48 8b 45 b0          	mov    -0x50(%rbp),%rax
140e59cb7:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
140e59cbe:	41 b9 01 00 00 00    	mov    $0x1,%r9d
140e59cc4:	eb 14                	jmp    0x140e59cda
140e59cc6:	80 7d c8 00          	cmpb   $0x0,-0x38(%rbp)
140e59cca:	74 0b                	je     0x140e59cd7
140e59ccc:	48 8b 45 b0          	mov    -0x50(%rbp),%rax
140e59cd0:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
140e59cd7:	45 33 c9             	xor    %r9d,%r9d
140e59cda:	4c 8d 45 10          	lea    0x10(%rbp),%r8
140e59cde:	48 8b cf             	mov    %rdi,%rcx
140e59ce1:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
140e59ce5:	e8 22 7d fd ff       	call   0x140e31a0c
140e59cea:	85 c0                	test   %eax,%eax
140e59cec:	74 05                	je     0x140e59cf3
140e59cee:	83 cb ff             	or     $0xffffffff,%ebx
140e59cf1:	eb 0d                	jmp    0x140e59d00
140e59cf3:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
140e59cf7:	8b d3                	mov    %ebx,%edx
140e59cf9:	e8 be 7b fd ff       	call   0x140e318bc
140e59cfe:	8b d8                	mov    %eax,%ebx
140e59d00:	80 7d f8 00          	cmpb   $0x0,-0x8(%rbp)
140e59d04:	74 09                	je     0x140e59d0f
140e59d06:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
140e59d0a:	e8 65 9f ff ff       	call   0x140e53c74
140e59d0f:	8b c3                	mov    %ebx,%eax
140e59d11:	4c 8d 5c 24 70       	lea    0x70(%rsp),%r11
140e59d16:	49 8b 5b 18          	mov    0x18(%r11),%rbx
140e59d1a:	49 8b 7b 20          	mov    0x20(%r11),%rdi
140e59d1e:	49 8b e3             	mov    %r11,%rsp
140e59d21:	5d                   	pop    %rbp
140e59d22:	c3                   	ret
140e59d23:	cc                   	int3
140e59d24:	48 83 ec 28          	sub    $0x28,%rsp
140e59d28:	ff 15 32 9a 12 00    	call   *0x129a32(%rip)        # 0x140f83760
140e59d2e:	85 c0                	test   %eax,%eax
140e59d30:	75 12                	jne    0x140e59d44
140e59d32:	ff 15 30 95 12 00    	call   *0x129530(%rip)        # 0x140f83268
140e59d38:	8b c8                	mov    %eax,%ecx
140e59d3a:	e8 25 05 fd ff       	call   0x140e2a264
140e59d3f:	83 c8 ff             	or     $0xffffffff,%eax
140e59d42:	eb 02                	jmp    0x140e59d46
140e59d44:	33 c0                	xor    %eax,%eax
140e59d46:	48 83 c4 28          	add    $0x28,%rsp
140e59d4a:	c3                   	ret
140e59d4b:	cc                   	int3
140e59d4c:	cc                   	int3
140e59d4d:	cc                   	int3
140e59d4e:	cc                   	int3
140e59d4f:	cc                   	int3
140e59d50:	48 83 ec 18          	sub    $0x18,%rsp
140e59d54:	4c 8d 0d 55 0a 39 00 	lea    0x390a55(%rip),%r9        # 0x1411ea7b0
140e59d5b:	66 49 0f 7e c3       	movq   %xmm0,%r11
140e59d60:	49 8b cb             	mov    %r11,%rcx
140e59d63:	49 c1 eb 34          	shr    $0x34,%r11
140e59d67:	49 81 eb ff 03 00 00 	sub    $0x3ff,%r11
140e59d6e:	4d 8b d3             	mov    %r11,%r10
140e59d71:	49 c1 ea 03          	shr    $0x3,%r10
140e59d75:	49 81 ea 86 00 00 00 	sub    $0x86,%r10
140e59d7c:	49 f7 da             	neg    %r10
140e59d7f:	4b 8b 04 11          	mov    (%r9,%r10,1),%rax
140e59d83:	48 c1 e1 0c          	shl    $0xc,%rcx
140e59d87:	48 c1 e9 0c          	shr    $0xc,%rcx
140e59d8b:	48 0f ba e9 34       	bts    $0x34,%rcx
140e59d90:	49 83 c2 08          	add    $0x8,%r10
140e59d94:	f3 43 0f 6f 04 11    	movdqu (%r9,%r10,1),%xmm0
140e59d9a:	48 f7 e1             	mul    %rcx
140e59d9d:	4c 8b c0             	mov    %rax,%r8
140e59da0:	4c 8b d2             	mov    %rdx,%r10
140e59da3:	66 48 0f 7e c0       	movq   %xmm0,%rax
140e59da8:	48 f7 e1             	mul    %rcx
140e59dab:	49 83 e3 07          	and    $0x7,%r11
140e59daf:	66 0f 73 d8 08       	psrldq $0x8,%xmm0
140e59db4:	49 03 c2             	add    %r10,%rax
140e59db7:	48 83 d2 00          	adc    $0x0,%rdx
140e59dbb:	4c 8b c8             	mov    %rax,%r9
140e59dbe:	4c 8b d2             	mov    %rdx,%r10
140e59dc1:	66 48 0f 7e c0       	movq   %xmm0,%rax
140e59dc6:	48 f7 e1             	mul    %rcx
140e59dc9:	4c 03 d0             	add    %rax,%r10
140e59dcc:	48 c7 c1 36 00 00 00 	mov    $0x36,%rcx
140e59dd3:	49 8b c2             	mov    %r10,%rax
140e59dd6:	49 2b cb             	sub    %r11,%rcx
140e59dd9:	48 33 d2             	xor    %rdx,%rdx
140e59ddc:	48 d3 e8             	shr    %cl,%rax
140e59ddf:	73 1f                	jae    0x140e59e00
140e59de1:	49 f7 d2             	not    %r10
140e59de4:	49 f7 d1             	not    %r9
140e59de7:	49 f7 d0             	not    %r8
140e59dea:	48 ba 00 00 00 00 00 	movabs $0x8000000000000000,%rdx
140e59df1:	00 00 80
140e59df4:	66 66 66 66 0f 1f 84 	data16 data16 data16 nopw 0x0(%rax,%rax,1)
140e59dfb:	00 00 00 00 00
140e59e00:	48 83 d0 00          	adc    $0x0,%rax
140e59e04:	48 83 e0 03          	and    $0x3,%rax
140e59e08:	48 89 04 24          	mov    %rax,(%rsp)
140e59e0c:	49 8b cb             	mov    %r11,%rcx
140e59e0f:	48 83 c1 0a          	add    $0xa,%rcx
140e59e13:	49 d3 e2             	shl    %cl,%r10
140e59e16:	49 d3 ea             	shr    %cl,%r10
140e59e19:	48 83 e9 40          	sub    $0x40,%rcx
140e59e1d:	4c 8b d9             	mov    %rcx,%r11
140e59e20:	49 0f bd ca          	bsr    %r10,%rcx
140e59e24:	75 1a                	jne    0x140e59e40
140e59e26:	4d 8b d1             	mov    %r9,%r10
140e59e29:	4d 8b c8             	mov    %r8,%r9
140e59e2c:	49 c7 c0 00 00 00 00 	mov    $0x0,%r8
140e59e33:	49 0f bd ca          	bsr    %r10,%rcx
140e59e37:	49 83 eb 40          	sub    $0x40,%r11
140e59e3b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140e59e40:	4c 03 d9             	add    %rcx,%r11
140e59e43:	48 83 e9 34          	sub    $0x34,%rcx
140e59e47:	48 83 f9 00          	cmp    $0x0,%rcx
140e59e4b:	7c 23                	jl     0x140e59e70
140e59e4d:	74 41                	je     0x140e59e90
140e59e4f:	4d 8b c2             	mov    %r10,%r8
140e59e52:	49 d3 ea             	shr    %cl,%r10
140e59e55:	49 d3 e9             	shr    %cl,%r9
140e59e58:	48 83 e9 40          	sub    $0x40,%rcx
140e59e5c:	48 f7 d9             	neg    %rcx
140e59e5f:	49 d3 e0             	shl    %cl,%r8
140e59e62:	4d 0b c8             	or     %r8,%r9
140e59e65:	eb 29                	jmp    0x140e59e90
140e59e67:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140e59e6e:	00 00
140e59e70:	48 f7 d9             	neg    %rcx
140e59e73:	49 8b c1             	mov    %r9,%rax
140e59e76:	49 d3 e2             	shl    %cl,%r10
140e59e79:	49 d3 e1             	shl    %cl,%r9
140e59e7c:	48 83 e9 40          	sub    $0x40,%rcx
140e59e80:	48 f7 d9             	neg    %rcx
140e59e83:	48 d3 e8             	shr    %cl,%rax
140e59e86:	4c 0b d0             	or     %rax,%r10
140e59e89:	49 d3 e8             	shr    %cl,%r8
140e59e8c:	4d 0b c8             	or     %r8,%r9
140e59e8f:	90                   	nop
140e59e90:	49 81 c3 ff 03 00 00 	add    $0x3ff,%r11
140e59e97:	49 0f ba f2 34       	btr    $0x34,%r10
140e59e9c:	49 8b cb             	mov    %r11,%rcx
140e59e9f:	4c 0b d2             	or     %rdx,%r10
140e59ea2:	48 c1 e1 34          	shl    $0x34,%rcx
140e59ea6:	4c 0b d1             	or     %rcx,%r10
140e59ea9:	66 49 0f 6e c2       	movq   %r10,%xmm0
140e59eae:	66 0f 6f c8          	movdqa %xmm0,%xmm1
140e59eb2:	66 0f 73 d1 1b       	psrlq  $0x1b,%xmm1
140e59eb7:	66 0f 73 f1 1b       	psllq  $0x1b,%xmm1