14075292c:	4d 89 26             	mov    %r12,(%r14)
14075292f:	4d 85 e4             	test   %r12,%r12
140752932:	0f 84 eb fe ff ff    	je     0x140752823
140752938:	45 89 7e 08          	mov    %r15d,0x8(%r14)
14075293c:	e9 ea fe ff ff       	jmp    0x14075282b
140752941:	85 db                	test   %ebx,%ebx
140752943:	0f 89 b3 01 00 00    	jns    0x140752afc
140752949:	b9 40 00 00 00       	mov    $0x40,%ecx
14075294e:	e8 b5 87 6c 00       	call   0x140e1b108
140752953:	48 89 45 07          	mov    %rax,0x7(%rbp)
140752957:	48 85 c0             	test   %rax,%rax
14075295a:	74 1f                	je     0x14075297b
14075295c:	48 c7 45 7f 00 00 00 	movq   $0x0,0x7f(%rbp)
140752963:	00
140752964:	45 33 c9             	xor    %r9d,%r9d
140752967:	41 b0 01             	mov    $0x1,%r8b
14075296a:	48 8d 55 7f          	lea    0x7f(%rbp),%rdx
14075296e:	48 8b c8             	mov    %rax,%rcx
140752971:	e8 2a 26 0e 00       	call   0x140834fa0
140752976:	48 8b f8             	mov    %rax,%rdi
140752979:	eb 02                	jmp    0x14075297d
14075297b:	33 ff                	xor    %edi,%edi
14075297d:	48 89 7d ff          	mov    %rdi,-0x1(%rbp)
140752981:	49 8d 57 08          	lea    0x8(%r15),%rdx
140752985:	48 83 3a 00          	cmpq   $0x0,(%rdx)
140752989:	74 0b                	je     0x140752996
14075298b:	45 33 c0             	xor    %r8d,%r8d
14075298e:	48 8b cf             	mov    %rdi,%rcx
140752991:	e8 1a 31 0e 00       	call   0x140835ab0
140752996:	b9 28 00 00 00       	mov    $0x28,%ecx
14075299b:	e8 68 87 6c 00       	call   0x140e1b108
1407529a0:	48 89 45 d7          	mov    %rax,-0x29(%rbp)
1407529a4:	48 85 c0             	test   %rax,%rax
1407529a7:	74 0b                	je     0x1407529b4
1407529a9:	33 d2                	xor    %edx,%edx
1407529ab:	48 8b c8             	mov    %rax,%rcx
1407529ae:	e8 2d 24 0e 00       	call   0x140834de0
1407529b3:	90                   	nop
1407529b4:	48 89 45 af          	mov    %rax,-0x51(%rbp)
1407529b8:	45 33 c0             	xor    %r8d,%r8d
1407529bb:	48 8d 55 af          	lea    -0x51(%rbp),%rdx
1407529bf:	48 8b cf             	mov    %rdi,%rcx
1407529c2:	e8 e9 2c 0e 00       	call   0x1408356b0
1407529c7:	b9 18 00 00 00       	mov    $0x18,%ecx
1407529cc:	e8 37 87 6c 00       	call   0x140e1b108
1407529d1:	48 8b d8             	mov    %rax,%rbx
1407529d4:	48 89 45 cf          	mov    %rax,-0x31(%rbp)
1407529d8:	48 85 c0             	test   %rax,%rax
1407529db:	74 7f                	je     0x140752a5c
1407529dd:	48 8d 45 a7          	lea    -0x59(%rbp),%rax
1407529e1:	48 89 45 f7          	mov    %rax,-0x9(%rbp)
1407529e5:	48 89 7d a7          	mov    %rdi,-0x59(%rbp)
1407529e9:	48 85 ff             	test   %rdi,%rdi
1407529ec:	74 1c                	je     0x140752a0a
1407529ee:	8b 47 10             	mov    0x10(%rdi),%eax
1407529f1:	ff c0                	inc    %eax
1407529f3:	89 47 10             	mov    %eax,0x10(%rdi)
1407529f6:	83 f8 01             	cmp    $0x1,%eax
1407529f9:	0f 8e ea 01 00 00    	jle    0x140752be9
1407529ff:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140752a04:	0f 84 d4 01 00 00    	je     0x140752bde
140752a0a:	48 8d 45 9f          	lea    -0x61(%rbp),%rax
140752a0e:	48 89 45 bf          	mov    %rax,-0x41(%rbp)
140752a12:	49 8b 17             	mov    (%r15),%rdx
140752a15:	48 89 55 9f          	mov    %rdx,-0x61(%rbp)
140752a19:	48 85 d2             	test   %rdx,%rdx
140752a1c:	74 1c                	je     0x140752a3a
140752a1e:	8b 42 10             	mov    0x10(%rdx),%eax
140752a21:	ff c0                	inc    %eax
140752a23:	89 42 10             	mov    %eax,0x10(%rdx)
140752a26:	83 f8 01             	cmp    $0x1,%eax
140752a29:	0f 8e 34 01 00 00    	jle    0x140752b63
140752a2f:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140752a34:	0f 84 b7 01 00 00    	je     0x140752bf1
140752a3a:	49 8b 4f 10          	mov    0x10(%r15),%rcx
140752a3e:	e8 6d 31 11 00       	call   0x140865bb0
140752a43:	90                   	nop
140752a44:	4c 8d 4d a7          	lea    -0x59(%rbp),%r9
140752a48:	4c 8d 45 9f          	lea    -0x61(%rbp),%r8
140752a4c:	48 8b d0             	mov    %rax,%rdx
140752a4f:	48 8b cb             	mov    %rbx,%rcx
140752a52:	e8 a9 59 ff ff       	call   0x140748400
140752a57:	4c 8b e0             	mov    %rax,%r12
140752a5a:	eb 03                	jmp    0x140752a5f
140752a5c:	45 33 e4             	xor    %r12d,%r12d
140752a5f:	41 8b 4e 0c          	mov    0xc(%r14),%ecx
140752a63:	41 8b 46 08          	mov    0x8(%r14),%eax
140752a67:	3b c8                	cmp    %eax,%ecx
140752a69:	75 52                	jne    0x140752abd
140752a6b:	85 c0                	test   %eax,%eax
140752a6d:	8d 34 00             	lea    (%rax,%rax,1),%esi
140752a70:	75 05                	jne    0x140752a77
140752a72:	be 0a 00 00 00       	mov    $0xa,%esi
140752a77:	3b f1                	cmp    %ecx,%esi
140752a79:	7c 42                	jl     0x140752abd
140752a7b:	3b f0                	cmp    %eax,%esi
140752a7d:	74 3e                	je     0x140752abd
140752a7f:	48 63 de             	movslq %esi,%rbx
140752a82:	48 c1 e3 03          	shl    $0x3,%rbx
140752a86:	48 8b d3             	mov    %rbx,%rdx
140752a89:	49 8b 0e             	mov    (%r14),%rcx
140752a8c:	e8 17 e7 6d 00       	call   0x140e311a8
140752a91:	4c 8b f8             	mov    %rax,%r15
140752a94:	48 85 db             	test   %rbx,%rbx
140752a97:	0f 84 b1 00 00 00    	je     0x140752b4e
140752a9d:	48 85 c0             	test   %rax,%rax
140752aa0:	0f 85 a8 00 00 00    	jne    0x140752b4e
140752aa6:	48 8d 0d bb 20 8b 00 	lea    0x8b20bb(%rip),%rcx        # 0x141004b68
140752aad:	e8 6e 8a 11 00       	call   0x14086b520
140752ab2:	4d 89 3e             	mov    %r15,(%r14)
140752ab5:	41 c7 46 08 00 00 00 	movl   $0x0,0x8(%r14)
140752abc:	00
140752abd:	49 63 4e 0c          	movslq 0xc(%r14),%rcx
140752ac1:	49 8b 06             	mov    (%r14),%rax
140752ac4:	4c 89 24 c8          	mov    %r12,(%rax,%rcx,8)
140752ac8:	41 ff 46 0c          	incl   0xc(%r14)
140752acc:	48 85 ff             	test   %rdi,%rdi
140752acf:	74 27                	je     0x140752af8
140752ad1:	8b 47 10             	mov    0x10(%rdi),%eax
140752ad4:	ff c8                	dec    %eax
140752ad6:	89 47 10             	mov    %eax,0x10(%rdi)
140752ad9:	85 c0                	test   %eax,%eax
140752adb:	7f 1b                	jg     0x140752af8
140752add:	0f 88 88 00 00 00    	js     0x140752b6b
140752ae3:	48 8b 07             	mov    (%rdi),%rax
140752ae6:	ba 01 00 00 00       	mov    $0x1,%edx
140752aeb:	48 8b cf             	mov    %rdi,%rcx
140752aee:	48 8b 00             	mov    (%rax),%rax
140752af1:	ff 15 29 0f 83 00    	call   *0x830f29(%rip)        # 0x140f83a20
140752af7:	90                   	nop
140752af8:	4c 8b 65 6f          	mov    0x6f(%rbp),%r12
140752afc:	41 ff c5             	inc    %r13d
140752aff:	48 8b 55 97          	mov    -0x69(%rbp),%rdx
140752b03:	48 83 c2 08          	add    $0x8,%rdx
140752b07:	48 89 55 97          	mov    %rdx,-0x69(%rbp)
140752b0b:	48 8b 5d 77          	mov    0x77(%rbp),%rbx
140752b0f:	44 3b 6b 78          	cmp    0x78(%rbx),%r13d
140752b13:	0f 8c b9 fd ff ff    	jl     0x1407528d2
140752b19:	48 8d 55 ef          	lea    -0x11(%rbp),%rdx
140752b1d:	48 8d 4d 77          	lea    0x77(%rbp),%rcx
140752b21:	e8 da 42 ff ff       	call   0x140746e00
140752b26:	48 8b 08             	mov    (%rax),%rcx
140752b29:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
140752b30:	48 8b 75 67          	mov    0x67(%rbp),%rsi
140752b34:	48 89 0e             	mov    %rcx,(%rsi)
140752b37:	48 8b c6             	mov    %rsi,%rax
140752b3a:	48 81 c4 b8 00 00 00 	add    $0xb8,%rsp
140752b41:	41 5f                	pop    %r15
140752b43:	41 5e                	pop    %r14
140752b45:	41 5d                	pop    %r13
140752b47:	41 5c                	pop    %r12
140752b49:	5f                   	pop    %rdi
140752b4a:	5e                   	pop    %rsi
140752b4b:	5b                   	pop    %rbx
140752b4c:	5d                   	pop    %rbp
140752b4d:	c3                   	ret
140752b4e:	4d 89 3e             	mov    %r15,(%r14)
140752b51:	4d 85 ff             	test   %r15,%r15
140752b54:	0f 84 5b ff ff ff    	je     0x140752ab5
140752b5a:	41 89 76 08          	mov    %esi,0x8(%r14)
140752b5e:	e9 5a ff ff ff       	jmp    0x140752abd
140752b63:	33 c9                	xor    %ecx,%ecx
140752b65:	e8 96 7b 03 00       	call   0x14078a700
140752b6a:	90                   	nop
140752b6b:	b9 02 00 00 00       	mov    $0x2,%ecx
140752b70:	e8 8b 7b 03 00       	call   0x14078a700
140752b75:	90                   	nop
140752b76:	b9 02 00 00 00       	mov    $0x2,%ecx
140752b7b:	e8 80 7b 03 00       	call   0x14078a700
140752b80:	90                   	nop
140752b81:	b9 02 00 00 00       	mov    $0x2,%ecx
140752b86:	e8 75 7b 03 00       	call   0x14078a700
140752b8b:	90                   	nop
140752b8c:	b9 02 00 00 00       	mov    $0x2,%ecx
140752b91:	e8 6a 7b 03 00       	call   0x14078a700
140752b96:	90                   	nop
140752b97:	b9 01 00 00 00       	mov    $0x1,%ecx
140752b9c:	e8 5f 7b 03 00       	call   0x14078a700
140752ba1:	cc                   	int3
140752ba2:	33 c9                	xor    %ecx,%ecx
140752ba4:	e8 57 7b 03 00       	call   0x14078a700
140752ba9:	90                   	nop
140752baa:	b9 02 00 00 00       	mov    $0x2,%ecx
140752baf:	e8 4c 7b 03 00       	call   0x14078a700
140752bb4:	90                   	nop
140752bb5:	b9 01 00 00 00       	mov    $0x1,%ecx
140752bba:	e8 41 7b 03 00       	call   0x14078a700
140752bbf:	cc                   	int3
140752bc0:	33 c9                	xor    %ecx,%ecx
140752bc2:	e8 39 7b 03 00       	call   0x14078a700
140752bc7:	90                   	nop
140752bc8:	b9 02 00 00 00       	mov    $0x2,%ecx
140752bcd:	e8 2e 7b 03 00       	call   0x14078a700
140752bd2:	90                   	nop
140752bd3:	b9 02 00 00 00       	mov    $0x2,%ecx
140752bd8:	e8 23 7b 03 00       	call   0x14078a700
140752bdd:	90                   	nop
140752bde:	b9 01 00 00 00       	mov    $0x1,%ecx
140752be3:	e8 18 7b 03 00       	call   0x14078a700
140752be8:	cc                   	int3
140752be9:	33 c9                	xor    %ecx,%ecx
140752beb:	e8 10 7b 03 00       	call   0x14078a700
140752bf0:	90                   	nop
140752bf1:	b9 01 00 00 00       	mov    $0x1,%ecx
140752bf6:	e8 05 7b 03 00       	call   0x14078a700
140752bfb:	cc                   	int3
140752bfc:	cc                   	int3
140752bfd:	cc                   	int3
140752bfe:	cc                   	int3
140752bff:	cc                   	int3
140752c00:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140752c05:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140752c0a:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140752c0f:	55                   	push   %rbp
140752c10:	56                   	push   %rsi
140752c11:	57                   	push   %rdi
140752c12:	41 54                	push   %r12
140752c14:	41 55                	push   %r13
140752c16:	41 56                	push   %r14
140752c18:	41 57                	push   %r15
140752c1a:	48 8b ec             	mov    %rsp,%rbp
140752c1d:	48 83 ec 50          	sub    $0x50,%rsp
140752c21:	4c 8b d2             	mov    %rdx,%r10
140752c24:	4c 8b f9             	mov    %rcx,%r15
140752c27:	45 33 f6             	xor    %r14d,%r14d
140752c2a:	48 8b 5a 40          	mov    0x40(%rdx),%rbx
140752c2e:	4d 8b 68 40          	mov    0x40(%r8),%r13
140752c32:	4c 89 75 e8          	mov    %r14,-0x18(%rbp)
140752c36:	49 8b 4d 50          	mov    0x50(%r13),%rcx
140752c3a:	49 2b 4d 48          	sub    0x48(%r13),%rcx
140752c3e:	48 8b 43 50          	mov    0x50(%rbx),%rax
140752c42:	48 2b 43 48          	sub    0x48(%rbx),%rax
140752c46:	48 33 c8             	xor    %rax,%rcx
140752c49:	48 f7 c1 f8 ff ff ff 	test   $0xfffffffffffffff8,%rcx
140752c50:	74 1f                	je     0x140752c71
140752c52:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
140752c57:	45 33 c9             	xor    %r9d,%r9d
140752c5a:	48 8d 15 c7 1d 8d 00 	lea    0x8d1dc7(%rip),%rdx        # 0x141024a28
140752c61:	49 8b ca             	mov    %r10,%rcx
140752c64:	e8 57 76 03 00       	call   0x14078a2c0
140752c69:	4d 89 37             	mov    %r14,(%r15)
140752c6c:	e9 46 01 00 00       	jmp    0x140752db7
140752c71:	b9 60 00 00 00       	mov    $0x60,%ecx
140752c76:	e8 8d 84 6c 00       	call   0x140e1b108
140752c7b:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
140752c7f:	48 85 c0             	test   %rax,%rax
140752c82:	74 15                	je     0x140752c99
140752c84:	4c 89 75 58          	mov    %r14,0x58(%rbp)
140752c88:	48 8d 55 58          	lea    0x58(%rbp),%rdx
140752c8c:	48 8b c8             	mov    %rax,%rcx
140752c8f:	e8 cc 5d e2 ff       	call   0x140578a60
140752c94:	48 8b f0             	mov    %rax,%rsi
140752c97:	eb 03                	jmp    0x140752c9c
140752c99:	49 8b f6             	mov    %r14,%rsi
140752c9c:	48 8b fe             	mov    %rsi,%rdi
140752c9f:	48 89 75 e8          	mov    %rsi,-0x18(%rbp)
140752ca3:	45 8b e6             	mov    %r14d,%r12d
140752ca6:	48 8b 53 48          	mov    0x48(%rbx),%rdx
140752caa:	48 8b 43 50          	mov    0x50(%rbx),%rax
140752cae:	48 2b c2             	sub    %rdx,%rax
140752cb1:	48 c1 f8 03          	sar    $0x3,%rax
140752cb5:	48 85 c0             	test   %rax,%rax
140752cb8:	0f 84 14 01 00 00    	je     0x140752dd2
140752cbe:	4d 8b 45 48          	mov    0x48(%r13),%r8
140752cc2:	48 8d 4d 58          	lea    0x58(%rbp),%rcx
140752cc6:	e8 b5 03 00 00       	call   0x140753080
140752ccb:	90                   	nop
140752ccc:	48 8b 4d 58          	mov    0x58(%rbp),%rcx
140752cd0:	48 85 c9             	test   %rcx,%rcx
140752cd3:	0f 84 86 00 00 00    	je     0x140752d5f
140752cd9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140752ce0:	4c 89 75 58          	mov    %r14,0x58(%rbp)
140752ce4:	48 89 4d f0          	mov    %rcx,-0x10(%rbp)
140752ce8:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
140752cec:	48 8b ce             	mov    %rsi,%rcx
140752cef:	e8 6c 75 ff ff       	call   0x14074a260
140752cf4:	90                   	nop
140752cf5:	48 8b 4d 58          	mov    0x58(%rbp),%rcx
140752cf9:	48 85 c9             	test   %rcx,%rcx
140752cfc:	74 24                	je     0x140752d22
140752cfe:	8b 41 10             	mov    0x10(%rcx),%eax
140752d01:	ff c8                	dec    %eax
140752d03:	89 41 10             	mov    %eax,0x10(%rcx)
140752d06:	85 c0                	test   %eax,%eax
140752d08:	7f 18                	jg     0x140752d22
140752d0a:	0f 88 37 03 00 00    	js     0x140753047
140752d10:	48 8b 01             	mov    (%rcx),%rax
140752d13:	ba 01 00 00 00       	mov    $0x1,%edx
140752d18:	48 8b 00             	mov    (%rax),%rax
140752d1b:	ff 15 ff 0c 83 00    	call   *0x830cff(%rip)        # 0x140f83a20
140752d21:	90                   	nop
140752d22:	41 ff c4             	inc    %r12d
140752d25:	48 8b 4b 48          	mov    0x48(%rbx),%rcx
140752d29:	41 8b d4             	mov    %r12d,%edx
140752d2c:	48 8b 43 50          	mov    0x50(%rbx),%rax
140752d30:	48 2b c1             	sub    %rcx,%rax
140752d33:	48 c1 f8 03          	sar    $0x3,%rax
140752d37:	48 3b d0             	cmp    %rax,%rdx
140752d3a:	0f 83 92 00 00 00    	jae    0x140752dd2
140752d40:	49 8b 45 48          	mov    0x48(%r13),%rax
140752d44:	4e 8d 04 e0          	lea    (%rax,%r12,8),%r8
140752d48:	4a 8d 14 e1          	lea    (%rcx,%r12,8),%rdx
140752d4c:	48 8d 4d 58          	lea    0x58(%rbp),%rcx
140752d50:	e8 2b 03 00 00       	call   0x140753080
140752d55:	90                   	nop
140752d56:	48 8b 4d 58          	mov    0x58(%rbp),%rcx
140752d5a:	48 85 c9             	test   %rcx,%rcx
140752d5d:	75 81                	jne    0x140752ce0
140752d5f:	4d 89 37             	mov    %r14,(%r15)
140752d62:	48 85 c9             	test   %rcx,%rcx
140752d65:	74 24                	je     0x140752d8b
140752d67:	8b 41 10             	mov    0x10(%rcx),%eax
140752d6a:	ff c8                	dec    %eax
140752d6c:	89 41 10             	mov    %eax,0x10(%rcx)
140752d6f:	85 c0                	test   %eax,%eax
140752d71:	7f 18                	jg     0x140752d8b
140752d73:	0f 88 c3 02 00 00    	js     0x14075303c
140752d79:	48 8b 01             	mov    (%rcx),%rax
140752d7c:	ba 01 00 00 00       	mov    $0x1,%edx
140752d81:	48 8b 00             	mov    (%rax),%rax
140752d84:	ff 15 96 0c 83 00    	call   *0x830c96(%rip)        # 0x140f83a20
140752d8a:	90                   	nop
140752d8b:	48 85 f6             	test   %rsi,%rsi
140752d8e:	74 27                	je     0x140752db7
140752d90:	8b 46 10             	mov    0x10(%rsi),%eax
140752d93:	ff c8                	dec    %eax
140752d95:	89 46 10             	mov    %eax,0x10(%rsi)
140752d98:	85 c0                	test   %eax,%eax
140752d9a:	7f 1b                	jg     0x140752db7
140752d9c:	0f 88 b0 02 00 00    	js     0x140753052
140752da2:	48 8b 06             	mov    (%rsi),%rax
140752da5:	48 8b ce             	mov    %rsi,%rcx
140752da8:	ba 01 00 00 00       	mov    $0x1,%edx
140752dad:	48 8b 00             	mov    (%rax),%rax
140752db0:	ff 15 6a 0c 83 00    	call   *0x830c6a(%rip)        # 0x140f83a20
140752db6:	90                   	nop
140752db7:	49 8b c7             	mov    %r15,%rax
140752dba:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
140752dc1:	00
140752dc2:	48 83 c4 50          	add    $0x50,%rsp
140752dc6:	41 5f                	pop    %r15
140752dc8:	41 5e                	pop    %r14
140752dca:	41 5d                	pop    %r13
140752dcc:	41 5c                	pop    %r12
140752dce:	5f                   	pop    %rdi
140752dcf:	5e                   	pop    %rsi
140752dd0:	5d                   	pop    %rbp
140752dd1:	c3                   	ret
140752dd2:	4c 8b 65 48          	mov    0x48(%rbp),%r12
140752dd6:	49 8b 04 24          	mov    (%r12),%rax