1401a1b32:	48 8d 40 ff          	lea    -0x1(%rax),%rax
1401a1b36:	48 c1 eb 08          	shr    $0x8,%rbx
1401a1b3a:	48 83 ef 01          	sub    $0x1,%rdi
1401a1b3e:	75 f0                	jne    0x1401a1b30
1401a1b40:	48 85 db             	test   %rbx,%rbx
1401a1b43:	75 15                	jne    0x1401a1b5a
1401a1b45:	b8 01 00 00 00       	mov    $0x1,%eax
1401a1b4a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1b4f:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401a1b54:	48 83 c4 20          	add    $0x20,%rsp
1401a1b58:	5f                   	pop    %rdi
1401a1b59:	c3                   	ret
1401a1b5a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1b5f:	33 c0                	xor    %eax,%eax
1401a1b61:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401a1b66:	48 83 c4 20          	add    $0x20,%rsp
1401a1b6a:	5f                   	pop    %rdi
1401a1b6b:	c3                   	ret
1401a1b6c:	cc                   	int3
1401a1b6d:	cc                   	int3
1401a1b6e:	cc                   	int3
1401a1b6f:	cc                   	int3
1401a1b70:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401a1b75:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1401a1b7a:	57                   	push   %rdi
1401a1b7b:	b8 20 00 00 00       	mov    $0x20,%eax
1401a1b80:	e8 ab ef 10 00       	call   0x1402b0b30
1401a1b85:	48 2b e0             	sub    %rax,%rsp
1401a1b88:	48 83 79 28 00       	cmpq   $0x0,0x28(%rcx)
1401a1b8d:	49 8b f0             	mov    %r8,%rsi
1401a1b90:	48 8b fa             	mov    %rdx,%rdi
1401a1b93:	48 8b d9             	mov    %rcx,%rbx
1401a1b96:	0f 84 d5 00 00 00    	je     0x1401a1c71
1401a1b9c:	48 85 d2             	test   %rdx,%rdx
1401a1b9f:	0f 84 cc 00 00 00    	je     0x1401a1c71
1401a1ba5:	48 8b 51 18          	mov    0x18(%rcx),%rdx
1401a1ba9:	48 8b 41 20          	mov    0x20(%rcx),%rax
1401a1bad:	48 2b c2             	sub    %rdx,%rax
1401a1bb0:	48 3b c7             	cmp    %rdi,%rax
1401a1bb3:	0f 82 b8 00 00 00    	jb     0x1401a1c71
1401a1bb9:	4c 8b 01             	mov    (%rcx),%r8
1401a1bbc:	4d 85 c0             	test   %r8,%r8
1401a1bbf:	74 4a                	je     0x1401a1c0b
1401a1bc1:	49 8b 08             	mov    (%r8),%rcx
1401a1bc4:	48 8b c1             	mov    %rcx,%rax
1401a1bc7:	48 2b c2             	sub    %rdx,%rax
1401a1bca:	48 3b c7             	cmp    %rdi,%rax
1401a1bcd:	73 3c                	jae    0x1401a1c0b
1401a1bcf:	48 3b f9             	cmp    %rcx,%rdi
1401a1bd2:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
1401a1bd9:	ff ff 7f
1401a1bdc:	48 0f 47 cf          	cmova  %rdi,%rcx
1401a1be0:	48 3b c8             	cmp    %rax,%rcx
1401a1be3:	76 09                	jbe    0x1401a1bee
1401a1be5:	48 c7 c2 ff ff ff ff 	mov    $0xffffffffffffffff,%rdx
1401a1bec:	eb 10                	jmp    0x1401a1bfe
1401a1bee:	48 8d 14 09          	lea    (%rcx,%rcx,1),%rdx
1401a1bf2:	b8 00 01 00 00       	mov    $0x100,%eax
1401a1bf7:	48 3b d0             	cmp    %rax,%rdx
1401a1bfa:	48 0f 42 d0          	cmovb  %rax,%rdx
1401a1bfe:	49 8b c8             	mov    %r8,%rcx
1401a1c01:	e8 7a 91 f8 ff       	call   0x14012ad80
1401a1c06:	48 85 c0             	test   %rax,%rax
1401a1c09:	74 66                	je     0x1401a1c71
1401a1c0b:	48 85 f6             	test   %rsi,%rsi
1401a1c0e:	74 4c                	je     0x1401a1c5c
1401a1c10:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1401a1c14:	48 85 c9             	test   %rcx,%rcx
1401a1c17:	75 11                	jne    0x1401a1c2a
1401a1c19:	48 8b 0b             	mov    (%rbx),%rcx
1401a1c1c:	48 85 c9             	test   %rcx,%rcx
1401a1c1f:	74 25                	je     0x1401a1c46
1401a1c21:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1401a1c25:	48 85 c9             	test   %rcx,%rcx
1401a1c28:	74 1c                	je     0x1401a1c46
1401a1c2a:	f6 43 30 01          	testb  $0x1,0x30(%rbx)
1401a1c2e:	74 0d                	je     0x1401a1c3d
1401a1c30:	48 8b 43 20          	mov    0x20(%rbx),%rax
1401a1c34:	48 2b 43 10          	sub    0x10(%rbx),%rax
1401a1c38:	48 03 c1             	add    %rcx,%rax
1401a1c3b:	eb 0b                	jmp    0x1401a1c48
1401a1c3d:	48 8b 43 10          	mov    0x10(%rbx),%rax
1401a1c41:	48 03 c1             	add    %rcx,%rax
1401a1c44:	eb 02                	jmp    0x1401a1c48
1401a1c46:	33 c0                	xor    %eax,%eax
1401a1c48:	48 89 06             	mov    %rax,(%rsi)
1401a1c4b:	f6 43 30 01          	testb  $0x1,0x30(%rbx)
1401a1c4f:	74 0b                	je     0x1401a1c5c
1401a1c51:	48 85 c0             	test   %rax,%rax
1401a1c54:	74 06                	je     0x1401a1c5c
1401a1c56:	48 2b c7             	sub    %rdi,%rax
1401a1c59:	48 89 06             	mov    %rax,(%rsi)
1401a1c5c:	b8 01 00 00 00       	mov    $0x1,%eax
1401a1c61:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1c66:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401a1c6b:	48 83 c4 20          	add    $0x20,%rsp
1401a1c6f:	5f                   	pop    %rdi
1401a1c70:	c3                   	ret
1401a1c71:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1c76:	33 c0                	xor    %eax,%eax
1401a1c78:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401a1c7d:	48 83 c4 20          	add    $0x20,%rsp
1401a1c81:	5f                   	pop    %rdi
1401a1c82:	c3                   	ret
1401a1c83:	cc                   	int3
1401a1c84:	cc                   	int3
1401a1c85:	cc                   	int3
1401a1c86:	cc                   	int3
1401a1c87:	cc                   	int3
1401a1c88:	cc                   	int3
1401a1c89:	cc                   	int3
1401a1c8a:	cc                   	int3
1401a1c8b:	cc                   	int3
1401a1c8c:	cc                   	int3
1401a1c8d:	cc                   	int3
1401a1c8e:	cc                   	int3
1401a1c8f:	cc                   	int3
1401a1c90:	48 8b 41 28          	mov    0x28(%rcx),%rax
1401a1c94:	48 85 c0             	test   %rax,%rax
1401a1c97:	75 01                	jne    0x1401a1c9a
1401a1c99:	c3                   	ret
1401a1c9a:	89 50 20             	mov    %edx,0x20(%rax)
1401a1c9d:	b8 01 00 00 00       	mov    $0x1,%eax
1401a1ca2:	c3                   	ret
1401a1ca3:	cc                   	int3
1401a1ca4:	cc                   	int3
1401a1ca5:	cc                   	int3
1401a1ca6:	cc                   	int3
1401a1ca7:	cc                   	int3
1401a1ca8:	cc                   	int3
1401a1ca9:	cc                   	int3
1401a1caa:	cc                   	int3
1401a1cab:	cc                   	int3
1401a1cac:	cc                   	int3
1401a1cad:	cc                   	int3
1401a1cae:	cc                   	int3
1401a1caf:	cc                   	int3
1401a1cb0:	40 53                	rex push %rbx
1401a1cb2:	b8 20 00 00 00       	mov    $0x20,%eax
1401a1cb7:	e8 74 ee 10 00       	call   0x1402b0b30
1401a1cbc:	48 2b e0             	sub    %rax,%rsp
1401a1cbf:	48 83 79 28 00       	cmpq   $0x0,0x28(%rcx)
1401a1cc4:	48 8b d9             	mov    %rcx,%rbx
1401a1cc7:	74 4b                	je     0x1401a1d14
1401a1cc9:	41 b8 62 01 00 00    	mov    $0x162,%r8d
1401a1ccf:	48 8d 15 42 33 18 00 	lea    0x183342(%rip),%rdx        # 0x140325018
1401a1cd6:	8d 48 08             	lea    0x8(%rax),%ecx
1401a1cd9:	e8 e2 a3 f4 ff       	call   0x1400ec0c0
1401a1cde:	48 8b d0             	mov    %rax,%rdx
1401a1ce1:	48 85 c0             	test   %rax,%rax
1401a1ce4:	75 36                	jne    0x1401a1d1c
1401a1ce6:	e8 85 53 f8 ff       	call   0x140127070
1401a1ceb:	4c 8d 05 4e 33 18 00 	lea    0x18334e(%rip),%r8        # 0x140325040
1401a1cf2:	ba 63 01 00 00       	mov    $0x163,%edx
1401a1cf7:	48 8d 0d 1a 33 18 00 	lea    0x18331a(%rip),%rcx        # 0x140325018
1401a1cfe:	e8 8d 54 f8 ff       	call   0x140127190
1401a1d03:	45 33 c0             	xor    %r8d,%r8d
1401a1d06:	ba 00 01 0c 00       	mov    $0xc0100,%edx
1401a1d0b:	41 8d 48 0f          	lea    0xf(%r8),%ecx
1401a1d0f:	e8 7c 55 f8 ff       	call   0x140127290
1401a1d14:	33 c0                	xor    %eax,%eax
1401a1d16:	48 83 c4 20          	add    $0x20,%rsp
1401a1d1a:	5b                   	pop    %rbx
1401a1d1b:	c3                   	ret
1401a1d1c:	48 8b 43 28          	mov    0x28(%rbx),%rax
1401a1d20:	48 89 02             	mov    %rax,(%rdx)
1401a1d23:	48 8b 43 18          	mov    0x18(%rbx),%rax
1401a1d27:	48 89 53 28          	mov    %rdx,0x28(%rbx)
1401a1d2b:	48 89 42 18          	mov    %rax,0x18(%rdx)
1401a1d2f:	b8 01 00 00 00       	mov    $0x1,%eax
1401a1d34:	48 c7 42 10 00 00 00 	movq   $0x0,0x10(%rdx)
1401a1d3b:	00
1401a1d3c:	48 c7 42 08 00 00 00 	movq   $0x0,0x8(%rdx)
1401a1d43:	00
1401a1d44:	48 83 c4 20          	add    $0x20,%rsp
1401a1d48:	5b                   	pop    %rbx
1401a1d49:	c3                   	ret
1401a1d4a:	cc                   	int3
1401a1d4b:	cc                   	int3
1401a1d4c:	cc                   	int3
1401a1d4d:	cc                   	int3
1401a1d4e:	cc                   	int3
1401a1d4f:	cc                   	int3
1401a1d50:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401a1d55:	57                   	push   %rdi
1401a1d56:	b8 20 00 00 00       	mov    $0x20,%eax
1401a1d5b:	e8 d0 ed 10 00       	call   0x1402b0b30
1401a1d60:	48 2b e0             	sub    %rax,%rsp
1401a1d63:	48 83 79 28 00       	cmpq   $0x0,0x28(%rcx)
1401a1d68:	48 8b fa             	mov    %rdx,%rdi
1401a1d6b:	48 8b d9             	mov    %rcx,%rbx
1401a1d6e:	74 58                	je     0x1401a1dc8
1401a1d70:	48 85 d2             	test   %rdx,%rdx
1401a1d73:	74 06                	je     0x1401a1d7b
1401a1d75:	f6 41 30 01          	testb  $0x1,0x30(%rcx)
1401a1d79:	75 4d                	jne    0x1401a1dc8
1401a1d7b:	41 b8 62 01 00 00    	mov    $0x162,%r8d
1401a1d81:	48 8d 15 90 32 18 00 	lea    0x183290(%rip),%rdx        # 0x140325018
1401a1d88:	b9 28 00 00 00       	mov    $0x28,%ecx
1401a1d8d:	e8 2e a3 f4 ff       	call   0x1400ec0c0
1401a1d92:	48 8b d0             	mov    %rax,%rdx
1401a1d95:	48 85 c0             	test   %rax,%rax
1401a1d98:	75 3b                	jne    0x1401a1dd5
1401a1d9a:	e8 d1 52 f8 ff       	call   0x140127070
1401a1d9f:	4c 8d 05 9a 32 18 00 	lea    0x18329a(%rip),%r8        # 0x140325040
1401a1da6:	ba 63 01 00 00       	mov    $0x163,%edx
1401a1dab:	48 8d 0d 66 32 18 00 	lea    0x183266(%rip),%rcx        # 0x140325018
1401a1db2:	e8 d9 53 f8 ff       	call   0x140127190
1401a1db7:	45 33 c0             	xor    %r8d,%r8d
1401a1dba:	ba 00 01 0c 00       	mov    $0xc0100,%edx
1401a1dbf:	41 8d 48 0f          	lea    0xf(%r8),%ecx
1401a1dc3:	e8 c8 54 f8 ff       	call   0x140127290
1401a1dc8:	33 c0                	xor    %eax,%eax
1401a1dca:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1401a1dcf:	48 83 c4 20          	add    $0x20,%rsp
1401a1dd3:	5f                   	pop    %rdi
1401a1dd4:	c3                   	ret
1401a1dd5:	48 8b 43 28          	mov    0x28(%rbx),%rax
1401a1dd9:	48 89 02             	mov    %rax,(%rdx)
1401a1ddc:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
1401a1de0:	48 03 cf             	add    %rdi,%rcx
1401a1de3:	48 89 53 28          	mov    %rdx,0x28(%rbx)
1401a1de7:	48 89 4a 18          	mov    %rcx,0x18(%rdx)
1401a1deb:	48 89 7a 10          	mov    %rdi,0x10(%rdx)
1401a1def:	48 85 ff             	test   %rdi,%rdi
1401a1df2:	75 12                	jne    0x1401a1e06
1401a1df4:	48 89 7a 08          	mov    %rdi,0x8(%rdx)
1401a1df8:	8d 47 01             	lea    0x1(%rdi),%eax
1401a1dfb:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1401a1e00:	48 83 c4 20          	add    $0x20,%rsp
1401a1e04:	5f                   	pop    %rdi
1401a1e05:	c3                   	ret
1401a1e06:	48 8b 43 18          	mov    0x18(%rbx),%rax
1401a1e0a:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
1401a1e0f:	48 89 42 08          	mov    %rax,0x8(%rdx)
1401a1e13:	48 8b cb             	mov    %rbx,%rcx
1401a1e16:	48 8b d7             	mov    %rdi,%rdx
1401a1e19:	e8 52 fd ff ff       	call   0x1401a1b70
1401a1e1e:	85 c0                	test   %eax,%eax
1401a1e20:	74 a6                	je     0x1401a1dc8
1401a1e22:	48 01 7b 18          	add    %rdi,0x18(%rbx)
1401a1e26:	b8 01 00 00 00       	mov    $0x1,%eax
1401a1e2b:	48 01 7b 10          	add    %rdi,0x10(%rbx)
1401a1e2f:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1401a1e34:	48 83 c4 20          	add    $0x20,%rsp
1401a1e38:	5f                   	pop    %rdi
1401a1e39:	c3                   	ret
1401a1e3a:	cc                   	int3
1401a1e3b:	cc                   	int3
1401a1e3c:	cc                   	int3
1401a1e3d:	cc                   	int3
1401a1e3e:	cc                   	int3
1401a1e3f:	cc                   	int3
1401a1e40:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401a1e45:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1401a1e4a:	57                   	push   %rdi
1401a1e4b:	b8 20 00 00 00       	mov    $0x20,%eax
1401a1e50:	e8 db ec 10 00       	call   0x1402b0b30
1401a1e55:	48 2b e0             	sub    %rax,%rsp
1401a1e58:	48 8b fa             	mov    %rdx,%rdi
1401a1e5b:	49 8b f0             	mov    %r8,%rsi
1401a1e5e:	49 8b d1             	mov    %r9,%rdx
1401a1e61:	48 8b d9             	mov    %rcx,%rbx
1401a1e64:	e8 e7 fe ff ff       	call   0x1401a1d50
1401a1e69:	85 c0                	test   %eax,%eax
1401a1e6b:	74 50                	je     0x1401a1ebd
1401a1e6d:	4c 8b c6             	mov    %rsi,%r8
1401a1e70:	48 8b d7             	mov    %rdi,%rdx
1401a1e73:	48 8b cb             	mov    %rbx,%rcx
1401a1e76:	e8 f5 fc ff ff       	call   0x1401a1b70
1401a1e7b:	85 c0                	test   %eax,%eax
1401a1e7d:	74 3e                	je     0x1401a1ebd
1401a1e7f:	48 01 7b 18          	add    %rdi,0x18(%rbx)
1401a1e83:	48 01 7b 10          	add    %rdi,0x10(%rbx)
1401a1e87:	48 8b 53 28          	mov    0x28(%rbx),%rdx
1401a1e8b:	48 85 d2             	test   %rdx,%rdx
1401a1e8e:	74 2d                	je     0x1401a1ebd
1401a1e90:	48 83 3a 00          	cmpq   $0x0,(%rdx)
1401a1e94:	74 27                	je     0x1401a1ebd
1401a1e96:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1401a1e9c:	48 8b cb             	mov    %rbx,%rcx
1401a1e9f:	e8 3c 01 00 00       	call   0x1401a1fe0
1401a1ea4:	85 c0                	test   %eax,%eax
1401a1ea6:	74 15                	je     0x1401a1ebd
1401a1ea8:	b8 01 00 00 00       	mov    $0x1,%eax
1401a1ead:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1eb2:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401a1eb7:	48 83 c4 20          	add    $0x20,%rsp
1401a1ebb:	5f                   	pop    %rdi
1401a1ebc:	c3                   	ret
1401a1ebd:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401a1ec2:	33 c0                	xor    %eax,%eax
1401a1ec4:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1401a1ec9:	48 83 c4 20          	add    $0x20,%rsp
1401a1ecd:	5f                   	pop    %rdi
1401a1ece:	c3                   	ret
1401a1ecf:	cc                   	int3
1401a1ed0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401a1ed5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1401a1eda:	57                   	push   %rdi
1401a1edb:	b8 30 00 00 00       	mov    $0x30,%eax
1401a1ee0:	e8 4b ec 10 00       	call   0x1402b0b30
1401a1ee5:	48 2b e0             	sub    %rax,%rsp
1401a1ee8:	48 8b f2             	mov    %rdx,%rsi
1401a1eeb:	49 8b f8             	mov    %r8,%rdi
1401a1eee:	49 8b d1             	mov    %r9,%rdx
1401a1ef1:	48 8b d9             	mov    %rcx,%rbx
1401a1ef4:	e8 57 fe ff ff       	call   0x1401a1d50
1401a1ef9:	85 c0                	test   %eax,%eax
1401a1efb:	74 6c                	je     0x1401a1f69
1401a1efd:	48 85 ff             	test   %rdi,%rdi
1401a1f00:	74 31                	je     0x1401a1f33
1401a1f02:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
1401a1f07:	48 8b d7             	mov    %rdi,%rdx
1401a1f0a:	48 8b cb             	mov    %rbx,%rcx
1401a1f0d:	e8 5e fc ff ff       	call   0x1401a1b70
1401a1f12:	85 c0                	test   %eax,%eax
1401a1f14:	74 53                	je     0x1401a1f69
1401a1f16:	48 01 7b 18          	add    %rdi,0x18(%rbx)
1401a1f1a:	48 01 7b 10          	add    %rdi,0x10(%rbx)
1401a1f1e:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
1401a1f23:	48 85 c9             	test   %rcx,%rcx
1401a1f26:	74 0b                	je     0x1401a1f33
1401a1f28:	4c 8b c7             	mov    %rdi,%r8
1401a1f2b:	48 8b d6             	mov    %rsi,%rdx
1401a1f2e:	e8 2d f4 13 00       	call   0x1402e1360
1401a1f33:	48 8b 53 28          	mov    0x28(%rbx),%rdx
1401a1f37:	48 85 d2             	test   %rdx,%rdx
1401a1f3a:	74 2d                	je     0x1401a1f69
1401a1f3c:	48 83 3a 00          	cmpq   $0x0,(%rdx)
1401a1f40:	74 27                	je     0x1401a1f69
1401a1f42:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1401a1f48:	48 8b cb             	mov    %rbx,%rcx
1401a1f4b:	e8 90 00 00 00       	call   0x1401a1fe0
1401a1f50:	85 c0                	test   %eax,%eax
1401a1f52:	74 15                	je     0x1401a1f69
1401a1f54:	b8 01 00 00 00       	mov    $0x1,%eax
1401a1f59:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1401a1f5e:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1401a1f63:	48 83 c4 30          	add    $0x30,%rsp
1401a1f67:	5f                   	pop    %rdi
1401a1f68:	c3                   	ret
1401a1f69:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1401a1f6e:	33 c0                	xor    %eax,%eax
1401a1f70:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1401a1f75:	48 83 c4 30          	add    $0x30,%rsp
1401a1f79:	5f                   	pop    %rdi
1401a1f7a:	c3                   	ret
1401a1f7b:	cc                   	int3
1401a1f7c:	cc                   	int3