140195cb7:	8b 41 08             	mov    0x8(%rcx),%eax
140195cba:	eb 02                	jmp    0x140195cbe
140195cbc:	33 c0                	xor    %eax,%eax
140195cbe:	45 84 f6             	test   %r14b,%r14b
140195cc1:	8b c8                	mov    %eax,%ecx
140195cc3:	41 8b c0             	mov    %r8d,%eax
140195cc6:	41 0f 94 c1          	sete   %r9b
140195cca:	48 c1 e1 20          	shl    $0x20,%rcx
140195cce:	48 03 c8             	add    %rax,%rcx
140195cd1:	e9 dc 00 00 00       	jmp    0x140195db2
140195cd6:	45 8b cb             	mov    %r11d,%r9d
140195cd9:	41 c1 eb 05          	shr    $0x5,%r11d
140195cdd:	45 8d 7b ff          	lea    -0x1(%r11),%r15d
140195ce1:	45 8d 43 fe          	lea    -0x2(%r11),%r8d
140195ce5:	41 83 e1 1f          	and    $0x1f,%r9d
140195ce9:	75 46                	jne    0x140195d31
140195ceb:	42 8b 7c b9 04       	mov    0x4(%rcx,%r15,4),%edi
140195cf0:	41 8b d8             	mov    %r8d,%ebx
140195cf3:	42 8b 4c 81 04       	mov    0x4(%rcx,%r8,4),%ecx
140195cf8:	c1 e3 05             	shl    $0x5,%ebx
140195cfb:	48 c1 e7 20          	shl    $0x20,%rdi
140195cff:	03 da                	add    %edx,%ebx
140195d01:	48 03 f9             	add    %rcx,%rdi
140195d04:	45 84 f6             	test   %r14b,%r14b
140195d07:	41 0f 94 c1          	sete   %r9b
140195d0b:	45 33 db             	xor    %r11d,%r11d
140195d0e:	45 85 c0             	test   %r8d,%r8d
140195d11:	74 14                	je     0x140195d27
140195d13:	43 83 7c 9a 04 00    	cmpl   $0x0,0x4(%r10,%r11,4)
140195d19:	0f 94 c0             	sete   %al
140195d1c:	45 03 dc             	add    %r12d,%r11d
140195d1f:	44 22 c8             	and    %al,%r9b
140195d22:	45 3b d8             	cmp    %r8d,%r11d
140195d25:	75 ec                	jne    0x140195d13
140195d27:	8b d3                	mov    %ebx,%edx
140195d29:	48 8b cf             	mov    %rdi,%rcx
140195d2c:	e9 81 00 00 00       	jmp    0x140195db2
140195d31:	47 8b 7c ba 04       	mov    0x4(%r10,%r15,4),%r15d
140195d36:	41 8b fc             	mov    %r12d,%edi
140195d39:	47 8b 6c 82 04       	mov    0x4(%r10,%r8,4),%r13d
140195d3e:	41 2b d9             	sub    %r9d,%ebx
140195d41:	41 8b c9             	mov    %r9d,%ecx
140195d44:	d3 e7                	shl    %cl,%edi
140195d46:	41 2b fc             	sub    %r12d,%edi
140195d49:	45 8b e0             	mov    %r8d,%r12d
140195d4c:	41 c1 e4 05          	shl    $0x5,%r12d
140195d50:	8d 4b e0             	lea    -0x20(%rbx),%ecx
140195d53:	49 d3 e7             	shl    %cl,%r15
140195d56:	45 03 e1             	add    %r9d,%r12d
140195d59:	44 03 e2             	add    %edx,%r12d
140195d5c:	8b c7                	mov    %edi,%eax
140195d5e:	43 8b 54 9a 04       	mov    0x4(%r10,%r11,4),%edx
140195d63:	8b cb                	mov    %ebx,%ecx
140195d65:	48 23 d0             	and    %rax,%rdx
140195d68:	48 d3 e2             	shl    %cl,%rdx
140195d6b:	41 8b c9             	mov    %r9d,%ecx
140195d6e:	4c 03 fa             	add    %rdx,%r15
140195d71:	8b d7                	mov    %edi,%edx
140195d73:	f7 d2                	not    %edx
140195d75:	49 23 d5             	and    %r13,%rdx
140195d78:	48 d3 ea             	shr    %cl,%rdx
140195d7b:	4c 03 fa             	add    %rdx,%r15
140195d7e:	45 84 f6             	test   %r14b,%r14b
140195d81:	75 0a                	jne    0x140195d8d
140195d83:	44 85 ef             	test   %r13d,%edi
140195d86:	75 05                	jne    0x140195d8d
140195d88:	41 b1 01             	mov    $0x1,%r9b
140195d8b:	eb 03                	jmp    0x140195d90
140195d8d:	45 32 c9             	xor    %r9b,%r9b
140195d90:	45 33 db             	xor    %r11d,%r11d
140195d93:	45 85 c0             	test   %r8d,%r8d
140195d96:	74 14                	je     0x140195dac
140195d98:	43 83 7c 9a 04 00    	cmpl   $0x0,0x4(%r10,%r11,4)
140195d9e:	0f 94 c0             	sete   %al
140195da1:	41 ff c3             	inc    %r11d
140195da4:	44 22 c8             	and    %al,%r9b
140195da7:	45 3b d8             	cmp    %r8d,%r11d
140195daa:	75 ec                	jne    0x140195d98
140195dac:	41 8b d4             	mov    %r12d,%edx
140195daf:	49 8b cf             	mov    %r15,%rcx
140195db2:	44 8a c5             	mov    %bpl,%r8b
140195db5:	48 89 b4 24 80 00 00 	mov    %rsi,0x80(%rsp)
140195dbc:	00
140195dbd:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140195dc2:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140195dc7:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140195dcc:	48 83 c4 30          	add    $0x30,%rsp
140195dd0:	41 5f                	pop    %r15
140195dd2:	41 5e                	pop    %r14
140195dd4:	41 5d                	pop    %r13
140195dd6:	41 5c                	pop    %r12
140195dd8:	5f                   	pop    %rdi
140195dd9:	e9 c2 fa ff ff       	jmp    0x1401958a0
140195dde:	cc                   	int3
140195ddf:	cc                   	int3
140195de0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140195de5:	55                   	push   %rbp
140195de6:	56                   	push   %rsi
140195de7:	57                   	push   %rdi
140195de8:	41 54                	push   %r12
140195dea:	41 55                	push   %r13
140195dec:	41 56                	push   %r14
140195dee:	41 57                	push   %r15
140195df0:	48 8d ac 24 90 f5 ff 	lea    -0xa70(%rsp),%rbp
140195df7:	ff
140195df8:	48 81 ec 70 0b 00 00 	sub    $0xb70,%rsp
140195dff:	48 8b 05 6a 54 11 00 	mov    0x11546a(%rip),%rax        # 0x1402ab270
140195e06:	48 33 c4             	xor    %rsp,%rax
140195e09:	48 89 85 60 0a 00 00 	mov    %rax,0xa60(%rbp)
140195e10:	44 8b 11             	mov    (%rcx),%r10d
140195e13:	4c 8d 1d e6 a1 e6 ff 	lea    -0x195e1a(%rip),%r11        # 0x140000000
140195e1a:	8a 42 08             	mov    0x8(%rdx),%al
140195e1d:	f6 d8                	neg    %al
140195e1f:	48 89 4c 24 58       	mov    %rcx,0x58(%rsp)
140195e24:	48 89 54 24 70       	mov    %rdx,0x70(%rsp)
140195e29:	48 8b d1             	mov    %rcx,%rdx
140195e2c:	8b 49 04             	mov    0x4(%rcx),%ecx
140195e2f:	1b c0                	sbb    %eax,%eax
140195e31:	83 e0 1d             	and    $0x1d,%eax
140195e34:	45 33 f6             	xor    %r14d,%r14d
140195e37:	83 c0 19             	add    $0x19,%eax
140195e3a:	44 89 b5 50 01 00 00 	mov    %r14d,0x150(%rbp)
140195e41:	45 85 d2             	test   %r10d,%r10d
140195e44:	89 44 24 54          	mov    %eax,0x54(%rsp)
140195e48:	8b c1                	mov    %ecx,%eax
140195e4a:	4c 8d 4a 08          	lea    0x8(%rdx),%r9
140195e4e:	45 0f 48 d6          	cmovs  %r14d,%r10d
140195e52:	41 8d 5e 26          	lea    0x26(%r14),%ebx
140195e56:	44 3b d1             	cmp    %ecx,%r10d
140195e59:	45 8b fe             	mov    %r14d,%r15d
140195e5c:	45 8b e6             	mov    %r14d,%r12d
140195e5f:	45 8b ee             	mov    %r14d,%r13d
140195e62:	41 0f 42 c2          	cmovb  %r10d,%eax
140195e66:	44 2b d0             	sub    %eax,%r10d
140195e69:	4c 03 c8             	add    %rax,%r9
140195e6c:	48 8d 42 08          	lea    0x8(%rdx),%rax
140195e70:	44 89 54 24 50       	mov    %r10d,0x50(%rsp)
140195e75:	48 03 c1             	add    %rcx,%rax
140195e78:	4c 89 4c 24 78       	mov    %r9,0x78(%rsp)
140195e7d:	8b c8                	mov    %eax,%ecx
140195e7f:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
140195e84:	41 2b c9             	sub    %r9d,%ecx
140195e87:	4c 8d 52 08          	lea    0x8(%rdx),%r10
140195e8b:	89 4c 24 30          	mov    %ecx,0x30(%rsp)
140195e8f:	4d 3b d1             	cmp    %r9,%r10
140195e92:	0f 84 3a 06 00 00    	je     0x1401964d2
140195e98:	41 83 fd 09          	cmp    $0x9,%r13d
140195e9c:	0f 85 f2 00 00 00    	jne    0x140195f94
140195ea2:	45 85 ff             	test   %r15d,%r15d
140195ea5:	74 7a                	je     0x140195f21
140195ea7:	45 8b c6             	mov    %r14d,%r8d
140195eaa:	45 8b ce             	mov    %r14d,%r9d
140195ead:	41 8b d1             	mov    %r9d,%edx
140195eb0:	41 ff c1             	inc    %r9d
140195eb3:	8b 84 95 54 01 00 00 	mov    0x154(%rbp,%rdx,4),%eax
140195eba:	48 69 c8 00 ca 9a 3b 	imul   $0x3b9aca00,%rax,%rcx
140195ec1:	41 8b c0             	mov    %r8d,%eax
140195ec4:	48 03 c8             	add    %rax,%rcx
140195ec7:	4c 8b c1             	mov    %rcx,%r8
140195eca:	89 8c 95 54 01 00 00 	mov    %ecx,0x154(%rbp,%rdx,4)
140195ed1:	49 c1 e8 20          	shr    $0x20,%r8
140195ed5:	45 3b cf             	cmp    %r15d,%r9d
140195ed8:	75 d3                	jne    0x140195ead
140195eda:	4c 8b 4c 24 78       	mov    0x78(%rsp),%r9
140195edf:	45 85 c0             	test   %r8d,%r8d
140195ee2:	74 36                	je     0x140195f1a
140195ee4:	83 bd 50 01 00 00 73 	cmpl   $0x73,0x150(%rbp)
140195eeb:	73 21                	jae    0x140195f0e
140195eed:	8b 85 50 01 00 00    	mov    0x150(%rbp),%eax
140195ef3:	44 89 84 85 54 01 00 	mov    %r8d,0x154(%rbp,%rax,4)
140195efa:	00
140195efb:	44 8b bd 50 01 00 00 	mov    0x150(%rbp),%r15d
140195f02:	41 ff c7             	inc    %r15d
140195f05:	44 89 bd 50 01 00 00 	mov    %r15d,0x150(%rbp)
140195f0c:	eb 13                	jmp    0x140195f21
140195f0e:	45 8b fe             	mov    %r14d,%r15d
140195f11:	44 89 b5 50 01 00 00 	mov    %r14d,0x150(%rbp)
140195f18:	eb 07                	jmp    0x140195f21
140195f1a:	44 8b bd 50 01 00 00 	mov    0x150(%rbp),%r15d
140195f21:	45 85 e4             	test   %r12d,%r12d
140195f24:	74 68                	je     0x140195f8e
140195f26:	45 8b c6             	mov    %r14d,%r8d
140195f29:	45 85 ff             	test   %r15d,%r15d
140195f2c:	74 2d                	je     0x140195f5b
140195f2e:	41 8b d0             	mov    %r8d,%edx
140195f31:	41 ff c0             	inc    %r8d
140195f34:	41 8b c4             	mov    %r12d,%eax
140195f37:	8b 8c 95 54 01 00 00 	mov    0x154(%rbp,%rdx,4),%ecx
140195f3e:	48 03 c8             	add    %rax,%rcx
140195f41:	4c 8b e1             	mov    %rcx,%r12
140195f44:	89 8c 95 54 01 00 00 	mov    %ecx,0x154(%rbp,%rdx,4)
140195f4b:	44 8b bd 50 01 00 00 	mov    0x150(%rbp),%r15d
140195f52:	49 c1 ec 20          	shr    $0x20,%r12
140195f56:	45 3b c7             	cmp    %r15d,%r8d
140195f59:	75 d3                	jne    0x140195f2e
140195f5b:	45 85 e4             	test   %r12d,%r12d
140195f5e:	74 2e                	je     0x140195f8e
140195f60:	41 83 ff 73          	cmp    $0x73,%r15d
140195f64:	73 1e                	jae    0x140195f84
140195f66:	41 8b c7             	mov    %r15d,%eax
140195f69:	44 89 a4 85 54 01 00 	mov    %r12d,0x154(%rbp,%rax,4)
140195f70:	00
140195f71:	44 8b bd 50 01 00 00 	mov    0x150(%rbp),%r15d
140195f78:	41 ff c7             	inc    %r15d
140195f7b:	44 89 bd 50 01 00 00 	mov    %r15d,0x150(%rbp)
140195f82:	eb 0a                	jmp    0x140195f8e
140195f84:	45 8b fe             	mov    %r14d,%r15d
140195f87:	44 89 b5 50 01 00 00 	mov    %r14d,0x150(%rbp)
140195f8e:	45 8b e6             	mov    %r14d,%r12d
140195f91:	45 8b ee             	mov    %r14d,%r13d
140195f94:	41 0f b6 02          	movzbl (%r10),%eax
140195f98:	43 8d 0c a4          	lea    (%r12,%r12,4),%ecx
140195f9c:	41 ff c5             	inc    %r13d
140195f9f:	49 ff c2             	inc    %r10
140195fa2:	44 8d 24 48          	lea    (%rax,%rcx,2),%r12d
140195fa6:	4d 3b d1             	cmp    %r9,%r10
140195fa9:	0f 85 e9 fe ff ff    	jne    0x140195e98
140195faf:	45 85 ed             	test   %r13d,%r13d
140195fb2:	0f 84 1a 05 00 00    	je     0x1401964d2
140195fb8:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
140195fbd:	41 f7 e5             	mul    %r13d
140195fc0:	8b c2                	mov    %edx,%eax
140195fc2:	c1 e8 03             	shr    $0x3,%eax
140195fc5:	89 44 24 38          	mov    %eax,0x38(%rsp)
140195fc9:	8b c8                	mov    %eax,%ecx
140195fcb:	89 44 24 40          	mov    %eax,0x40(%rsp)
140195fcf:	85 c0                	test   %eax,%eax
140195fd1:	0f 84 d7 03 00 00    	je     0x1401963ae
140195fd7:	3b cb                	cmp    %ebx,%ecx
140195fd9:	8b c1                	mov    %ecx,%eax
140195fdb:	0f 47 c3             	cmova  %ebx,%eax
140195fde:	33 d2                	xor    %edx,%edx
140195fe0:	89 44 24 3c          	mov    %eax,0x3c(%rsp)
140195fe4:	ff c8                	dec    %eax
140195fe6:	8b f8                	mov    %eax,%edi
140195fe8:	41 0f b6 8c 83 a2 26 	movzbl 0x2226a2(%r11,%rax,4),%ecx
140195fef:	22 00
140195ff1:	41 0f b6 b4 83 a3 26 	movzbl 0x2226a3(%r11,%rax,4),%esi
140195ff8:	22 00
140195ffa:	8b d9                	mov    %ecx,%ebx
140195ffc:	48 c1 e3 02          	shl    $0x2,%rbx
140196000:	4c 8b c3             	mov    %rbx,%r8
140196003:	8d 04 0e             	lea    (%rsi,%rcx,1),%eax
140196006:	48 8d 8d c4 06 00 00 	lea    0x6c4(%rbp),%rcx
14019600d:	89 85 c0 06 00 00    	mov    %eax,0x6c0(%rbp)
140196013:	e8 58 2a ff ff       	call   0x140188a70
140196018:	48 8d 0d e1 9f e6 ff 	lea    -0x19601f(%rip),%rcx        # 0x140000000
14019601f:	48 c1 e6 02          	shl    $0x2,%rsi
140196023:	0f b7 84 b9 a0 26 22 	movzwl 0x2226a0(%rcx,%rdi,4),%eax
14019602a:	00
14019602b:	48 8d 91 90 1d 22 00 	lea    0x221d90(%rcx),%rdx
140196032:	48 8d 8d c4 06 00 00 	lea    0x6c4(%rbp),%rcx
140196039:	4c 8b c6             	mov    %rsi,%r8
14019603c:	48 03 cb             	add    %rbx,%rcx
14019603f:	48 8d 14 82          	lea    (%rdx,%rax,4),%rdx
140196043:	e8 78 23 ff ff       	call   0x1401883c0
140196048:	8b bd c0 06 00 00    	mov    0x6c0(%rbp),%edi
14019604e:	83 ff 01             	cmp    $0x1,%edi
140196051:	0f 87 a6 00 00 00    	ja     0x1401960fd
140196057:	8b 85 c4 06 00 00    	mov    0x6c4(%rbp),%eax
14019605d:	85 c0                	test   %eax,%eax
14019605f:	75 0f                	jne    0x140196070
140196061:	45 8b fe             	mov    %r14d,%r15d
140196064:	44 89 b5 50 01 00 00 	mov    %r14d,0x150(%rbp)
14019606b:	e9 15 03 00 00       	jmp    0x140196385
140196070:	83 f8 01             	cmp    $0x1,%eax
140196073:	0f 84 0c 03 00 00    	je     0x140196385
140196079:	45 85 ff             	test   %r15d,%r15d
14019607c:	0f 84 03 03 00 00    	je     0x140196385
140196082:	45 8b c6             	mov    %r14d,%r8d
140196085:	45 8b ce             	mov    %r14d,%r9d
140196088:	4c 8b d0             	mov    %rax,%r10
14019608b:	41 8b d1             	mov    %r9d,%edx
14019608e:	41 ff c1             	inc    %r9d
140196091:	41 8b c0             	mov    %r8d,%eax
140196094:	8b 8c 95 54 01 00 00 	mov    0x154(%rbp,%rdx,4),%ecx
14019609b:	49 0f af ca          	imul   %r10,%rcx
14019609f:	48 03 c8             	add    %rax,%rcx
1401960a2:	4c 8b c1             	mov    %rcx,%r8
1401960a5:	89 8c 95 54 01 00 00 	mov    %ecx,0x154(%rbp,%rdx,4)
1401960ac:	49 c1 e8 20          	shr    $0x20,%r8
1401960b0:	45 3b cf             	cmp    %r15d,%r9d
1401960b3:	75 d6                	jne    0x14019608b
1401960b5:	45 85 c0             	test   %r8d,%r8d
1401960b8:	0f 84 c0 02 00 00    	je     0x14019637e
1401960be:	83 bd 50 01 00 00 73 	cmpl   $0x73,0x150(%rbp)
1401960c5:	73 24                	jae    0x1401960eb
1401960c7:	8b 85 50 01 00 00    	mov    0x150(%rbp),%eax
1401960cd:	44 89 84 85 54 01 00 	mov    %r8d,0x154(%rbp,%rax,4)
1401960d4:	00
1401960d5:	44 8b bd 50 01 00 00 	mov    0x150(%rbp),%r15d
1401960dc:	41 ff c7             	inc    %r15d
1401960df:	44 89 bd 50 01 00 00 	mov    %r15d,0x150(%rbp)
1401960e6:	e9 9a 02 00 00       	jmp    0x140196385
1401960eb:	45 8b fe             	mov    %r14d,%r15d
1401960ee:	44 89 b5 50 01 00 00 	mov    %r14d,0x150(%rbp)
1401960f5:	41 8a c6             	mov    %r14b,%al
1401960f8:	e9 8a 02 00 00       	jmp    0x140196387
1401960fd:	41 83 ff 01          	cmp    $0x1,%r15d
140196101:	0f 87 ad 00 00 00    	ja     0x1401961b4
140196107:	8b 9d 54 01 00 00    	mov    0x154(%rbp),%ebx
14019610d:	4c 8b c7             	mov    %rdi,%r8
140196110:	49 c1 e0 02          	shl    $0x2,%r8
140196114:	44 8b ff             	mov    %edi,%r15d
140196117:	89 bd 50 01 00 00    	mov    %edi,0x150(%rbp)
14019611d:	4d 85 c0             	test   %r8,%r8
140196120:	74 40                	je     0x140196162
140196122:	b8 cc 01 00 00       	mov    $0x1cc,%eax
140196127:	48 8d 8d 54 01 00 00 	lea    0x154(%rbp),%rcx
14019612e:	4c 3b c0             	cmp    %rax,%r8
140196131:	77 0e                	ja     0x140196141
140196133:	48 8d 95 c4 06 00 00 	lea    0x6c4(%rbp),%rdx
14019613a:	e8 81 22 ff ff       	call   0x1401883c0
14019613f:	eb 1a                	jmp    0x14019615b
140196141:	4c 8b c0             	mov    %rax,%r8
140196144:	33 d2                	xor    %edx,%edx
140196146:	e8 25 29 ff ff       	call   0x140188a70
14019614b:	e8 bc 9d ff ff       	call   0x14018ff0c
140196150:	c7 00 22 00 00 00    	movl   $0x22,(%rax)
140196156:	e8 09 54 ff ff       	call   0x14018b564
14019615b:	44 8b bd 50 01 00 00 	mov    0x150(%rbp),%r15d
140196162:	85 db                	test   %ebx,%ebx
140196164:	0f 84 f7 fe ff ff    	je     0x140196061
14019616a:	83 fb 01             	cmp    $0x1,%ebx
14019616d:	0f 84 12 02 00 00    	je     0x140196385
140196173:	45 85 ff             	test   %r15d,%r15d
140196176:	0f 84 09 02 00 00    	je     0x140196385
14019617c:	45 8b c6             	mov    %r14d,%r8d
14019617f:	45 8b ce             	mov    %r14d,%r9d
140196182:	4c 8b d3             	mov    %rbx,%r10
140196185:	41 8b d1             	mov    %r9d,%edx
140196188:	41 ff c1             	inc    %r9d
14019618b:	41 8b c0             	mov    %r8d,%eax
14019618e:	8b 8c 95 54 01 00 00 	mov    0x154(%rbp,%rdx,4),%ecx
140196195:	49 0f af ca          	imul   %r10,%rcx
140196199:	48 03 c8             	add    %rax,%rcx
14019619c:	4c 8b c1             	mov    %rcx,%r8
14019619f:	89 8c 95 54 01 00 00 	mov    %ecx,0x154(%rbp,%rdx,4)
1401961a6:	49 c1 e8 20          	shr    $0x20,%r8
1401961aa:	45 3b cf             	cmp    %r15d,%r9d
1401961ad:	75 d6                	jne    0x140196185
1401961af:	e9 01 ff ff ff       	jmp    0x1401960b5
1401961b4:	41 3b ff             	cmp    %r15d,%edi
1401961b7:	44 89 b5 f0 04 00 00 	mov    %r14d,0x4f0(%rbp)
1401961be:	48 8d 95 54 01 00 00 	lea    0x154(%rbp),%rdx
1401961c5:	45 8b d6             	mov    %r14d,%r10d
1401961c8:	0f 92 c0             	setb   %al
1401961cb:	4c 8d 85 c4 06 00 00 	lea    0x6c4(%rbp),%r8
1401961d2:	84 c0                	test   %al,%al
1401961d4:	48 8d 8d c4 06 00 00 	lea    0x6c4(%rbp),%rcx