140739a10:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140739a15:	e8 26 a6 f7 ff       	call   0x1406b4040
140739a1a:	4c 8b 7c 24 50       	mov    0x50(%rsp),%r15
140739a1f:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
140739a24:	4c 8b 6d af          	mov    -0x51(%rbp),%r13
140739a28:	49 83 7d 50 00       	cmpq   $0x0,0x50(%r13)
140739a2d:	74 0a                	je     0x140739a39
140739a2f:	48 83 c3 38          	add    $0x38,%rbx
140739a33:	48 89 5d a7          	mov    %rbx,-0x59(%rbp)
140739a37:	eb 1c                	jmp    0x140739a55
140739a39:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
140739a3e:	b9 ff ff 00 00       	mov    $0xffff,%ecx
140739a43:	48 83 c6 20          	add    $0x20,%rsi
140739a47:	48 3b f0             	cmp    %rax,%rsi
140739a4a:	74 05                	je     0x140739a51
140739a4c:	66 39 0e             	cmp    %cx,(%rsi)
140739a4f:	74 f2                	je     0x140739a43
140739a51:	48 89 75 97          	mov    %rsi,-0x69(%rbp)
140739a55:	48 8d 4d c7          	lea    -0x39(%rbp),%rcx
140739a59:	e8 42 9e 0e 00       	call   0x1408238a0
140739a5e:	90                   	nop
140739a5f:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
140739a64:	48 85 c9             	test   %rcx,%rcx
140739a67:	74 24                	je     0x140739a8d
140739a69:	8b 41 10             	mov    0x10(%rcx),%eax
140739a6c:	ff c8                	dec    %eax
140739a6e:	89 41 10             	mov    %eax,0x10(%rcx)
140739a71:	85 c0                	test   %eax,%eax
140739a73:	7f 18                	jg     0x140739a8d
140739a75:	0f 88 23 02 00 00    	js     0x140739c9e
140739a7b:	48 8b 01             	mov    (%rcx),%rax
140739a7e:	ba 01 00 00 00       	mov    $0x1,%edx
140739a83:	48 8b 00             	mov    (%rax),%rax
140739a86:	ff 15 94 9f 84 00    	call   *0x849f94(%rip)        # 0x140f83a20
140739a8c:	90                   	nop
140739a8d:	48 8b 7d 87          	mov    -0x79(%rbp),%rdi
140739a91:	48 85 ff             	test   %rdi,%rdi
140739a94:	74 15                	je     0x140739aab
140739a96:	48 8b cf             	mov    %rdi,%rcx
140739a99:	e8 f2 80 06 00       	call   0x1407a1b90
140739a9e:	ba 38 00 00 00       	mov    $0x38,%edx
140739aa3:	48 8b cf             	mov    %rdi,%rcx
140739aa6:	e8 99 16 6e 00       	call   0x140e1b144
140739aab:	8b 4d 77             	mov    0x77(%rbp),%ecx
140739aae:	ff c1                	inc    %ecx
140739ab0:	89 4d 77             	mov    %ecx,0x77(%rbp)
140739ab3:	4c 8b 65 67          	mov    0x67(%rbp),%r12
140739ab7:	41 ba ff ff 00 00    	mov    $0xffff,%r10d
140739abd:	3b 4d 7f             	cmp    0x7f(%rbp),%ecx
140739ac0:	0f 8c fa fa ff ff    	jl     0x1407395c0
140739ac6:	44 0f b6 4d 6f       	movzbl 0x6f(%rbp),%r9d
140739acb:	4d 8b 84 24 a8 00 00 	mov    0xa8(%r12),%r8
140739ad2:	00
140739ad3:	49 8b 40 50          	mov    0x50(%r8),%rax
140739ad7:	48 85 c0             	test   %rax,%rax
140739ada:	74 08                	je     0x140739ae4
140739adc:	48 8b 40 08          	mov    0x8(%rax),%rax
140739ae0:	33 c9                	xor    %ecx,%ecx
140739ae2:	eb 3f                	jmp    0x140739b23
140739ae4:	49 8b 40 40          	mov    0x40(%r8),%rax
140739ae8:	48 8b c8             	mov    %rax,%rcx
140739aeb:	48 85 c0             	test   %rax,%rax
140739aee:	74 11                	je     0x140739b01
140739af0:	49 63 48 04          	movslq 0x4(%r8),%rcx
140739af4:	48 c1 e1 05          	shl    $0x5,%rcx
140739af8:	48 03 c8             	add    %rax,%rcx
140739afb:	41 8b 50 04          	mov    0x4(%r8),%edx
140739aff:	eb 02                	jmp    0x140739b03
140739b01:	33 d2                	xor    %edx,%edx
140739b03:	48 63 d2             	movslq %edx,%rdx
140739b06:	48 c1 e2 05          	shl    $0x5,%rdx
140739b0a:	48 03 d0             	add    %rax,%rdx
140739b0d:	33 c0                	xor    %eax,%eax
140739b0f:	48 3b ca             	cmp    %rdx,%rcx
140739b12:	74 0f                	je     0x140739b23
140739b14:	66 44 39 11          	cmp    %r10w,(%rcx)
140739b18:	75 09                	jne    0x140739b23
140739b1a:	48 83 c1 20          	add    $0x20,%rcx
140739b1e:	48 3b ca             	cmp    %rdx,%rcx
140739b21:	75 f1                	jne    0x140739b14
140739b23:	41 0f b7 50 0c       	movzwl 0xc(%r8),%edx
140739b28:	66 ff c2             	inc    %dx
140739b2b:	66 41 89 50 0c       	mov    %dx,0xc(%r8)
140739b30:	4d 3b e8             	cmp    %r8,%r13
140739b33:	0f 85 49 01 00 00    	jne    0x140739c82
140739b39:	49 83 7d 50 00       	cmpq   $0x0,0x50(%r13)
140739b3e:	74 05                	je     0x140739b45
140739b40:	48 3b d8             	cmp    %rax,%rbx
140739b43:	eb 03                	jmp    0x140739b48
140739b45:	48 3b f1             	cmp    %rcx,%rsi
140739b48:	0f 95 c0             	setne  %al
140739b4b:	66 ff ca             	dec    %dx
140739b4e:	66 41 89 50 0c       	mov    %dx,0xc(%r8)
140739b53:	84 c0                	test   %al,%al
140739b55:	0f 85 2f 01 00 00    	jne    0x140739c8a
140739b5b:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
140739b60:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140739b65:	45 84 c9             	test   %r9b,%r9b
140739b68:	0f 84 84 00 00 00    	je     0x140739bf2
140739b6e:	4c 8b c6             	mov    %rsi,%r8
140739b71:	4c 2b c7             	sub    %rdi,%r8
140739b74:	49 c1 f8 05          	sar    $0x5,%r8
140739b78:	45 33 c9             	xor    %r9d,%r9d
140739b7b:	48 8b d6             	mov    %rsi,%rdx
140739b7e:	48 8b cf             	mov    %rdi,%rcx
140739b81:	e8 0a 5b ff ff       	call   0x14072f690
140739b86:	32 c0                	xor    %al,%al
140739b88:	48 8b df             	mov    %rdi,%rbx
140739b8b:	48 3b fe             	cmp    %rsi,%rdi
140739b8e:	74 62                	je     0x140739bf2
140739b90:	84 c0                	test   %al,%al
140739b92:	74 3a                	je     0x140739bce
140739b94:	41 83 3e 01          	cmpl   $0x1,(%r14)
140739b98:	74 34                	je     0x140739bce
140739b9a:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140739ba0:	48 8d 15 81 9b 87 00 	lea    0x879b81(%rip),%rdx        # 0x140fb3728
140739ba7:	49 8b ce             	mov    %r14,%rcx
140739baa:	e8 e1 a3 0e 00       	call   0x140823f90
140739baf:	41 83 3e 01          	cmpl   $0x1,(%r14)
140739bb3:	74 19                	je     0x140739bce
140739bb5:	41 80 7e 1a 00       	cmpb   $0x0,0x1a(%r14)
140739bba:	75 12                	jne    0x140739bce
140739bbc:	45 33 c0             	xor    %r8d,%r8d
140739bbf:	48 8d 15 a6 cc 87 00 	lea    0x87cca6(%rip),%rdx        # 0x140fb686c
140739bc6:	49 8b ce             	mov    %r14,%rcx
140739bc9:	e8 c2 a3 0e 00       	call   0x140823f90
140739bce:	48 8b d3             	mov    %rbx,%rdx
140739bd1:	48 83 7b 18 0f       	cmpq   $0xf,0x18(%rbx)
140739bd6:	76 03                	jbe    0x140739bdb
140739bd8:	48 8b 13             	mov    (%rbx),%rdx
140739bdb:	44 8b 43 10          	mov    0x10(%rbx),%r8d
140739bdf:	49 8b ce             	mov    %r14,%rcx
140739be2:	e8 79 a7 0e 00       	call   0x140824360
140739be7:	b0 01                	mov    $0x1,%al
140739be9:	48 83 c3 20          	add    $0x20,%rbx
140739bed:	48 3b de             	cmp    %rsi,%rbx
140739bf0:	75 9e                	jne    0x140739b90
140739bf2:	41 83 3e 00          	cmpl   $0x0,(%r14)
140739bf6:	75 1e                	jne    0x140739c16
140739bf8:	49 8b ce             	mov    %r14,%rcx
140739bfb:	e8 70 ae 0e 00       	call   0x140824a70
140739c00:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140739c06:	48 8d 15 9b b5 87 00 	lea    0x87b59b(%rip),%rdx        # 0x140fb51a8
140739c0d:	49 8b ce             	mov    %r14,%rcx
140739c10:	e8 7b a3 0e 00       	call   0x140823f90
140739c15:	90                   	nop
140739c16:	b9 ff ff 00 00       	mov    $0xffff,%ecx
140739c1b:	66 41 01 4d 0c       	add    %cx,0xc(%r13)
140739c20:	48 85 ff             	test   %rdi,%rdi
140739c23:	74 43                	je     0x140739c68
140739c25:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
140739c2a:	48 8b d6             	mov    %rsi,%rdx
140739c2d:	48 8b cf             	mov    %rdi,%rcx
140739c30:	e8 1b d6 a5 ff       	call   0x140197250
140739c35:	4c 2b ff             	sub    %rdi,%r15
140739c38:	49 83 e7 e0          	and    $0xffffffffffffffe0,%r15
140739c3c:	48 8b c7             	mov    %rdi,%rax
140739c3f:	49 81 ff 00 10 00 00 	cmp    $0x1000,%r15
140739c46:	72 15                	jb     0x140739c5d
140739c48:	49 83 c7 27          	add    $0x27,%r15
140739c4c:	48 8b 7f f8          	mov    -0x8(%rdi),%rdi
140739c50:	48 2b c7             	sub    %rdi,%rax
140739c53:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140739c57:	48 83 f8 1f          	cmp    $0x1f,%rax
140739c5b:	77 1f                	ja     0x140739c7c
140739c5d:	49 8b d7             	mov    %r15,%rdx
140739c60:	48 8b cf             	mov    %rdi,%rcx
140739c63:	e8 dc 14 6e 00       	call   0x140e1b144
140739c68:	48 81 c4 f8 00 00 00 	add    $0xf8,%rsp
140739c6f:	41 5f                	pop    %r15
140739c71:	41 5e                	pop    %r14
140739c73:	41 5d                	pop    %r13
140739c75:	41 5c                	pop    %r12
140739c77:	5f                   	pop    %rdi
140739c78:	5e                   	pop    %rsi
140739c79:	5b                   	pop    %rbx
140739c7a:	5d                   	pop    %rbp
140739c7b:	c3                   	ret
140739c7c:	e8 23 05 6f 00       	call   0x140e2a1a4
140739c81:	90                   	nop
140739c82:	66 ff ca             	dec    %dx
140739c85:	66 41 89 50 0c       	mov    %dx,0xc(%r8)
140739c8a:	48 8d 15 a7 9f 8e 00 	lea    0x8e9fa7(%rip),%rdx        # 0x141023c38
140739c91:	48 8b 0d 60 78 cf 00 	mov    0xcf7860(%rip),%rcx        # 0x1414314f8
140739c98:	e8 73 9f 05 00       	call   0x140793c10
140739c9d:	90                   	nop
140739c9e:	b9 02 00 00 00       	mov    $0x2,%ecx
140739ca3:	e8 58 0a 05 00       	call   0x14078a700
140739ca8:	90                   	nop
140739ca9:	48 8d 15 50 9f 8e 00 	lea    0x8e9f50(%rip),%rdx        # 0x141023c00
140739cb0:	48 8b 0d 41 78 cf 00 	mov    0xcf7841(%rip),%rcx        # 0x1414314f8
140739cb7:	e8 54 9f 05 00       	call   0x140793c10
140739cbc:	cc                   	int3
140739cbd:	cc                   	int3
140739cbe:	cc                   	int3
140739cbf:	cc                   	int3
140739cc0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140739cc5:	57                   	push   %rdi
140739cc6:	48 83 ec 20          	sub    $0x20,%rsp
140739cca:	83 3a 01             	cmpl   $0x1,(%rdx)
140739ccd:	48 8b da             	mov    %rdx,%rbx
140739cd0:	48 8b f9             	mov    %rcx,%rdi
140739cd3:	75 28                	jne    0x140739cfd
140739cd5:	48 8b 49 18          	mov    0x18(%rcx),%rcx
140739cd9:	48 8b 01             	mov    (%rcx),%rax
140739cdc:	48 8b 40 08          	mov    0x8(%rax),%rax
140739ce0:	ff 15 3a 9d 84 00    	call   *0x849d3a(%rip)        # 0x140f83a20
140739ce6:	83 3b 01             	cmpl   $0x1,(%rbx)
140739ce9:	74 12                	je     0x140739cfd
140739ceb:	45 33 c0             	xor    %r8d,%r8d
140739cee:	48 8d 15 4f e2 89 00 	lea    0x89e24f(%rip),%rdx        # 0x140fd7f44
140739cf5:	48 8b cb             	mov    %rbx,%rcx
140739cf8:	e8 93 a2 0e 00       	call   0x140823f90
140739cfd:	48 8b 07             	mov    (%rdi),%rax
140739d00:	48 8b d3             	mov    %rbx,%rdx
140739d03:	48 8b cf             	mov    %rdi,%rcx
140739d06:	48 8b 40 58          	mov    0x58(%rax),%rax
140739d0a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140739d0f:	48 83 c4 20          	add    $0x20,%rsp
140739d13:	5f                   	pop    %rdi
140739d14:	48 ff 25 05 9d 84 00 	rex.W jmp *0x849d05(%rip)        # 0x140f83a20
140739d1b:	cc                   	int3
140739d1c:	cc                   	int3
140739d1d:	cc                   	int3
140739d1e:	cc                   	int3
140739d1f:	cc                   	int3
140739d20:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140739d25:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140739d2a:	56                   	push   %rsi
140739d2b:	57                   	push   %rdi
140739d2c:	41 56                	push   %r14
140739d2e:	48 83 ec 20          	sub    $0x20,%rsp
140739d32:	48 8b da             	mov    %rdx,%rbx
140739d35:	48 8b e9             	mov    %rcx,%rbp
140739d38:	48 8b 41 40          	mov    0x40(%rcx),%rax
140739d3c:	48 8b 70 08          	mov    0x8(%rax),%rsi
140739d40:	48 2b 30             	sub    (%rax),%rsi
140739d43:	48 c1 fe 04          	sar    $0x4,%rsi
140739d47:	48 8b 49 18          	mov    0x18(%rcx),%rcx
140739d4b:	e8 f0 07 01 00       	call   0x14074a540
140739d50:	4c 8b f0             	mov    %rax,%r14
140739d53:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140739d59:	48 8d 15 c4 b3 87 00 	lea    0x87b3c4(%rip),%rdx        # 0x140fb5124
140739d60:	48 8b cb             	mov    %rbx,%rcx
140739d63:	e8 28 a2 0e 00       	call   0x140823f90
140739d68:	48 8b cb             	mov    %rbx,%rcx
140739d6b:	e8 30 ae 0e 00       	call   0x140824ba0
140739d70:	33 ff                	xor    %edi,%edi
140739d72:	48 85 f6             	test   %rsi,%rsi
140739d75:	0f 84 fb 00 00 00    	je     0x140739e76
140739d7b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140739d80:	48 85 ff             	test   %rdi,%rdi
140739d83:	74 1d                	je     0x140739da2
140739d85:	83 3b 01             	cmpl   $0x1,(%rbx)
140739d88:	74 18                	je     0x140739da2
140739d8a:	80 7b 1a 00          	cmpb   $0x0,0x1a(%rbx)
140739d8e:	75 12                	jne    0x140739da2
140739d90:	45 33 c0             	xor    %r8d,%r8d
140739d93:	48 8d 15 d2 ca 87 00 	lea    0x87cad2(%rip),%rdx        # 0x140fb686c
140739d9a:	48 8b cb             	mov    %rbx,%rcx
140739d9d:	e8 ee a1 0e 00       	call   0x140823f90
140739da2:	8b d7                	mov    %edi,%edx
140739da4:	49 8b ce             	mov    %r14,%rcx
140739da7:	e8 94 3e 01 00       	call   0x14074dc40
140739dac:	48 8b d0             	mov    %rax,%rdx
140739daf:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140739db5:	48 8b cb             	mov    %rbx,%rcx
140739db8:	e8 d3 a1 0e 00       	call   0x140823f90
140739dbd:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140739dc3:	48 8d 15 9e c2 87 00 	lea    0x87c29e(%rip),%rdx        # 0x140fb6068
140739dca:	48 8b cb             	mov    %rbx,%rcx
140739dcd:	e8 be a1 0e 00       	call   0x140823f90
140739dd2:	48 8b 45 40          	mov    0x40(%rbp),%rax
140739dd6:	4c 63 c7             	movslq %edi,%r8
140739dd9:	49 8b c8             	mov    %r8,%rcx
140739ddc:	48 c1 e1 04          	shl    $0x4,%rcx
140739de0:	48 03 08             	add    (%rax),%rcx
140739de3:	80 79 08 00          	cmpb   $0x0,0x8(%rcx)
140739de7:	75 09                	jne    0x140739df2
140739de9:	33 c9                	xor    %ecx,%ecx
140739deb:	48 89 4c 24 40       	mov    %rcx,0x40(%rsp)
140739df0:	eb 21                	jmp    0x140739e13
140739df2:	48 8b 45 38          	mov    0x38(%rbp),%rax
140739df6:	48 8b 90 80 00 00 00 	mov    0x80(%rax),%rdx
140739dfd:	48 8b 02             	mov    (%rdx),%rax
140739e00:	4e 8b 04 c0          	mov    (%rax,%r8,8),%r8
140739e04:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140739e09:	e8 c2 e2 fd ff       	call   0x1407180d0
140739e0e:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140739e13:	48 85 c9             	test   %rcx,%rcx
140739e16:	74 12                	je     0x140739e2a
140739e18:	48 8b 01             	mov    (%rcx),%rax
140739e1b:	48 8b d3             	mov    %rbx,%rdx
140739e1e:	48 8b 40 08          	mov    0x8(%rax),%rax
140739e22:	ff 15 f8 9b 84 00    	call   *0x849bf8(%rip)        # 0x140f83a20
140739e28:	eb 16                	jmp    0x140739e40
140739e2a:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140739e30:	48 8d 15 91 9e 8e 00 	lea    0x8e9e91(%rip),%rdx        # 0x141023cc8
140739e37:	48 8b cb             	mov    %rbx,%rcx
140739e3a:	e8 51 a1 0e 00       	call   0x140823f90
140739e3f:	90                   	nop
140739e40:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140739e45:	48 85 c9             	test   %rcx,%rcx
140739e48:	74 20                	je     0x140739e6a
140739e4a:	8b 41 10             	mov    0x10(%rcx),%eax
140739e4d:	ff c8                	dec    %eax
140739e4f:	89 41 10             	mov    %eax,0x10(%rcx)
140739e52:	85 c0                	test   %eax,%eax
140739e54:	7f 14                	jg     0x140739e6a
140739e56:	78 4d                	js     0x140739ea5
140739e58:	48 8b 01             	mov    (%rcx),%rax
140739e5b:	ba 01 00 00 00       	mov    $0x1,%edx
140739e60:	48 8b 00             	mov    (%rax),%rax
140739e63:	ff 15 b7 9b 84 00    	call   *0x849bb7(%rip)        # 0x140f83a20
140739e69:	90                   	nop
140739e6a:	48 ff c7             	inc    %rdi
140739e6d:	48 3b fe             	cmp    %rsi,%rdi
140739e70:	0f 82 0a ff ff ff    	jb     0x140739d80
140739e76:	48 8b cb             	mov    %rbx,%rcx
140739e79:	e8 f2 ab 0e 00       	call   0x140824a70
140739e7e:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140739e84:	48 8d 15 1d b3 87 00 	lea    0x87b31d(%rip),%rdx        # 0x140fb51a8
140739e8b:	48 8b cb             	mov    %rbx,%rcx
140739e8e:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140739e93:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140739e98:	48 83 c4 20          	add    $0x20,%rsp
140739e9c:	41 5e                	pop    %r14
140739e9e:	5f                   	pop    %rdi
140739e9f:	5e                   	pop    %rsi
140739ea0:	e9 eb a0 0e 00       	jmp    0x140823f90
140739ea5:	b9 02 00 00 00       	mov    $0x2,%ecx
140739eaa:	e8 51 08 05 00       	call   0x14078a700
140739eaf:	cc                   	int3
140739eb0:	45 84 c0             	test   %r8b,%r8b
140739eb3:	0f 85 b5 00 00 00    	jne    0x140739f6e
140739eb9:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140739ebe:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140739ec3:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
140739ec8:	41 56                	push   %r14
140739eca:	48 83 ec 20          	sub    $0x20,%rsp
140739ece:	48 8d 71 20          	lea    0x20(%rcx),%rsi
140739ed2:	48 8b 3e             	mov    (%rsi),%rdi
140739ed5:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
140739eda:	48 8b c6             	mov    %rsi,%rax
140739edd:	48 85 ff             	test   %rdi,%rdi
140739ee0:	74 20                	je     0x140739f02
140739ee2:	8b 47 10             	mov    0x10(%rdi),%eax
140739ee5:	ff c0                	inc    %eax
140739ee7:	89 47 10             	mov    %eax,0x10(%rdi)
140739eea:	83 f8 01             	cmp    $0x1,%eax