140183d2c:	0f b6 47 01          	movzbl 0x1(%rdi),%eax
140183d30:	48 8b 0e             	mov    (%rsi),%rcx
140183d33:	88 01                	mov    %al,(%rcx)
140183d35:	48 ff 06             	incq   (%rsi)
140183d38:	48 83 c7 02          	add    $0x2,%rdi
140183d3c:	eb 68                	jmp    0x140183da6
140183d3e:	0f b6 c1             	movzbl %cl,%eax
140183d41:	24 f0                	and    $0xf0,%al
140183d43:	3c e0                	cmp    $0xe0,%al
140183d45:	75 26                	jne    0x140183d6d
140183d47:	48 8b 06             	mov    (%rsi),%rax
140183d4a:	88 08                	mov    %cl,(%rax)
140183d4c:	48 ff 06             	incq   (%rsi)
140183d4f:	0f b6 47 01          	movzbl 0x1(%rdi),%eax
140183d53:	48 8b 0e             	mov    (%rsi),%rcx
140183d56:	88 01                	mov    %al,(%rcx)
140183d58:	48 ff 06             	incq   (%rsi)
140183d5b:	0f b6 47 02          	movzbl 0x2(%rdi),%eax
140183d5f:	48 8b 0e             	mov    (%rsi),%rcx
140183d62:	88 01                	mov    %al,(%rcx)
140183d64:	48 ff 06             	incq   (%rsi)
140183d67:	48 83 c7 03          	add    $0x3,%rdi
140183d6b:	eb 39                	jmp    0x140183da6
140183d6d:	0f b6 c1             	movzbl %cl,%eax
140183d70:	24 f8                	and    $0xf8,%al
140183d72:	3c f0                	cmp    $0xf0,%al
140183d74:	75 30                	jne    0x140183da6
140183d76:	49 8b 00             	mov    (%r8),%rax
140183d79:	88 08                	mov    %cl,(%rax)
140183d7b:	49 ff 00             	incq   (%r8)
140183d7e:	0f b6 47 01          	movzbl 0x1(%rdi),%eax
140183d82:	49 8b 08             	mov    (%r8),%rcx
140183d85:	88 01                	mov    %al,(%rcx)
140183d87:	49 ff 00             	incq   (%r8)
140183d8a:	0f b6 47 02          	movzbl 0x2(%rdi),%eax
140183d8e:	49 8b 08             	mov    (%r8),%rcx
140183d91:	88 01                	mov    %al,(%rcx)
140183d93:	49 ff 00             	incq   (%r8)
140183d96:	0f b6 47 03          	movzbl 0x3(%rdi),%eax
140183d9a:	49 8b 08             	mov    (%r8),%rcx
140183d9d:	88 01                	mov    %al,(%rcx)
140183d9f:	49 ff 00             	incq   (%r8)
140183da2:	48 83 c7 04          	add    $0x4,%rdi
140183da6:	ff 83 1c 01 00 00    	incl   0x11c(%rbx)
140183dac:	45 33 f6             	xor    %r14d,%r14d
140183daf:	33 ed                	xor    %ebp,%ebp
140183db1:	c7 83 24 01 00 00 00 	movl   $0x0,0x124(%rbx)
140183db8:	00 00 00
140183dbb:	e9 bc 01 00 00       	jmp    0x140183f7c
140183dc0:	85 ed                	test   %ebp,%ebp
140183dc2:	75 66                	jne    0x140183e2a
140183dc4:	3c 0a                	cmp    $0xa,%al
140183dc6:	75 62                	jne    0x140183e2a
140183dc8:	48 8b 43 48          	mov    0x48(%rbx),%rax
140183dcc:	48 83 c0 05          	add    $0x5,%rax
140183dd0:	48 3b 43 40          	cmp    0x40(%rbx),%rax
140183dd4:	72 10                	jb     0x140183de6
140183dd6:	48 8b cb             	mov    %rbx,%rcx
140183dd9:	e8 c2 06 00 00       	call   0x1401844a0
140183dde:	85 c0                	test   %eax,%eax
140183de0:	0f 84 e7 01 00 00    	je     0x140183fcd
140183de6:	8b 83 8c 00 00 00    	mov    0x8c(%rbx),%eax
140183dec:	83 f8 01             	cmp    $0x1,%eax
140183def:	75 09                	jne    0x140183dfa
140183df1:	48 8b 43 48          	mov    0x48(%rbx),%rax
140183df5:	c6 00 0d             	movb   $0xd,(%rax)
140183df8:	eb 1c                	jmp    0x140183e16
140183dfa:	83 f8 02             	cmp    $0x2,%eax
140183dfd:	74 10                	je     0x140183e0f
140183dff:	83 f8 03             	cmp    $0x3,%eax
140183e02:	75 16                	jne    0x140183e1a
140183e04:	48 8b 43 48          	mov    0x48(%rbx),%rax
140183e08:	c6 00 0d             	movb   $0xd,(%rax)
140183e0b:	48 ff 43 48          	incq   0x48(%rbx)
140183e0f:	48 8b 43 48          	mov    0x48(%rbx),%rax
140183e13:	c6 00 0a             	movb   $0xa,(%rax)
140183e16:	48 ff 43 48          	incq   0x48(%rbx)
140183e1a:	ff 83 18 01 00 00    	incl   0x118(%rbx)
140183e20:	c7 83 1c 01 00 00 00 	movl   $0x0,0x11c(%rbx)
140183e27:	00 00 00
140183e2a:	48 8b 43 48          	mov    0x48(%rbx),%rax
140183e2e:	48 8d 73 48          	lea    0x48(%rbx),%rsi
140183e32:	48 83 c0 05          	add    $0x5,%rax
140183e36:	4c 8b c6             	mov    %rsi,%r8
140183e39:	48 3b 43 40          	cmp    0x40(%rbx),%rax
140183e3d:	72 14                	jb     0x140183e53
140183e3f:	48 8b cb             	mov    %rbx,%rcx
140183e42:	e8 59 06 00 00       	call   0x1401844a0
140183e47:	85 c0                	test   %eax,%eax
140183e49:	0f 84 7e 01 00 00    	je     0x140183fcd
140183e4f:	4c 8d 43 48          	lea    0x48(%rbx),%r8
140183e53:	0f b6 0f             	movzbl (%rdi),%ecx
140183e56:	80 f9 0a             	cmp    $0xa,%cl
140183e59:	75 63                	jne    0x140183ebe
140183e5b:	48 8b 06             	mov    (%rsi),%rax
140183e5e:	48 83 c0 05          	add    $0x5,%rax
140183e62:	48 3b 43 40          	cmp    0x40(%rbx),%rax
140183e66:	72 0f                	jb     0x140183e77
140183e68:	48 8b cb             	mov    %rbx,%rcx
140183e6b:	49 8b f0             	mov    %r8,%rsi
140183e6e:	e8 2d 06 00 00       	call   0x1401844a0
140183e73:	85 c0                	test   %eax,%eax
140183e75:	74 3f                	je     0x140183eb6
140183e77:	8b 83 8c 00 00 00    	mov    0x8c(%rbx),%eax
140183e7d:	83 f8 01             	cmp    $0x1,%eax
140183e80:	75 08                	jne    0x140183e8a
140183e82:	48 8b 06             	mov    (%rsi),%rax
140183e85:	c6 00 0d             	movb   $0xd,(%rax)
140183e88:	eb 19                	jmp    0x140183ea3
140183e8a:	83 f8 02             	cmp    $0x2,%eax
140183e8d:	74 0e                	je     0x140183e9d
140183e8f:	83 f8 03             	cmp    $0x3,%eax
140183e92:	75 12                	jne    0x140183ea6
140183e94:	48 8b 06             	mov    (%rsi),%rax
140183e97:	c6 00 0d             	movb   $0xd,(%rax)
140183e9a:	48 ff 06             	incq   (%rsi)
140183e9d:	48 8b 06             	mov    (%rsi),%rax
140183ea0:	c6 00 0a             	movb   $0xa,(%rax)
140183ea3:	48 ff 06             	incq   (%rsi)
140183ea6:	ff 83 18 01 00 00    	incl   0x118(%rbx)
140183eac:	c7 83 1c 01 00 00 00 	movl   $0x0,0x11c(%rbx)
140183eb3:	00 00 00
140183eb6:	48 ff c7             	inc    %rdi
140183eb9:	e9 af 00 00 00       	jmp    0x140183f6d
140183ebe:	84 c9                	test   %cl,%cl
140183ec0:	78 10                	js     0x140183ed2
140183ec2:	49 8b 00             	mov    (%r8),%rax
140183ec5:	88 08                	mov    %cl,(%rax)
140183ec7:	49 ff 00             	incq   (%r8)
140183eca:	48 ff c7             	inc    %rdi
140183ecd:	e9 8b 00 00 00       	jmp    0x140183f5d
140183ed2:	0f b6 c1             	movzbl %cl,%eax
140183ed5:	24 e0                	and    $0xe0,%al
140183ed7:	3c c0                	cmp    $0xc0,%al
140183ed9:	75 1a                	jne    0x140183ef5
140183edb:	49 8b 00             	mov    (%r8),%rax
140183ede:	88 08                	mov    %cl,(%rax)
140183ee0:	49 ff 00             	incq   (%r8)
140183ee3:	0f b6 47 01          	movzbl 0x1(%rdi),%eax
140183ee7:	49 8b 08             	mov    (%r8),%rcx
140183eea:	88 01                	mov    %al,(%rcx)
140183eec:	49 ff 00             	incq   (%r8)
140183eef:	48 83 c7 02          	add    $0x2,%rdi
140183ef3:	eb 68                	jmp    0x140183f5d
140183ef5:	0f b6 c1             	movzbl %cl,%eax
140183ef8:	24 f0                	and    $0xf0,%al
140183efa:	3c e0                	cmp    $0xe0,%al
140183efc:	75 26                	jne    0x140183f24
140183efe:	49 8b 00             	mov    (%r8),%rax
140183f01:	88 08                	mov    %cl,(%rax)
140183f03:	49 ff 00             	incq   (%r8)
140183f06:	0f b6 47 01          	movzbl 0x1(%rdi),%eax
140183f0a:	49 8b 08             	mov    (%r8),%rcx
140183f0d:	88 01                	mov    %al,(%rcx)
140183f0f:	49 ff 00             	incq   (%r8)
140183f12:	0f b6 47 02          	movzbl 0x2(%rdi),%eax
140183f16:	49 8b 08             	mov    (%r8),%rcx
140183f19:	88 01                	mov    %al,(%rcx)
140183f1b:	49 ff 00             	incq   (%r8)
140183f1e:	48 83 c7 03          	add    $0x3,%rdi
140183f22:	eb 39                	jmp    0x140183f5d
140183f24:	0f b6 c1             	movzbl %cl,%eax
140183f27:	24 f8                	and    $0xf8,%al
140183f29:	3c f0                	cmp    $0xf0,%al
140183f2b:	75 30                	jne    0x140183f5d
140183f2d:	49 8b 00             	mov    (%r8),%rax
140183f30:	88 08                	mov    %cl,(%rax)
140183f32:	49 ff 00             	incq   (%r8)
140183f35:	0f b6 47 01          	movzbl 0x1(%rdi),%eax
140183f39:	49 8b 08             	mov    (%r8),%rcx
140183f3c:	88 01                	mov    %al,(%rcx)
140183f3e:	49 ff 00             	incq   (%r8)
140183f41:	0f b6 47 02          	movzbl 0x2(%rdi),%eax
140183f45:	49 8b 08             	mov    (%r8),%rcx
140183f48:	88 01                	mov    %al,(%rcx)
140183f4a:	49 ff 00             	incq   (%r8)
140183f4d:	0f b6 47 03          	movzbl 0x3(%rdi),%eax
140183f51:	49 8b 08             	mov    (%r8),%rcx
140183f54:	88 01                	mov    %al,(%rcx)
140183f56:	49 ff 00             	incq   (%r8)
140183f59:	48 83 c7 04          	add    $0x4,%rdi
140183f5d:	ff 83 18 01 00 00    	incl   0x118(%rbx)
140183f63:	c7 83 1c 01 00 00 00 	movl   $0x0,0x11c(%rbx)
140183f6a:	00 00 00
140183f6d:	c7 83 24 01 00 00 01 	movl   $0x1,0x124(%rbx)
140183f74:	00 00 00
140183f77:	bd 01 00 00 00       	mov    $0x1,%ebp
140183f7c:	be 04 00 00 00       	mov    $0x4,%esi
140183f81:	49 3b ff             	cmp    %r15,%rdi
140183f84:	0f 85 06 fb ff ff    	jne    0x140183a90
140183f8a:	85 ed                	test   %ebp,%ebp
140183f8c:	74 0c                	je     0x140183f9a
140183f8e:	48 8b cb             	mov    %rbx,%rcx
140183f91:	e8 aa ee ff ff       	call   0x140182e40
140183f96:	85 c0                	test   %eax,%eax
140183f98:	74 33                	je     0x140183fcd
140183f9a:	45 33 c9             	xor    %r9d,%r9d
140183f9d:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
140183fa4:	00
140183fa5:	45 33 c0             	xor    %r8d,%r8d
140183fa8:	48 8d 15 a5 da 1b 00 	lea    0x1bdaa5(%rip),%rdx        # 0x140341a54
140183faf:	48 8b cb             	mov    %rbx,%rcx
140183fb2:	e8 a9 ef ff ff       	call   0x140182f60
140183fb7:	85 c0                	test   %eax,%eax
140183fb9:	74 12                	je     0x140183fcd
140183fbb:	48 c7 83 20 01 00 00 	movq   $0x0,0x120(%rbx)
140183fc2:	00 00 00 00
140183fc6:	b8 01 00 00 00       	mov    $0x1,%eax
140183fcb:	eb 02                	jmp    0x140183fcf
140183fcd:	33 c0                	xor    %eax,%eax
140183fcf:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140183fd4:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140183fd9:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140183fde:	48 83 c4 30          	add    $0x30,%rsp
140183fe2:	41 5f                	pop    %r15
140183fe4:	41 5e                	pop    %r14
140183fe6:	41 5d                	pop    %r13
140183fe8:	41 5c                	pop    %r12
140183fea:	5f                   	pop    %rdi
140183feb:	c3                   	ret
140183fec:	cc                   	int3
140183fed:	cc                   	int3
140183fee:	cc                   	int3
140183fef:	cc                   	int3
140183ff0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140183ff5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140183ffa:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140183fff:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140184004:	41 55                	push   %r13
140184006:	41 56                	push   %r14
140184008:	41 57                	push   %r15
14018400a:	48 83 ec 20          	sub    $0x20,%rsp
14018400e:	4e 8d 34 02          	lea    (%rdx,%r8,1),%r14
140184012:	48 8b fa             	mov    %rdx,%rdi
140184015:	48 8b d9             	mov    %rcx,%rbx
140184018:	45 85 c9             	test   %r9d,%r9d
14018401b:	74 35                	je     0x140184052
14018401d:	83 b9 20 01 00 00 00 	cmpl   $0x0,0x120(%rcx)
140184024:	75 2c                	jne    0x140184052
140184026:	48 8b 41 48          	mov    0x48(%rcx),%rax
14018402a:	48 83 c0 05          	add    $0x5,%rax
14018402e:	48 3b 41 40          	cmp    0x40(%rcx),%rax
140184032:	72 0d                	jb     0x140184041
140184034:	e8 67 04 00 00       	call   0x1401844a0
140184039:	85 c0                	test   %eax,%eax
14018403b:	0f 84 cb 02 00 00    	je     0x14018430c
140184041:	48 8b 43 48          	mov    0x48(%rbx),%rax
140184045:	c6 00 20             	movb   $0x20,(%rax)
140184048:	48 ff 43 48          	incq   0x48(%rbx)
14018404c:	ff 83 1c 01 00 00    	incl   0x11c(%rbx)
140184052:	49 3b fe             	cmp    %r14,%rdi
140184055:	0f 84 82 02 00 00    	je     0x1401842dd
14018405b:	ba 85 05 40 12       	mov    $0x12400585,%edx
140184060:	49 bd 05 40 04 00 00 	movabs $0x4000000044005,%r13
140184067:	00 04 00
14018406a:	49 b8 0f 00 00 00 00 	movabs $0x5000000000000f,%r8
140184071:	00 50 00
140184074:	41 bf 30 00 00 00    	mov    $0x30,%r15d
14018407a:	0f b6 0f             	movzbl (%rdi),%ecx
14018407d:	41 b9 04 00 00 00    	mov    $0x4,%r9d
140184083:	8d 41 d0             	lea    -0x30(%rcx),%eax
140184086:	3c 09                	cmp    $0x9,%al
140184088:	76 11                	jbe    0x14018409b
14018408a:	8d 41 bf             	lea    -0x41(%rcx),%eax
14018408d:	3c 19                	cmp    $0x19,%al
14018408f:	76 0a                	jbe    0x14018409b
140184091:	80 f9 61             	cmp    $0x61,%cl
140184094:	72 48                	jb     0x1401840de
140184096:	80 f9 7a             	cmp    $0x7a,%cl
140184099:	77 63                	ja     0x1401840fe
14018409b:	48 8b 43 48          	mov    0x48(%rbx),%rax
14018409f:	4c 8d 43 48          	lea    0x48(%rbx),%r8
1401840a3:	48 83 c0 05          	add    $0x5,%rax
1401840a7:	48 3b 43 40          	cmp    0x40(%rbx),%rax
1401840ab:	72 14                	jb     0x1401840c1
1401840ad:	48 8b cb             	mov    %rbx,%rcx
1401840b0:	e8 eb 03 00 00       	call   0x1401844a0
1401840b5:	85 c0                	test   %eax,%eax
1401840b7:	0f 84 4f 02 00 00    	je     0x14018430c
1401840bd:	4c 8d 43 48          	lea    0x48(%rbx),%r8
1401840c1:	0f b6 0f             	movzbl (%rdi),%ecx
1401840c4:	84 c9                	test   %cl,%cl
1401840c6:	0f 88 5e 01 00 00    	js     0x14018422a
1401840cc:	48 8b 43 48          	mov    0x48(%rbx),%rax
1401840d0:	88 08                	mov    %cl,(%rax)
1401840d2:	48 ff 43 48          	incq   0x48(%rbx)
1401840d6:	48 ff c7             	inc    %rdi
1401840d9:	e9 e1 01 00 00       	jmp    0x1401842bf
1401840de:	80 e9 2d             	sub    $0x2d,%cl
1401840e1:	80 f9 32             	cmp    $0x32,%cl
1401840e4:	77 06                	ja     0x1401840ec
1401840e6:	49 0f a3 cd          	bt     %rcx,%r13
1401840ea:	72 af                	jb     0x14018409b
1401840ec:	0f b6 0f             	movzbl (%rdi),%ecx
1401840ef:	8d 41 dc             	lea    -0x24(%rcx),%eax
1401840f2:	3c 1c                	cmp    $0x1c,%al
1401840f4:	77 08                	ja     0x1401840fe
1401840f6:	0f b6 c0             	movzbl %al,%eax
1401840f9:	0f a3 c2             	bt     %eax,%edx
1401840fc:	72 9d                	jb     0x14018409b
1401840fe:	80 f9 7e             	cmp    $0x7e,%cl
140184101:	74 98                	je     0x14018409b
140184103:	0f b6 0f             	movzbl (%rdi),%ecx
140184106:	8d 41 d9             	lea    -0x27(%rcx),%eax
140184109:	3c 36                	cmp    $0x36,%al
14018410b:	77 09                	ja     0x140184116
14018410d:	0f b6 c0             	movzbl %al,%eax
140184110:	49 0f a3 c0          	bt     %rax,%r8
140184114:	72 85                	jb     0x14018409b
140184116:	84 c9                	test   %cl,%cl
140184118:	78 07                	js     0x140184121
14018411a:	be 01 00 00 00       	mov    $0x1,%esi
14018411f:	eb 3f                	jmp    0x140184160
140184121:	0f b6 c1             	movzbl %cl,%eax
140184124:	24 e0                	and    $0xe0,%al
140184126:	3c c0                	cmp    $0xc0,%al
140184128:	75 07                	jne    0x140184131
14018412a:	be 02 00 00 00       	mov    $0x2,%esi
14018412f:	eb 2f                	jmp    0x140184160
140184131:	0f b6 c1             	movzbl %cl,%eax
140184134:	24 f0                	and    $0xf0,%al
140184136:	3c e0                	cmp    $0xe0,%al
140184138:	75 07                	jne    0x140184141
14018413a:	be 03 00 00 00       	mov    $0x3,%esi
14018413f:	eb 1f                	jmp    0x140184160
140184141:	33 f6                	xor    %esi,%esi
140184143:	80 e1 f8             	and    $0xf8,%cl
140184146:	80 f9 f0             	cmp    $0xf0,%cl
140184149:	41 0f 44 f1          	cmove  %r9d,%esi
14018414d:	0f 85 81 01 00 00    	jne    0x1401842d4
140184153:	0f 1f 40 00          	nopl   0x0(%rax)
140184157:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14018415e:	00 00
140184160:	48 8b 43 48          	mov    0x48(%rbx),%rax
140184164:	ff ce                	dec    %esi
140184166:	0f b6 2f             	movzbl (%rdi),%ebp
140184169:	48 83 c0 05          	add    $0x5,%rax
14018416d:	48 ff c7             	inc    %rdi
140184170:	48 3b 43 40          	cmp    0x40(%rbx),%rax
140184174:	72 10                	jb     0x140184186
140184176:	48 8b cb             	mov    %rbx,%rcx
140184179:	e8 22 03 00 00       	call   0x1401844a0
14018417e:	85 c0                	test   %eax,%eax
140184180:	0f 84 86 01 00 00    	je     0x14018430c
140184186:	48 8b 43 48          	mov    0x48(%rbx),%rax
14018418a:	c6 00 25             	movb   $0x25,(%rax)
14018418d:	48 ff 43 48          	incq   0x48(%rbx)
140184191:	48 8b 43 48          	mov    0x48(%rbx),%rax
140184195:	ff 83 1c 01 00 00    	incl   0x11c(%rbx)
14018419b:	48 83 c0 05          	add    $0x5,%rax