140012ba5:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140012baa:	55                   	push   %rbp
140012bab:	56                   	push   %rsi
140012bac:	57                   	push   %rdi
140012bad:	41 54                	push   %r12
140012baf:	41 55                	push   %r13
140012bb1:	41 56                	push   %r14
140012bb3:	41 57                	push   %r15
140012bb5:	48 83 ec 30          	sub    $0x30,%rsp
140012bb9:	4d 8b f8             	mov    %r8,%r15
140012bbc:	48 8b f2             	mov    %rdx,%rsi
140012bbf:	4c 8b e1             	mov    %rcx,%r12
140012bc2:	4d 85 c0             	test   %r8,%r8
140012bc5:	74 1a                	je     0x140012be1
140012bc7:	4d 85 c9             	test   %r9,%r9
140012bca:	74 15                	je     0x140012be1
140012bcc:	48 85 c9             	test   %rcx,%rcx
140012bcf:	75 27                	jne    0x140012bf8
140012bd1:	e8 16 1e 00 00       	call   0x1400149ec
140012bd6:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140012bdc:	e8 b7 db ff ff       	call   0x140010798
140012be1:	33 c0                	xor    %eax,%eax
140012be3:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
140012be8:	48 83 c4 30          	add    $0x30,%rsp
140012bec:	41 5f                	pop    %r15
140012bee:	41 5e                	pop    %r14
140012bf0:	41 5d                	pop    %r13
140012bf2:	41 5c                	pop    %r12
140012bf4:	5f                   	pop    %rdi
140012bf5:	5e                   	pop    %rsi
140012bf6:	5d                   	pop    %rbp
140012bf7:	c3                   	ret
140012bf8:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
140012bff:	00
140012c00:	48 85 db             	test   %rbx,%rbx
140012c03:	74 0e                	je     0x140012c13
140012c05:	33 d2                	xor    %edx,%edx
140012c07:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
140012c0b:	49 f7 f7             	div    %r15
140012c0e:	4c 3b c8             	cmp    %rax,%r9
140012c11:	76 2b                	jbe    0x140012c3e
140012c13:	48 83 fe ff          	cmp    $0xffffffffffffffff,%rsi
140012c17:	74 12                	je     0x140012c2b
140012c19:	4c 8b c6             	mov    %rsi,%r8
140012c1c:	33 d2                	xor    %edx,%edx
140012c1e:	e8 4d b7 ff ff       	call   0x14000e370
140012c23:	4c 8b 8c 24 88 00 00 	mov    0x88(%rsp),%r9
140012c2a:	00
140012c2b:	48 85 db             	test   %rbx,%rbx
140012c2e:	74 a1                	je     0x140012bd1
140012c30:	33 d2                	xor    %edx,%edx
140012c32:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
140012c36:	49 f7 f7             	div    %r15
140012c39:	4c 3b c8             	cmp    %rax,%r9
140012c3c:	77 93                	ja     0x140012bd1
140012c3e:	8b 43 14             	mov    0x14(%rbx),%eax
140012c41:	a9 c0 04 00 00       	test   $0x4c0,%eax
140012c46:	74 05                	je     0x140012c4d
140012c48:	8b 4b 20             	mov    0x20(%rbx),%ecx
140012c4b:	eb 05                	jmp    0x140012c52
140012c4d:	b9 00 10 00 00       	mov    $0x1000,%ecx
140012c52:	49 8b ff             	mov    %r15,%rdi
140012c55:	89 8c 24 90 00 00 00 	mov    %ecx,0x90(%rsp)
140012c5c:	49 0f af f9          	imul   %r9,%rdi
140012c60:	4d 8b d4             	mov    %r12,%r10
140012c63:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
140012c68:	48 8b ef             	mov    %rdi,%rbp
140012c6b:	4c 8b ee             	mov    %rsi,%r13
140012c6e:	48 85 ff             	test   %rdi,%rdi
140012c71:	0f 84 72 01 00 00    	je     0x140012de9
140012c77:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
140012c7c:	8b 43 14             	mov    0x14(%rbx),%eax
140012c7f:	a9 c0 04 00 00       	test   $0x4c0,%eax
140012c84:	0f 84 a4 00 00 00    	je     0x140012d2e
140012c8a:	4c 63 73 10          	movslq 0x10(%rbx),%r14
140012c8e:	45 85 f6             	test   %r14d,%r14d
140012c91:	0f 84 97 00 00 00    	je     0x140012d2e
140012c97:	0f 88 77 01 00 00    	js     0x140012e14
140012c9d:	49 3b ee             	cmp    %r14,%rbp
140012ca0:	44 0f 42 f5          	cmovb  %ebp,%r14d
140012ca4:	4d 3b f5             	cmp    %r13,%r14
140012ca7:	0f 87 44 01 00 00    	ja     0x140012df1
140012cad:	48 8b 03             	mov    (%rbx),%rax
140012cb0:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140012cb5:	4d 85 f6             	test   %r14,%r14
140012cb8:	74 5b                	je     0x140012d15
140012cba:	4d 85 d2             	test   %r10,%r10
140012cbd:	75 0d                	jne    0x140012ccc
140012cbf:	e8 28 1d 00 00       	call   0x1400149ec
140012cc4:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140012cca:	eb 3f                	jmp    0x140012d0b
140012ccc:	48 85 c0             	test   %rax,%rax
140012ccf:	74 15                	je     0x140012ce6
140012cd1:	4d 3b ee             	cmp    %r14,%r13
140012cd4:	72 10                	jb     0x140012ce6
140012cd6:	4d 8b c6             	mov    %r14,%r8
140012cd9:	48 8b d0             	mov    %rax,%rdx
140012cdc:	49 8b ca             	mov    %r10,%rcx
140012cdf:	e8 2c b2 ff ff       	call   0x14000df10
140012ce4:	eb 2a                	jmp    0x140012d10
140012ce6:	4d 8b c5             	mov    %r13,%r8
140012ce9:	33 d2                	xor    %edx,%edx
140012ceb:	49 8b ca             	mov    %r10,%rcx
140012cee:	e8 7d b6 ff ff       	call   0x14000e370
140012cf3:	48 83 7c 24 28 00    	cmpq   $0x0,0x28(%rsp)
140012cf9:	74 c4                	je     0x140012cbf
140012cfb:	4d 3b ee             	cmp    %r14,%r13
140012cfe:	73 10                	jae    0x140012d10
140012d00:	e8 e7 1c 00 00       	call   0x1400149ec
140012d05:	c7 00 22 00 00 00    	movl   $0x22,(%rax)
140012d0b:	e8 88 da ff ff       	call   0x140010798
140012d10:	4c 8b 54 24 20       	mov    0x20(%rsp),%r10
140012d15:	44 29 73 10          	sub    %r14d,0x10(%rbx)
140012d19:	49 2b ee             	sub    %r14,%rbp
140012d1c:	4c 01 33             	add    %r14,(%rbx)
140012d1f:	8b 8c 24 90 00 00 00 	mov    0x90(%rsp),%ecx
140012d26:	4d 2b ee             	sub    %r14,%r13
140012d29:	e9 a2 00 00 00       	jmp    0x140012dd0
140012d2e:	8b c1                	mov    %ecx,%eax
140012d30:	48 3b e8             	cmp    %rax,%rbp
140012d33:	72 6b                	jb     0x140012da0
140012d35:	48 3b ea             	cmp    %rdx,%rbp
140012d38:	44 8b f5             	mov    %ebp,%r14d
140012d3b:	44 0f 47 f2          	cmova  %edx,%r14d
140012d3f:	85 c9                	test   %ecx,%ecx
140012d41:	74 0a                	je     0x140012d4d
140012d43:	33 d2                	xor    %edx,%edx
140012d45:	41 8b c6             	mov    %r14d,%eax
140012d48:	f7 f1                	div    %ecx
140012d4a:	44 2b f2             	sub    %edx,%r14d
140012d4d:	41 8b c6             	mov    %r14d,%eax
140012d50:	49 3b c5             	cmp    %r13,%rax
140012d53:	0f 87 98 00 00 00    	ja     0x140012df1
140012d59:	48 8b 43 08          	mov    0x8(%rbx),%rax
140012d5d:	48 8b cb             	mov    %rbx,%rcx
140012d60:	83 63 10 00          	andl   $0x0,0x10(%rbx)
140012d64:	48 89 03             	mov    %rax,(%rbx)
140012d67:	e8 e0 a8 00 00       	call   0x14001d64c
140012d6c:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
140012d71:	8b c8                	mov    %eax,%ecx
140012d73:	45 8b c6             	mov    %r14d,%r8d
140012d76:	e8 69 cc 00 00       	call   0x14001f9e4
140012d7b:	85 c0                	test   %eax,%eax
140012d7d:	0f 84 98 00 00 00    	je     0x140012e1b
140012d83:	0f 88 8b 00 00 00    	js     0x140012e14
140012d89:	8b 8c 24 90 00 00 00 	mov    0x90(%rsp),%ecx
140012d90:	4c 8b 54 24 20       	mov    0x20(%rsp),%r10
140012d95:	4c 63 f0             	movslq %eax,%r14
140012d98:	49 2b ee             	sub    %r14,%rbp
140012d9b:	4d 2b ee             	sub    %r14,%r13
140012d9e:	eb 30                	jmp    0x140012dd0
140012da0:	48 8b cb             	mov    %rbx,%rcx
140012da3:	e8 dc ba 00 00       	call   0x14001e884
140012da8:	83 f8 ff             	cmp    $0xffffffff,%eax
140012dab:	74 73                	je     0x140012e20
140012dad:	4d 85 ed             	test   %r13,%r13
140012db0:	74 3f                	je     0x140012df1
140012db2:	4c 8b 54 24 20       	mov    0x20(%rsp),%r10
140012db7:	48 ff cd             	dec    %rbp
140012dba:	49 ff cd             	dec    %r13
140012dbd:	41 be 01 00 00 00    	mov    $0x1,%r14d
140012dc3:	41 88 02             	mov    %al,(%r10)
140012dc6:	8b 4b 20             	mov    0x20(%rbx),%ecx
140012dc9:	89 8c 24 90 00 00 00 	mov    %ecx,0x90(%rsp)
140012dd0:	4d 03 d6             	add    %r14,%r10
140012dd3:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
140012dd8:	48 85 ed             	test   %rbp,%rbp
140012ddb:	0f 85 96 fe ff ff    	jne    0x140012c77
140012de1:	4c 8b 8c 24 88 00 00 	mov    0x88(%rsp),%r9
140012de8:	00
140012de9:	49 8b c1             	mov    %r9,%rax
140012dec:	e9 f2 fd ff ff       	jmp    0x140012be3
140012df1:	48 83 fe ff          	cmp    $0xffffffffffffffff,%rsi
140012df5:	74 0d                	je     0x140012e04
140012df7:	4c 8b c6             	mov    %rsi,%r8
140012dfa:	33 d2                	xor    %edx,%edx
140012dfc:	49 8b cc             	mov    %r12,%rcx
140012dff:	e8 6c b5 ff ff       	call   0x14000e370
140012e04:	e8 e3 1b 00 00       	call   0x1400149ec
140012e09:	c7 00 22 00 00 00    	movl   $0x22,(%rax)
140012e0f:	e9 c8 fd ff ff       	jmp    0x140012bdc
140012e14:	f0 83 4b 14 10       	lock orl $0x10,0x14(%rbx)
140012e19:	eb 05                	jmp    0x140012e20
140012e1b:	f0 83 4b 14 08       	lock orl $0x8,0x14(%rbx)
140012e20:	48 2b fd             	sub    %rbp,%rdi
140012e23:	33 d2                	xor    %edx,%edx
140012e25:	48 8b c7             	mov    %rdi,%rax
140012e28:	49 f7 f7             	div    %r15
140012e2b:	e9 b3 fd ff ff       	jmp    0x140012be3
140012e30:	48 83 ec 38          	sub    $0x38,%rsp
140012e34:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140012e39:	4d 8b c8             	mov    %r8,%r9
140012e3c:	4c 8b c2             	mov    %rdx,%r8
140012e3f:	48 83 ca ff          	or     $0xffffffffffffffff,%rdx
140012e43:	e8 08 00 00 00       	call   0x140012e50
140012e48:	48 83 c4 38          	add    $0x38,%rsp
140012e4c:	c3                   	ret
140012e4d:	cc                   	int3
140012e4e:	cc                   	int3
140012e4f:	cc                   	int3
140012e50:	48 8b c4             	mov    %rsp,%rax
140012e53:	48 89 58 08          	mov    %rbx,0x8(%rax)
140012e57:	48 89 70 10          	mov    %rsi,0x10(%rax)
140012e5b:	48 89 78 18          	mov    %rdi,0x18(%rax)
140012e5f:	4c 89 70 20          	mov    %r14,0x20(%rax)
140012e63:	41 57                	push   %r15
140012e65:	48 83 ec 30          	sub    $0x30,%rsp
140012e69:	49 8b f1             	mov    %r9,%rsi
140012e6c:	4d 8b f8             	mov    %r8,%r15
140012e6f:	48 8b fa             	mov    %rdx,%rdi
140012e72:	4c 8b f1             	mov    %rcx,%r14
140012e75:	4d 85 c0             	test   %r8,%r8
140012e78:	74 2f                	je     0x140012ea9
140012e7a:	4d 85 c9             	test   %r9,%r9
140012e7d:	74 2a                	je     0x140012ea9
140012e7f:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140012e84:	48 85 db             	test   %rbx,%rbx
140012e87:	75 3d                	jne    0x140012ec6
140012e89:	48 83 fa ff          	cmp    $0xffffffffffffffff,%rdx
140012e8d:	74 0a                	je     0x140012e99
140012e8f:	4c 8b c2             	mov    %rdx,%r8
140012e92:	33 d2                	xor    %edx,%edx
140012e94:	e8 d7 b4 ff ff       	call   0x14000e370
140012e99:	e8 4e 1b 00 00       	call   0x1400149ec
140012e9e:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140012ea4:	e8 ef d8 ff ff       	call   0x140010798
140012ea9:	33 c0                	xor    %eax,%eax
140012eab:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140012eb0:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140012eb5:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
140012eba:	4c 8b 74 24 58       	mov    0x58(%rsp),%r14
140012ebf:	48 83 c4 30          	add    $0x30,%rsp
140012ec3:	41 5f                	pop    %r15
140012ec5:	c3                   	ret
140012ec6:	48 8b cb             	mov    %rbx,%rcx
140012ec9:	e8 3a db ff ff       	call   0x140010a08
140012ece:	90                   	nop
140012ecf:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140012ed4:	4c 8b ce             	mov    %rsi,%r9
140012ed7:	4d 8b c7             	mov    %r15,%r8
140012eda:	48 8b d7             	mov    %rdi,%rdx
140012edd:	49 8b ce             	mov    %r14,%rcx
140012ee0:	e8 bb fc ff ff       	call   0x140012ba0
140012ee5:	48 8b f8             	mov    %rax,%rdi
140012ee8:	48 8b cb             	mov    %rbx,%rcx
140012eeb:	e8 24 db ff ff       	call   0x140010a14
140012ef0:	48 8b c7             	mov    %rdi,%rax
140012ef3:	eb b6                	jmp    0x140012eab
140012ef5:	cc                   	int3
140012ef6:	cc                   	int3
140012ef7:	cc                   	int3
140012ef8:	48 83 ec 28          	sub    $0x28,%rsp
140012efc:	48 85 c9             	test   %rcx,%rcx
140012eff:	75 18                	jne    0x140012f19
140012f01:	e8 e6 1a 00 00       	call   0x1400149ec
140012f06:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140012f0c:	e8 87 d8 ff ff       	call   0x140010798
140012f11:	83 c8 ff             	or     $0xffffffff,%eax
140012f14:	48 83 c4 28          	add    $0x28,%rsp
140012f18:	c3                   	ret
140012f19:	48 85 d2             	test   %rdx,%rdx
140012f1c:	74 e3                	je     0x140012f01
140012f1e:	48 8b 12             	mov    (%rdx),%rdx
140012f21:	45 33 c0             	xor    %r8d,%r8d
140012f24:	48 83 c4 28          	add    $0x28,%rsp
140012f28:	e9 0b 02 00 00       	jmp    0x140013138
140012f2d:	cc                   	int3
140012f2e:	cc                   	int3
140012f2f:	cc                   	int3
140012f30:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140012f35:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140012f3a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140012f3f:	57                   	push   %rdi
140012f40:	48 83 ec 20          	sub    $0x20,%rsp
140012f44:	41 8b f8             	mov    %r8d,%edi
140012f47:	48 8b f2             	mov    %rdx,%rsi
140012f4a:	48 8b d9             	mov    %rcx,%rbx
140012f4d:	48 85 c9             	test   %rcx,%rcx
140012f50:	75 23                	jne    0x140012f75
140012f52:	e8 95 1a 00 00       	call   0x1400149ec
140012f57:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140012f5d:	e8 36 d8 ff ff       	call   0x140010798
140012f62:	83 c8 ff             	or     $0xffffffff,%eax
140012f65:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140012f6a:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140012f6f:	48 83 c4 20          	add    $0x20,%rsp
140012f73:	5f                   	pop    %rdi
140012f74:	c3                   	ret
140012f75:	83 ff 02             	cmp    $0x2,%edi
140012f78:	77 d8                	ja     0x140012f52
140012f7a:	e8 89 da ff ff       	call   0x140010a08
140012f7f:	90                   	nop
140012f80:	44 8b c7             	mov    %edi,%r8d
140012f83:	48 8b d6             	mov    %rsi,%rdx
140012f86:	48 8b cb             	mov    %rbx,%rcx
140012f89:	e8 f2 00 00 00       	call   0x140013080
140012f8e:	8b f8                	mov    %eax,%edi
140012f90:	48 8b cb             	mov    %rbx,%rcx
140012f93:	e8 7c da ff ff       	call   0x140010a14
140012f98:	8b c7                	mov    %edi,%eax
140012f9a:	eb c9                	jmp    0x140012f65
140012f9c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140012fa1:	57                   	push   %rdi
140012fa2:	48 83 ec 20          	sub    $0x20,%rsp
140012fa6:	48 8b fa             	mov    %rdx,%rdi
140012fa9:	48 8b d9             	mov    %rcx,%rbx
140012fac:	41 83 f8 02          	cmp    $0x2,%r8d
140012fb0:	0f 84 bb 00 00 00    	je     0x140013071
140012fb6:	8b 41 14             	mov    0x14(%rcx),%eax
140012fb9:	a9 c0 04 00 00       	test   $0x4c0,%eax
140012fbe:	0f 84 ad 00 00 00    	je     0x140013071
140012fc4:	8b 41 14             	mov    0x14(%rcx),%eax
140012fc7:	a8 06                	test   $0x6,%al
140012fc9:	0f 85 a2 00 00 00    	jne    0x140013071
140012fcf:	83 79 10 00          	cmpl   $0x0,0x10(%rcx)
140012fd3:	0f 8e 98 00 00 00    	jle    0x140013071
140012fd9:	4c 63 51 18          	movslq 0x18(%rcx),%r10
140012fdd:	49 8b ca             	mov    %r10,%rcx
140012fe0:	4c 8d 0d a9 3c 03 00 	lea    0x33ca9(%rip),%r9        # 0x140046c90
140012fe7:	83 e1 3f             	and    $0x3f,%ecx
140012fea:	49 8b c2             	mov    %r10,%rax
140012fed:	48 c1 f8 06          	sar    $0x6,%rax
140012ff1:	48 8d 14 c9          	lea    (%rcx,%rcx,8),%rdx
140012ff5:	4d 8b 0c c1          	mov    (%r9,%rax,8),%r9
140012ff9:	41 80 7c d1 38 00    	cmpb   $0x0,0x38(%r9,%rdx,8)
140012fff:	7c 70                	jl     0x140013071
140013001:	41 80 7c d1 39 00    	cmpb   $0x0,0x39(%r9,%rdx,8)
140013007:	75 68                	jne    0x140013071
140013009:	45 85 c0             	test   %r8d,%r8d
14001300c:	75 3d                	jne    0x14001304b
14001300e:	33 d2                	xor    %edx,%edx
140013010:	41 8b ca             	mov    %r10d,%ecx
140013013:	44 8d 42 01          	lea    0x1(%rdx),%r8d
140013017:	e8 b4 cf 00 00       	call   0x14001ffd0
14001301c:	48 8b c8             	mov    %rax,%rcx
14001301f:	48 85 c0             	test   %rax,%rax
140013022:	78 4d                	js     0x140013071
140013024:	48 63 43 10          	movslq 0x10(%rbx),%rax
140013028:	48 8b d7             	mov    %rdi,%rdx
14001302b:	48 2b c8             	sub    %rax,%rcx
14001302e:	48 c1 ef 3f          	shr    $0x3f,%rdi
140013032:	48 2b d1             	sub    %rcx,%rdx
140013035:	48 c1 e9 3f          	shr    $0x3f,%rcx
140013039:	3b f9                	cmp    %ecx,%edi
14001303b:	74 0b                	je     0x140013048
14001303d:	48 8b c2             	mov    %rdx,%rax
140013040:	48 c1 e8 3f          	shr    $0x3f,%rax
140013044:	3b f8                	cmp    %eax,%edi
140013046:	75 29                	jne    0x140013071
140013048:	48 8b fa             	mov    %rdx,%rdi