140197b42:	48 c1 e9 03          	shr    $0x3,%rcx
140197b46:	48 ff c1             	inc    %rcx
140197b49:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140197b50:	48 89 50 f0          	mov    %rdx,-0x10(%rax)
140197b54:	48 89 50 f8          	mov    %rdx,-0x8(%rax)
140197b58:	48 89 10             	mov    %rdx,(%rax)
140197b5b:	48 89 50 08          	mov    %rdx,0x8(%rax)
140197b5f:	48 8d 40 20          	lea    0x20(%rax),%rax
140197b63:	48 83 e9 01          	sub    $0x1,%rcx
140197b67:	75 e7                	jne    0x140197b50
140197b69:	eb 07                	jmp    0x140197b72
140197b6b:	48 89 57 08          	mov    %rdx,0x8(%rdi)
140197b6f:	48 89 17             	mov    %rdx,(%rdi)
140197b72:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
140197b77:	41 8b e9             	mov    %r9d,%ebp
140197b7a:	4c 3b c6             	cmp    %rsi,%r8
140197b7d:	0f 8d a2 00 00 00    	jge    0x140197c25
140197b83:	4c 8b a4 24 00 01 00 	mov    0x100(%rsp),%r12
140197b8a:	00
140197b8b:	4b 8d 04 86          	lea    (%r14,%r8,4),%rax
140197b8f:	4d 8b f2             	mov    %r10,%r14
140197b92:	4c 2b b4 24 08 01 00 	sub    0x108(%rsp),%r14
140197b99:	00
140197b9a:	49 2b f0             	sub    %r8,%rsi
140197b9d:	0f 1f 00             	nopl   (%rax)
140197ba0:	48 63 10             	movslq (%rax),%rdx
140197ba3:	48 8d 58 04          	lea    0x4(%rax),%rbx
140197ba7:	41 8b 04 06          	mov    (%r14,%rax,1),%eax
140197bab:	45 8b cf             	mov    %r15d,%r9d
140197bae:	4c 63 03             	movslq (%rbx),%r8
140197bb1:	44 2b cd             	sub    %ebp,%r9d
140197bb4:	44 03 8c 24 20 01 00 	add    0x120(%rsp),%r9d
140197bbb:	00
140197bbc:	4d 03 c4             	add    %r12,%r8
140197bbf:	c7 44 24 30 02 00 00 	movl   $0x2,0x30(%rsp)
140197bc6:	00
140197bc7:	49 03 d4             	add    %r12,%rdx
140197bca:	48 8d 0c 87          	lea    (%rdi,%rax,4),%rcx
140197bce:	66 44 89 6c 24 28    	mov    %r13w,0x28(%rsp)
140197bd4:	8b 84 24 f8 00 00 00 	mov    0xf8(%rsp),%eax
140197bdb:	89 44 24 20          	mov    %eax,0x20(%rsp)
140197bdf:	e8 ac 02 00 00       	call   0x140197e90
140197be4:	ff c5                	inc    %ebp
140197be6:	48 8d 03             	lea    (%rbx),%rax
140197be9:	48 83 ee 01          	sub    $0x1,%rsi
140197bed:	75 b1                	jne    0x140197ba0
140197bef:	4c 8b 64 24 58       	mov    0x58(%rsp),%r12
140197bf4:	4c 8b 44 24 78       	mov    0x78(%rsp),%r8
140197bf9:	44 8b 4c 24 50       	mov    0x50(%rsp),%r9d
140197bfe:	44 8b 5c 24 54       	mov    0x54(%rsp),%r11d
140197c03:	4c 8b 94 24 80 00 00 	mov    0x80(%rsp),%r10
140197c0a:	00
140197c0b:	48 8b 9c 24 00 01 00 	mov    0x100(%rsp),%rbx
140197c12:	00
140197c13:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
140197c18:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140197c1d:	4c 8b b4 24 08 01 00 	mov    0x108(%rsp),%r14
140197c24:	00
140197c25:	49 ff c4             	inc    %r12
140197c28:	48 03 f8             	add    %rax,%rdi
140197c2b:	4c 89 64 24 58       	mov    %r12,0x58(%rsp)
140197c30:	4c 3b a4 24 88 00 00 	cmp    0x88(%rsp),%r12
140197c37:	00
140197c38:	0f 85 c2 fe ff ff    	jne    0x140197b00
140197c3e:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
140197c43:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
140197c48:	4c 8b ac 24 f0 00 00 	mov    0xf0(%rsp),%r13
140197c4f:	00
140197c50:	44 8b 94 24 18 01 00 	mov    0x118(%rsp),%r10d
140197c57:	00
140197c58:	44 8b 64 24 40       	mov    0x40(%rsp),%r12d
140197c5d:	44 8b 5c 24 44       	mov    0x44(%rsp),%r11d
140197c62:	48 83 c7 04          	add    $0x4,%rdi
140197c66:	8b 8c 24 20 01 00 00 	mov    0x120(%rsp),%ecx
140197c6d:	41 ff c3             	inc    %r11d
140197c70:	44 8b 8c 24 f8 00 00 	mov    0xf8(%rsp),%r9d
140197c77:	00
140197c78:	48 83 ed 01          	sub    $0x1,%rbp
140197c7c:	48 8b 84 24 90 00 00 	mov    0x90(%rsp),%rax
140197c83:	00
140197c84:	48 89 6c 24 70       	mov    %rbp,0x70(%rsp)
140197c89:	44 89 5c 24 44       	mov    %r11d,0x44(%rsp)
140197c8e:	48 89 7c 24 68       	mov    %rdi,0x68(%rsp)
140197c93:	0f 85 c7 fd ff ff    	jne    0x140197a60
140197c99:	4c 8b bc 24 a8 00 00 	mov    0xa8(%rsp),%r15
140197ca0:	00
140197ca1:	48 8b bc 24 b0 00 00 	mov    0xb0(%rsp),%rdi
140197ca8:	00
140197ca9:	48 8b ac 24 b8 00 00 	mov    0xb8(%rsp),%rbp
140197cb0:	00
140197cb1:	48 81 c4 c0 00 00 00 	add    $0xc0,%rsp
140197cb8:	41 5e                	pop    %r14
140197cba:	41 5d                	pop    %r13
140197cbc:	41 5c                	pop    %r12
140197cbe:	5e                   	pop    %rsi
140197cbf:	5b                   	pop    %rbx
140197cc0:	c3                   	ret
140197cc1:	8b 07                	mov    (%rdi),%eax
140197cc3:	4e 8d 0c 03          	lea    (%rbx,%r8,1),%r9
140197cc7:	4c 8d 04 13          	lea    (%rbx,%rdx,1),%r8
140197ccb:	48 8d 0c 85 00 00 00 	lea    0x0(,%rax,4),%rcx
140197cd2:	00
140197cd3:	41 8b c3             	mov    %r11d,%eax
140197cd6:	49 03 cd             	add    %r13,%rcx
140197cd9:	83 e8 01             	sub    $0x1,%eax
140197cdc:	0f 84 7b 01 00 00    	je     0x140197e5d
140197ce2:	83 e8 01             	sub    $0x1,%eax
140197ce5:	0f 84 39 01 00 00    	je     0x140197e24
140197ceb:	83 e8 02             	sub    $0x2,%eax
140197cee:	0f 84 d5 00 00 00    	je     0x140197dc9
140197cf4:	83 f8 04             	cmp    $0x4,%eax
140197cf7:	74 6c                	je     0x140197d65
140197cf9:	4d 3b c1             	cmp    %r9,%r8
140197cfc:	0f 84 5b ff ff ff    	je     0x140197c5d
140197d02:	45 8d 97 00 01 00 00 	lea    0x100(%r15),%r10d
140197d09:	49 bc 01 00 00 00 01 	movabs $0x100000001,%r12
140197d10:	00 00 00
140197d13:	41 c1 e2 10          	shl    $0x10,%r10d
140197d17:	4e 8d 1c 9d 00 00 00 	lea    0x0(,%r11,4),%r11
140197d1e:	00
140197d1f:	90                   	nop
140197d20:	41 0f b6 10          	movzbl (%r8),%edx
140197d24:	49 8d 04 0b          	lea    (%r11,%rcx,1),%rax
140197d28:	41 03 d2             	add    %r10d,%edx
140197d2b:	49 0f af d4          	imul   %r12,%rdx
140197d2f:	48 3b c8             	cmp    %rax,%rcx
140197d32:	74 24                	je     0x140197d58
140197d34:	0f 1f 40 00          	nopl   0x0(%rax)
140197d38:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140197d3f:	00
140197d40:	48 89 11             	mov    %rdx,(%rcx)
140197d43:	48 89 51 08          	mov    %rdx,0x8(%rcx)
140197d47:	48 89 51 10          	mov    %rdx,0x10(%rcx)
140197d4b:	48 89 51 18          	mov    %rdx,0x18(%rcx)
140197d4f:	48 83 c1 20          	add    $0x20,%rcx
140197d53:	48 3b c8             	cmp    %rax,%rcx
140197d56:	75 e8                	jne    0x140197d40
140197d58:	49 ff c0             	inc    %r8
140197d5b:	4d 3b c1             	cmp    %r9,%r8
140197d5e:	75 c0                	jne    0x140197d20
140197d60:	e9 eb fe ff ff       	jmp    0x140197c50
140197d65:	4d 3b c1             	cmp    %r9,%r8
140197d68:	0f 84 ef fe ff ff    	je     0x140197c5d
140197d6e:	45 8d 97 00 01 00 00 	lea    0x100(%r15),%r10d
140197d75:	48 be 01 00 00 00 01 	movabs $0x100000001,%rsi
140197d7c:	00 00 00
140197d7f:	41 c1 e2 10          	shl    $0x10,%r10d
140197d83:	0f 1f 40 00          	nopl   0x0(%rax)
140197d87:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140197d8e:	00 00
140197d90:	41 0f b6 10          	movzbl (%r8),%edx
140197d94:	48 8d 49 20          	lea    0x20(%rcx),%rcx
140197d98:	41 03 d2             	add    %r10d,%edx
140197d9b:	49 ff c0             	inc    %r8
140197d9e:	48 0f af d6          	imul   %rsi,%rdx
140197da2:	48 89 51 e0          	mov    %rdx,-0x20(%rcx)
140197da6:	48 89 51 e8          	mov    %rdx,-0x18(%rcx)
140197daa:	48 89 51 f0          	mov    %rdx,-0x10(%rcx)
140197dae:	48 89 51 f8          	mov    %rdx,-0x8(%rcx)
140197db2:	4d 3b c1             	cmp    %r9,%r8
140197db5:	75 d9                	jne    0x140197d90
140197db7:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140197dbc:	44 8b 94 24 18 01 00 	mov    0x118(%rsp),%r10d
140197dc3:	00
140197dc4:	e9 94 fe ff ff       	jmp    0x140197c5d
140197dc9:	4d 3b c1             	cmp    %r9,%r8
140197dcc:	0f 84 8b fe ff ff    	je     0x140197c5d
140197dd2:	45 8d 97 00 01 00 00 	lea    0x100(%r15),%r10d
140197dd9:	49 be 01 00 00 00 01 	movabs $0x100000001,%r14
140197de0:	00 00 00
140197de3:	41 c1 e2 10          	shl    $0x10,%r10d
140197de7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140197dee:	00 00
140197df0:	41 0f b6 10          	movzbl (%r8),%edx
140197df4:	48 8d 49 10          	lea    0x10(%rcx),%rcx
140197df8:	41 03 d2             	add    %r10d,%edx
140197dfb:	49 ff c0             	inc    %r8
140197dfe:	49 0f af d6          	imul   %r14,%rdx
140197e02:	48 89 51 f0          	mov    %rdx,-0x10(%rcx)
140197e06:	48 89 51 f8          	mov    %rdx,-0x8(%rcx)
140197e0a:	4d 3b c1             	cmp    %r9,%r8
140197e0d:	75 e1                	jne    0x140197df0
140197e0f:	4c 8b b4 24 08 01 00 	mov    0x108(%rsp),%r14
140197e16:	00
140197e17:	44 8b 94 24 18 01 00 	mov    0x118(%rsp),%r10d
140197e1e:	00
140197e1f:	e9 39 fe ff ff       	jmp    0x140197c5d
140197e24:	4d 3b c1             	cmp    %r9,%r8
140197e27:	0f 84 30 fe ff ff    	je     0x140197c5d
140197e2d:	41 8d 97 00 01 00 00 	lea    0x100(%r15),%edx
140197e34:	c1 e2 10             	shl    $0x10,%edx
140197e37:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140197e3e:	00 00
140197e40:	41 0f b6 00          	movzbl (%r8),%eax
140197e44:	48 8d 49 08          	lea    0x8(%rcx),%rcx
140197e48:	03 c2                	add    %edx,%eax
140197e4a:	49 ff c0             	inc    %r8
140197e4d:	89 41 f8             	mov    %eax,-0x8(%rcx)
140197e50:	89 41 fc             	mov    %eax,-0x4(%rcx)
140197e53:	4d 3b c1             	cmp    %r9,%r8
140197e56:	75 e8                	jne    0x140197e40
140197e58:	e9 00 fe ff ff       	jmp    0x140197c5d
140197e5d:	4d 3b c1             	cmp    %r9,%r8
140197e60:	0f 84 f7 fd ff ff    	je     0x140197c5d
140197e66:	41 8d 97 00 01 00 00 	lea    0x100(%r15),%edx
140197e6d:	c1 e2 10             	shl    $0x10,%edx
140197e70:	41 0f b6 00          	movzbl (%r8),%eax
140197e74:	48 8d 49 04          	lea    0x4(%rcx),%rcx
140197e78:	03 c2                	add    %edx,%eax
140197e7a:	49 ff c0             	inc    %r8
140197e7d:	89 41 fc             	mov    %eax,-0x4(%rcx)
140197e80:	4d 3b c1             	cmp    %r9,%r8
140197e83:	75 eb                	jne    0x140197e70
140197e85:	e9 d3 fd ff ff       	jmp    0x140197c5d
140197e8a:	cc                   	int3
140197e8b:	cc                   	int3
140197e8c:	cc                   	int3
140197e8d:	cc                   	int3
140197e8e:	cc                   	int3
140197e8f:	cc                   	int3
140197e90:	48 83 ec 08          	sub    $0x8,%rsp
140197e94:	4c 8b d1             	mov    %rcx,%r10
140197e97:	41 bb 01 00 00 00    	mov    $0x1,%r11d
140197e9d:	8b 4c 24 30          	mov    0x30(%rsp),%ecx
140197ea1:	41 2b c9             	sub    %r9d,%ecx
140197ea4:	83 e1 1f             	and    $0x1f,%ecx
140197ea7:	41 d3 e3             	shl    %cl,%r11d
140197eaa:	41 8b c3             	mov    %r11d,%eax
140197ead:	83 e8 01             	sub    $0x1,%eax
140197eb0:	0f 84 6e 02 00 00    	je     0x140198124
140197eb6:	83 e8 01             	sub    $0x1,%eax
140197eb9:	0f 84 e9 01 00 00    	je     0x1401980a8
140197ebf:	83 e8 02             	sub    $0x2,%eax
140197ec2:	0f 84 4d 01 00 00    	je     0x140198015
140197ec8:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140197ecd:	83 f8 04             	cmp    $0x4,%eax
140197ed0:	0f 84 8d 00 00 00    	je     0x140197f63
140197ed6:	49 3b d0             	cmp    %r8,%rdx
140197ed9:	74 7e                	je     0x140197f59
140197edb:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140197ee0:	4a 8d 34 9d 00 00 00 	lea    0x0(,%r11,4),%rsi
140197ee7:	00
140197ee8:	44 0f b7 5c 24 38    	movzwl 0x38(%rsp),%r11d
140197eee:	48 89 3c 24          	mov    %rdi,(%rsp)
140197ef2:	8b 7c 24 40          	mov    0x40(%rsp),%edi
140197ef6:	8b df                	mov    %edi,%ebx
140197ef8:	c1 e3 08             	shl    $0x8,%ebx
140197efb:	41 03 d9             	add    %r9d,%ebx
140197efe:	49 b9 01 00 00 00 01 	movabs $0x100000001,%r9
140197f05:	00 00 00
140197f08:	c1 e3 10             	shl    $0x10,%ebx
140197f0b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140197f10:	0f b6 0a             	movzbl (%rdx),%ecx
140197f13:	83 ff 01             	cmp    $0x1,%edi
140197f16:	74 06                	je     0x140197f1e
140197f18:	c1 e1 08             	shl    $0x8,%ecx
140197f1b:	41 03 cb             	add    %r11d,%ecx
140197f1e:	03 cb                	add    %ebx,%ecx
140197f20:	4a 8d 04 16          	lea    (%rsi,%r10,1),%rax
140197f24:	49 0f af c9          	imul   %r9,%rcx
140197f28:	4c 3b d0             	cmp    %rax,%r10
140197f2b:	74 1b                	je     0x140197f48
140197f2d:	0f 1f 00             	nopl   (%rax)
140197f30:	49 89 0a             	mov    %rcx,(%r10)
140197f33:	49 89 4a 08          	mov    %rcx,0x8(%r10)
140197f37:	49 89 4a 10          	mov    %rcx,0x10(%r10)
140197f3b:	49 89 4a 18          	mov    %rcx,0x18(%r10)
140197f3f:	49 83 c2 20          	add    $0x20,%r10
140197f43:	4c 3b d0             	cmp    %rax,%r10
140197f46:	75 e8                	jne    0x140197f30
140197f48:	48 ff c2             	inc    %rdx
140197f4b:	49 3b d0             	cmp    %r8,%rdx
140197f4e:	75 c0                	jne    0x140197f10
140197f50:	48 8b 3c 24          	mov    (%rsp),%rdi
140197f54:	48 8b 74 24 18       	mov    0x18(%rsp),%rsi
140197f59:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
140197f5e:	48 83 c4 08          	add    $0x8,%rsp
140197f62:	c3                   	ret
140197f63:	49 3b d0             	cmp    %r8,%rdx
140197f66:	74 f1                	je     0x140197f59
140197f68:	44 8b 5c 24 40       	mov    0x40(%rsp),%r11d
140197f6d:	49 83 c2 10          	add    $0x10,%r10
140197f71:	41 83 fb 01          	cmp    $0x1,%r11d
140197f75:	75 49                	jne    0x140197fc0
140197f77:	45 8d 99 00 01 00 00 	lea    0x100(%r9),%r11d
140197f7e:	49 b9 01 00 00 00 01 	movabs $0x100000001,%r9
140197f85:	00 00 00
140197f88:	41 c1 e3 10          	shl    $0x10,%r11d
140197f8c:	0f 1f 40 00          	nopl   0x0(%rax)
140197f90:	0f b6 0a             	movzbl (%rdx),%ecx
140197f93:	4d 8d 52 20          	lea    0x20(%r10),%r10
140197f97:	41 03 cb             	add    %r11d,%ecx
140197f9a:	48 ff c2             	inc    %rdx
140197f9d:	49 0f af c9          	imul   %r9,%rcx
140197fa1:	49 89 4a d0          	mov    %rcx,-0x30(%r10)
140197fa5:	49 89 4a d8          	mov    %rcx,-0x28(%r10)
140197fa9:	49 89 4a e0          	mov    %rcx,-0x20(%r10)
140197fad:	49 89 4a e8          	mov    %rcx,-0x18(%r10)
140197fb1:	49 3b d0             	cmp    %r8,%rdx
140197fb4:	75 da                	jne    0x140197f90
140197fb6:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
140197fbb:	48 83 c4 08          	add    $0x8,%rsp
140197fbf:	c3                   	ret
140197fc0:	0f b7 5c 24 38       	movzwl 0x38(%rsp),%ebx
140197fc5:	41 c1 e3 08          	shl    $0x8,%r11d
140197fc9:	45 03 d9             	add    %r9d,%r11d
140197fcc:	49 b9 01 00 00 00 01 	movabs $0x100000001,%r9
140197fd3:	00 00 00
140197fd6:	41 c1 e3 08          	shl    $0x8,%r11d
140197fda:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140197fe0:	0f b6 0a             	movzbl (%rdx),%ecx
140197fe3:	4d 8d 52 20          	lea    0x20(%r10),%r10
140197fe7:	41 03 cb             	add    %r11d,%ecx
140197fea:	48 ff c2             	inc    %rdx
140197fed:	c1 e1 08             	shl    $0x8,%ecx
140197ff0:	03 cb                	add    %ebx,%ecx
140197ff2:	49 0f af c9          	imul   %r9,%rcx
140197ff6:	49 89 4a d0          	mov    %rcx,-0x30(%r10)
140197ffa:	49 89 4a d8          	mov    %rcx,-0x28(%r10)
140197ffe:	49 89 4a e0          	mov    %rcx,-0x20(%r10)
140198002:	49 89 4a e8          	mov    %rcx,-0x18(%r10)
140198006:	49 3b d0             	cmp    %r8,%rdx
140198009:	75 d5                	jne    0x140197fe0
14019800b:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
140198010:	48 83 c4 08          	add    $0x8,%rsp
140198014:	c3                   	ret
140198015:	49 3b d0             	cmp    %r8,%rdx
140198018:	0f 84 40 ff ff ff    	je     0x140197f5e
14019801e:	8b 4c 24 40          	mov    0x40(%rsp),%ecx
140198022:	83 f9 01             	cmp    $0x1,%ecx
140198025:	75 3c                	jne    0x140198063
140198027:	45 8d 99 00 01 00 00 	lea    0x100(%r9),%r11d
14019802e:	49 b9 01 00 00 00 01 	movabs $0x100000001,%r9
140198035:	00 00 00
140198038:	41 c1 e3 10          	shl    $0x10,%r11d
14019803c:	0f 1f 40 00          	nopl   0x0(%rax)
140198040:	0f b6 0a             	movzbl (%rdx),%ecx
140198043:	4d 8d 52 10          	lea    0x10(%r10),%r10
140198047:	41 03 cb             	add    %r11d,%ecx
14019804a:	48 ff c2             	inc    %rdx
14019804d:	49 0f af c9          	imul   %r9,%rcx
140198051:	49 89 4a f0          	mov    %rcx,-0x10(%r10)
140198055:	49 89 4a f8          	mov    %rcx,-0x8(%r10)
140198059:	49 3b d0             	cmp    %r8,%rdx
14019805c:	75 e2                	jne    0x140198040
14019805e:	48 83 c4 08          	add    $0x8,%rsp
140198062:	c3                   	ret
140198063:	44 0f b7 5c 24 38    	movzwl 0x38(%rsp),%r11d
140198069:	c1 e1 08             	shl    $0x8,%ecx
14019806c:	41 03 c9             	add    %r9d,%ecx