140191d59:	83 e0 07             	and    $0x7,%eax
140191d5c:	0f b6 4c 14 20       	movzbl 0x20(%rsp,%rdx,1),%ecx
140191d61:	0f ab c1             	bts    %eax,%ecx
140191d64:	4d 03 c3             	add    %r11,%r8
140191d67:	88 4c 14 20          	mov    %cl,0x20(%rsp,%rdx,1)
140191d6b:	41 8a 00             	mov    (%r8),%al
140191d6e:	84 c0                	test   %al,%al
140191d70:	75 dd                	jne    0x140191d4f
140191d72:	44 08 5c 24 20       	or     %r11b,0x20(%rsp)
140191d77:	eb 06                	jmp    0x140191d7f
140191d79:	45 03 cb             	add    %r11d,%r9d
140191d7c:	4d 03 d3             	add    %r11,%r10
140191d7f:	45 0f b6 02          	movzbl (%r10),%r8d
140191d83:	41 8b d3             	mov    %r11d,%edx
140191d86:	41 8b c8             	mov    %r8d,%ecx
140191d89:	49 c1 e8 03          	shr    $0x3,%r8
140191d8d:	83 e1 07             	and    $0x7,%ecx
140191d90:	d3 e2                	shl    %cl,%edx
140191d92:	42 84 54 04 20       	test   %dl,0x20(%rsp,%r8,1)
140191d97:	74 e0                	je     0x140191d79
140191d99:	49 63 c1             	movslq %r9d,%rax
140191d9c:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140191da1:	48 33 cc             	xor    %rsp,%rcx
140191da4:	e8 27 45 ff ff       	call   0x1401862d0
140191da9:	48 83 c4 58          	add    $0x58,%rsp
140191dad:	c3                   	ret
140191dae:	e8 75 4c ff ff       	call   0x140186a28
140191db3:	cc                   	int3
140191db4:	48 83 ec 28          	sub    $0x28,%rsp
140191db8:	e8 37 36 01 00       	call   0x1401a53f4
140191dbd:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140191dc2:	48 8b 88 90 00 00 00 	mov    0x90(%rax),%rcx
140191dc9:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
140191dce:	48 8b c8             	mov    %rax,%rcx
140191dd1:	e8 f2 5e 01 00       	call   0x1401a7cc8
140191dd6:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140191ddb:	48 8b 80 f8 00 00 00 	mov    0xf8(%rax),%rax
140191de2:	48 83 c4 28          	add    $0x28,%rsp
140191de6:	c3                   	ret
140191de7:	cc                   	int3
140191de8:	8b c1                	mov    %ecx,%eax
140191dea:	44 8b c1             	mov    %ecx,%r8d
140191ded:	25 03 00 00 80       	and    $0x80000003,%eax
140191df2:	7d 07                	jge    0x140191dfb
140191df4:	ff c8                	dec    %eax
140191df6:	83 c8 fc             	or     $0xfffffffc,%eax
140191df9:	ff c0                	inc    %eax
140191dfb:	41 b9 1f 85 eb 51    	mov    $0x51eb851f,%r9d
140191e01:	85 c0                	test   %eax,%eax
140191e03:	75 1b                	jne    0x140191e20
140191e05:	41 8b c1             	mov    %r9d,%eax
140191e08:	41 f7 e8             	imul   %r8d
140191e0b:	c1 fa 05             	sar    $0x5,%edx
140191e0e:	8b ca                	mov    %edx,%ecx
140191e10:	c1 e9 1f             	shr    $0x1f,%ecx
140191e13:	03 d1                	add    %ecx,%edx
140191e15:	6b d2 64             	imul   $0x64,%edx,%edx
140191e18:	44 3b c2             	cmp    %edx,%r8d
140191e1b:	74 03                	je     0x140191e20
140191e1d:	b0 01                	mov    $0x1,%al
140191e1f:	c3                   	ret
140191e20:	41 8d 88 6c 07 00 00 	lea    0x76c(%r8),%ecx
140191e27:	41 8b c1             	mov    %r9d,%eax
140191e2a:	f7 e9                	imul   %ecx
140191e2c:	c1 fa 07             	sar    $0x7,%edx
140191e2f:	8b c2                	mov    %edx,%eax
140191e31:	c1 e8 1f             	shr    $0x1f,%eax
140191e34:	03 d0                	add    %eax,%edx
140191e36:	69 c2 90 01 00 00    	imul   $0x190,%edx,%eax
140191e3c:	3b c8                	cmp    %eax,%ecx
140191e3e:	0f 94 c0             	sete   %al
140191e41:	c3                   	ret
140191e42:	cc                   	int3
140191e43:	cc                   	int3
140191e44:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140191e49:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140191e4e:	57                   	push   %rdi
140191e4f:	48 83 ec 20          	sub    $0x20,%rsp
140191e53:	44 8d 4a 06          	lea    0x6(%rdx),%r9d
140191e57:	8b f2                	mov    %edx,%esi
140191e59:	44 8b d1             	mov    %ecx,%r10d
140191e5c:	b8 93 24 49 92       	mov    $0x92492493,%eax
140191e61:	41 f7 e9             	imul   %r9d
140191e64:	41 8b c8             	mov    %r8d,%ecx
140191e67:	41 8b d8             	mov    %r8d,%ebx
140191e6a:	41 03 d1             	add    %r9d,%edx
140191e6d:	c1 fa 02             	sar    $0x2,%edx
140191e70:	8b c2                	mov    %edx,%eax
140191e72:	c1 e8 1f             	shr    $0x1f,%eax
140191e75:	03 d0                	add    %eax,%edx
140191e77:	6b c2 07             	imul   $0x7,%edx,%eax
140191e7a:	44 2b c8             	sub    %eax,%r9d
140191e7d:	b8 93 24 49 92       	mov    $0x92492493,%eax
140191e82:	41 2b c9             	sub    %r9d,%ecx
140191e85:	83 c1 07             	add    $0x7,%ecx
140191e88:	f7 e9                	imul   %ecx
140191e8a:	8d 3c 11             	lea    (%rcx,%rdx,1),%edi
140191e8d:	41 8b ca             	mov    %r10d,%ecx
140191e90:	c1 ff 02             	sar    $0x2,%edi
140191e93:	8b c7                	mov    %edi,%eax
140191e95:	c1 e8 1f             	shr    $0x1f,%eax
140191e98:	03 f8                	add    %eax,%edi
140191e9a:	e8 49 ff ff ff       	call   0x140191de8
140191e9f:	44 0f b6 c0          	movzbl %al,%r8d
140191ea3:	2b f3                	sub    %ebx,%esi
140191ea5:	81 c6 73 01 00 00    	add    $0x173,%esi
140191eab:	b8 93 24 49 92       	mov    $0x92492493,%eax
140191eb0:	f7 ee                	imul   %esi
140191eb2:	b8 93 24 49 92       	mov    $0x92492493,%eax
140191eb7:	44 8b cb             	mov    %ebx,%r9d
140191eba:	03 d6                	add    %esi,%edx
140191ebc:	45 2b c8             	sub    %r8d,%r9d
140191ebf:	c1 fa 02             	sar    $0x2,%edx
140191ec2:	8b ca                	mov    %edx,%ecx
140191ec4:	c1 e9 1f             	shr    $0x1f,%ecx
140191ec7:	03 d1                	add    %ecx,%edx
140191ec9:	6b ca 07             	imul   $0x7,%edx,%ecx
140191ecc:	2b f1                	sub    %ecx,%esi
140191ece:	41 8d 88 6d 01 00 00 	lea    0x16d(%r8),%ecx
140191ed5:	03 ce                	add    %esi,%ecx
140191ed7:	f7 e9                	imul   %ecx
140191ed9:	03 d1                	add    %ecx,%edx
140191edb:	c1 fa 02             	sar    $0x2,%edx
140191ede:	8b c2                	mov    %edx,%eax
140191ee0:	c1 e8 1f             	shr    $0x1f,%eax
140191ee3:	03 d0                	add    %eax,%edx
140191ee5:	6b c2 07             	imul   $0x7,%edx,%eax
140191ee8:	2b c8                	sub    %eax,%ecx
140191eea:	41 81 f9 6c 01 00 00 	cmp    $0x16c,%r9d
140191ef1:	7c 05                	jl     0x140191ef8
140191ef3:	83 f9 02             	cmp    $0x2,%ecx
140191ef6:	74 1c                	je     0x140191f14
140191ef8:	41 81 f9 6b 01 00 00 	cmp    $0x16b,%r9d
140191eff:	7c 05                	jl     0x140191f06
140191f01:	83 f9 03             	cmp    $0x3,%ecx
140191f04:	74 0e                	je     0x140191f14
140191f06:	41 81 f9 6a 01 00 00 	cmp    $0x16a,%r9d
140191f0d:	7c 0a                	jl     0x140191f19
140191f0f:	83 f9 04             	cmp    $0x4,%ecx
140191f12:	75 05                	jne    0x140191f19
140191f14:	83 c8 ff             	or     $0xffffffff,%eax
140191f17:	eb 0d                	jmp    0x140191f26
140191f19:	8d 4e fe             	lea    -0x2(%rsi),%ecx
140191f1c:	8b c7                	mov    %edi,%eax
140191f1e:	83 f9 02             	cmp    $0x2,%ecx
140191f21:	77 03                	ja     0x140191f26
140191f23:	8d 47 01             	lea    0x1(%rdi),%eax
140191f26:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140191f2b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140191f30:	48 83 c4 20          	add    $0x20,%rsp
140191f34:	5f                   	pop    %rdi
140191f35:	c3                   	ret
140191f36:	cc                   	int3
140191f37:	cc                   	int3
140191f38:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140191f3d:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140191f42:	55                   	push   %rbp
140191f43:	56                   	push   %rsi
140191f44:	57                   	push   %rdi
140191f45:	48 8b ec             	mov    %rsp,%rbp
140191f48:	48 83 ec 50          	sub    $0x50,%rsp
140191f4c:	49 8b f0             	mov    %r8,%rsi
140191f4f:	49 8b f9             	mov    %r9,%rdi
140191f52:	44 0f b7 c2          	movzwl %dx,%r8d
140191f56:	41 8b d0             	mov    %r8d,%edx
140191f59:	41 83 f8 5a          	cmp    $0x5a,%r8d
140191f5d:	0f 8e 55 08 00 00    	jle    0x1401927b8
140191f63:	41 b9 62 00 00 00    	mov    $0x62,%r9d
140191f69:	83 fa 6e             	cmp    $0x6e,%edx
140191f6c:	0f 8f 73 04 00 00    	jg     0x1401923e5
140191f72:	0f 84 3a 04 00 00    	je     0x1401923b2
140191f78:	83 ea 61             	sub    $0x61,%edx
140191f7b:	0f 84 cb 03 00 00    	je     0x14019234c
140191f81:	83 ea 01             	sub    $0x1,%edx
140191f84:	0f 84 7c 03 00 00    	je     0x140192306
140191f8a:	83 ea 01             	sub    $0x1,%edx
140191f8d:	0f 84 2c 01 00 00    	je     0x1401920bf
140191f93:	83 ea 01             	sub    $0x1,%edx
140191f96:	0f 84 fb 00 00 00    	je     0x140192097
140191f9c:	83 ea 01             	sub    $0x1,%edx
140191f9f:	0f 84 d5 00 00 00    	je     0x14019207a
140191fa5:	83 ea 02             	sub    $0x2,%edx
140191fa8:	74 72                	je     0x14019201c
140191faa:	83 ea 01             	sub    $0x1,%edx
140191fad:	75 08                	jne    0x140191fb7
140191faf:	45 8b c1             	mov    %r9d,%r8d
140191fb2:	41 8b d1             	mov    %r9d,%edx
140191fb5:	eb b2                	jmp    0x140191f69
140191fb7:	83 ea 02             	sub    $0x2,%edx
140191fba:	74 2c                	je     0x140191fe8
140191fbc:	83 fa 03             	cmp    $0x3,%edx
140191fbf:	0f 85 9d 03 00 00    	jne    0x140192362
140191fc5:	8b 56 10             	mov    0x10(%rsi),%edx
140191fc8:	83 fa 0b             	cmp    $0xb,%edx
140191fcb:	0f 87 81 03 00 00    	ja     0x140192352
140191fd1:	8a 45 50             	mov    0x50(%rbp),%al
140191fd4:	f6 d8                	neg    %al
140191fd6:	1a c9                	sbb    %cl,%cl
140191fd8:	f6 d1                	not    %cl
140191fda:	80 e1 30             	and    $0x30,%cl
140191fdd:	0f be c1             	movsbl %cl,%eax
140191fe0:	8d 4a 01             	lea    0x1(%rdx),%ecx
140191fe3:	e9 cd 00 00 00       	jmp    0x1401920b5
140191fe8:	8b 56 1c             	mov    0x1c(%rsi),%edx
140191feb:	81 fa 6d 01 00 00    	cmp    $0x16d,%edx
140191ff1:	0f 87 5b 03 00 00    	ja     0x140192352
140191ff7:	8a 45 50             	mov    0x50(%rbp),%al
140191ffa:	4c 8b 4d 40          	mov    0x40(%rbp),%r9
140191ffe:	f6 d8                	neg    %al
140192000:	1a c9                	sbb    %cl,%cl
140192002:	f6 d1                	not    %cl
140192004:	80 e1 30             	and    $0x30,%cl
140192007:	0f be c1             	movsbl %cl,%eax
14019200a:	8d 4a 01             	lea    0x1(%rdx),%ecx
14019200d:	66 89 44 24 20       	mov    %ax,0x20(%rsp)
140192012:	ba 03 00 00 00       	mov    $0x3,%edx
140192017:	e9 73 0a 00 00       	jmp    0x140192a8f
14019201c:	8b 46 14             	mov    0x14(%rsi),%eax
14019201f:	89 45 28             	mov    %eax,0x28(%rbp)
140192022:	05 6c 07 00 00       	add    $0x76c,%eax
140192027:	3d 0f 27 00 00       	cmp    $0x270f,%eax
14019202c:	0f 87 20 03 00 00    	ja     0x140192352
140192032:	44 8b 46 1c          	mov    0x1c(%rsi),%r8d
140192036:	8b 56 18             	mov    0x18(%rsi),%edx
140192039:	8b 75 28             	mov    0x28(%rbp),%esi
14019203c:	8b ce                	mov    %esi,%ecx
14019203e:	e8 01 fe ff ff       	call   0x140191e44
140192043:	85 c0                	test   %eax,%eax
140192045:	75 04                	jne    0x14019204b
140192047:	ff ce                	dec    %esi
140192049:	eb 04                	jmp    0x14019204f
14019204b:	7f 02                	jg     0x14019204f
14019204d:	ff c6                	inc    %esi
14019204f:	8d 8e 6c 07 00 00    	lea    0x76c(%rsi),%ecx
140192055:	b8 1f 85 eb 51       	mov    $0x51eb851f,%eax
14019205a:	f7 e9                	imul   %ecx
14019205c:	be 30 00 00 00       	mov    $0x30,%esi
140192061:	c1 fa 05             	sar    $0x5,%edx
140192064:	8b c2                	mov    %edx,%eax
140192066:	66 89 74 24 20       	mov    %si,0x20(%rsp)
14019206b:	c1 e8 1f             	shr    $0x1f,%eax
14019206e:	03 d0                	add    %eax,%edx
140192070:	6b c2 64             	imul   $0x64,%edx,%eax
140192073:	2b c8                	sub    %eax,%ecx
140192075:	e9 0c 0a 00 00       	jmp    0x140192a86
14019207a:	8b 4e 0c             	mov    0xc(%rsi),%ecx
14019207d:	8d 41 ff             	lea    -0x1(%rcx),%eax
140192080:	83 f8 1e             	cmp    $0x1e,%eax
140192083:	0f 87 c9 02 00 00    	ja     0x140192352
140192089:	8a 45 50             	mov    0x50(%rbp),%al
14019208c:	f6 d8                	neg    %al
14019208e:	1a d2                	sbb    %dl,%dl
140192090:	f6 d2                	not    %dl
140192092:	80 e2 20             	and    $0x20,%dl
140192095:	eb 1b                	jmp    0x1401920b2
140192097:	8b 4e 0c             	mov    0xc(%rsi),%ecx
14019209a:	8d 41 ff             	lea    -0x1(%rcx),%eax
14019209d:	83 f8 1e             	cmp    $0x1e,%eax
1401920a0:	0f 87 ac 02 00 00    	ja     0x140192352
1401920a6:	8a 45 50             	mov    0x50(%rbp),%al
1401920a9:	f6 d8                	neg    %al
1401920ab:	1a d2                	sbb    %dl,%dl
1401920ad:	f6 d2                	not    %dl
1401920af:	80 e2 30             	and    $0x30,%dl
1401920b2:	0f be c2             	movsbl %dl,%eax
1401920b5:	66 89 44 24 20       	mov    %ax,0x20(%rsp)
1401920ba:	e9 c7 09 00 00       	jmp    0x140192a86
1401920bf:	48 8b 45 48          	mov    0x48(%rbp),%rax
1401920c3:	4c 8d 0d f6 39 09 00 	lea    0x939f6(%rip),%r9        # 0x140225ac0
1401920ca:	33 db                	xor    %ebx,%ebx
1401920cc:	49 3b c1             	cmp    %r9,%rax
1401920cf:	0f 85 b2 01 00 00    	jne    0x140192287
1401920d5:	38 5d 50             	cmp    %bl,0x50(%rbp)
1401920d8:	0f 85 a9 01 00 00    	jne    0x140192287
1401920de:	88 5c 24 30          	mov    %bl,0x30(%rsp)
1401920e2:	8d 53 61             	lea    0x61(%rbx),%edx
1401920e5:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1401920ea:	4c 8b cf             	mov    %rdi,%r9
1401920ed:	48 8b 45 40          	mov    0x40(%rbp),%rax
1401920f1:	4c 8b c6             	mov    %rsi,%r8
1401920f4:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1401920f9:	e8 3a fe ff ff       	call   0x140191f38
1401920fe:	84 c0                	test   %al,%al
140192100:	75 10                	jne    0x140192112
140192102:	e8 05 de ff ff       	call   0x14018ff0c
140192107:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14019210d:	e9 50 02 00 00       	jmp    0x140192362
140192112:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
140192116:	4c 8d 05 43 fc 08 00 	lea    0x8fc43(%rip),%r8        # 0x140221d60
14019211d:	48 39 19             	cmp    %rbx,(%rcx)
140192120:	74 1f                	je     0x140192141
140192122:	45 0f b7 08          	movzwl (%r8),%r9d
140192126:	66 45 85 c9          	test   %r9w,%r9w
14019212a:	74 15                	je     0x140192141
14019212c:	48 8b 07             	mov    (%rdi),%rax
14019212f:	49 83 c0 02          	add    $0x2,%r8
140192133:	66 44 89 08          	mov    %r9w,(%rax)
140192137:	48 83 07 02          	addq   $0x2,(%rdi)
14019213b:	48 83 29 01          	subq   $0x1,(%rcx)
14019213f:	75 e1                	jne    0x140192122
140192141:	48 8b 45 48          	mov    0x48(%rbp),%rax
140192145:	ba 62 00 00 00       	mov    $0x62,%edx
14019214a:	88 5c 24 30          	mov    %bl,0x30(%rsp)
14019214e:	4c 8b cf             	mov    %rdi,%r9
140192151:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140192156:	4c 8b c6             	mov    %rsi,%r8
140192159:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14019215e:	48 8b 4d 20          	mov    0x20(%rbp),%rcx
140192162:	e8 d1 fd ff ff       	call   0x140191f38
140192167:	84 c0                	test   %al,%al
140192169:	74 97                	je     0x140192102
14019216b:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
14019216f:	48 8d 15 ea fb 08 00 	lea    0x8fbea(%rip),%rdx        # 0x140221d60
140192176:	48 39 19             	cmp    %rbx,(%rcx)
140192179:	74 1f                	je     0x14019219a
14019217b:	44 0f b7 02          	movzwl (%rdx),%r8d
14019217f:	66 45 85 c0          	test   %r8w,%r8w
140192183:	74 15                	je     0x14019219a
140192185:	48 8b 07             	mov    (%rdi),%rax
140192188:	48 83 c2 02          	add    $0x2,%rdx
14019218c:	66 44 89 00          	mov    %r8w,(%rax)
140192190:	48 83 07 02          	addq   $0x2,(%rdi)
140192194:	48 83 29 01          	subq   $0x1,(%rcx)
140192198:	75 e1                	jne    0x14019217b
14019219a:	48 8b 45 48          	mov    0x48(%rbp),%rax
14019219e:	ba 65 00 00 00       	mov    $0x65,%edx
1401921a3:	88 5c 24 30          	mov    %bl,0x30(%rsp)
1401921a7:	4c 8b cf             	mov    %rdi,%r9
1401921aa:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1401921af:	4c 8b c6             	mov    %rsi,%r8
1401921b2:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1401921b7:	48 8b 4d 20          	mov    0x20(%rbp),%rcx
1401921bb:	e8 78 fd ff ff       	call   0x140191f38
1401921c0:	84 c0                	test   %al,%al
1401921c2:	0f 84 3a ff ff ff    	je     0x140192102
1401921c8:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
1401921cc:	48 8d 15 8d fb 08 00 	lea    0x8fb8d(%rip),%rdx        # 0x140221d60
1401921d3:	48 39 19             	cmp    %rbx,(%rcx)
1401921d6:	74 1f                	je     0x1401921f7
1401921d8:	44 0f b7 02          	movzwl (%rdx),%r8d
1401921dc:	66 45 85 c0          	test   %r8w,%r8w
1401921e0:	74 15                	je     0x1401921f7
1401921e2:	48 8b 07             	mov    (%rdi),%rax
1401921e5:	48 83 c2 02          	add    $0x2,%rdx
1401921e9:	66 44 89 00          	mov    %r8w,(%rax)
1401921ed:	48 83 07 02          	addq   $0x2,(%rdi)
1401921f1:	48 83 29 01          	subq   $0x1,(%rcx)
1401921f5:	75 e1                	jne    0x1401921d8
1401921f7:	48 8b 45 48          	mov    0x48(%rbp),%rax
1401921fb:	ba 54 00 00 00       	mov    $0x54,%edx