140012cb6:	4d 39 1e             	cmp    %r11,(%r14)
140012cb9:	7d 05                	jge    0x140012cc0
140012cbb:	88 02                	mov    %al,(%rdx)
140012cbd:	48 ff c3             	inc    %rbx
140012cc0:	8a 84 24 b0 00 00 00 	mov    0xb0(%rsp),%al
140012cc7:	4c 8d 63 01          	lea    0x1(%rbx),%r12
140012ccb:	34 01                	xor    $0x1,%al
140012ccd:	41 bf ff 03 00 00    	mov    $0x3ff,%r15d
140012cd3:	44 0f b6 e8          	movzbl %al,%r13d
140012cd7:	41 b8 30 00 00 00    	mov    $0x30,%r8d
140012cdd:	41 8b ed             	mov    %r13d,%ebp
140012ce0:	48 b8 00 00 00 00 00 	movabs $0x7ff0000000000000,%rax
140012ce7:	00 f0 7f
140012cea:	c1 e5 05             	shl    $0x5,%ebp
140012ced:	49 b9 ff ff ff ff ff 	movabs $0xfffffffffffff,%r9
140012cf4:	ff 0f 00
140012cf7:	83 c5 07             	add    $0x7,%ebp
140012cfa:	49 85 06             	test   %rax,(%r14)
140012cfd:	75 18                	jne    0x140012d17
140012cff:	44 88 03             	mov    %r8b,(%rbx)
140012d02:	49 8b 06             	mov    (%r14),%rax
140012d05:	49 23 c1             	and    %r9,%rax
140012d08:	48 f7 d8             	neg    %rax
140012d0b:	4d 1b ff             	sbb    %r15,%r15
140012d0e:	41 81 e7 fe 03 00 00 	and    $0x3fe,%r15d
140012d15:	eb 03                	jmp    0x140012d1a
140012d17:	c6 03 31             	movb   $0x31,(%rbx)
140012d1a:	49 8d 74 24 01       	lea    0x1(%r12),%rsi
140012d1f:	85 ff                	test   %edi,%edi
140012d21:	75 05                	jne    0x140012d28
140012d23:	41 8a c3             	mov    %r11b,%al
140012d26:	eb 37                	jmp    0x140012d5f
140012d28:	48 8b 9c 24 c8 00 00 	mov    0xc8(%rsp),%rbx
140012d2f:	00
140012d30:	44 38 5b 28          	cmp    %r11b,0x28(%rbx)
140012d34:	75 19                	jne    0x140012d4f
140012d36:	48 8b cb             	mov    %rbx,%rcx
140012d39:	e8 22 bd ff ff       	call   0x14000ea60
140012d3e:	45 33 db             	xor    %r11d,%r11d
140012d41:	49 b9 ff ff ff ff ff 	movabs $0xfffffffffffff,%r9
140012d48:	ff 0f 00
140012d4b:	45 8d 43 30          	lea    0x30(%r11),%r8d
140012d4f:	48 8b 43 18          	mov    0x18(%rbx),%rax
140012d53:	48 8b 88 f8 00 00 00 	mov    0xf8(%rax),%rcx
140012d5a:	48 8b 01             	mov    (%rcx),%rax
140012d5d:	8a 00                	mov    (%rax),%al
140012d5f:	41 88 04 24          	mov    %al,(%r12)
140012d63:	4d 85 0e             	test   %r9,(%r14)
140012d66:	0f 86 8a 00 00 00    	jbe    0x140012df6
140012d6c:	41 0f b7 d0          	movzwl %r8w,%edx
140012d70:	49 ba 00 00 00 00 00 	movabs $0xf000000000000,%r10
140012d77:	00 0f 00
140012d7a:	0f b7 ca             	movzwl %dx,%ecx
140012d7d:	85 ff                	test   %edi,%edi
140012d7f:	7e 2c                	jle    0x140012dad
140012d81:	49 8b 06             	mov    (%r14),%rax
140012d84:	49 23 c2             	and    %r10,%rax
140012d87:	49 23 c1             	and    %r9,%rax
140012d8a:	48 d3 e8             	shr    %cl,%rax
140012d8d:	66 41 03 c0          	add    %r8w,%ax
140012d91:	66 83 f8 39          	cmp    $0x39,%ax
140012d95:	76 03                	jbe    0x140012d9a
140012d97:	66 03 c5             	add    %bp,%ax
140012d9a:	88 06                	mov    %al,(%rsi)
140012d9c:	ff cf                	dec    %edi
140012d9e:	48 ff c6             	inc    %rsi
140012da1:	49 c1 ea 04          	shr    $0x4,%r10
140012da5:	66 83 c2 fc          	add    $0xfffc,%dx
140012da9:	79 cf                	jns    0x140012d7a
140012dab:	eb 49                	jmp    0x140012df6
140012dad:	44 8b 8c 24 c0 00 00 	mov    0xc0(%rsp),%r9d
140012db4:	00
140012db5:	44 0f b7 c1          	movzwl %cx,%r8d
140012db9:	49 8b ce             	mov    %r14,%rcx
140012dbc:	49 8b d2             	mov    %r10,%rdx
140012dbf:	e8 d8 07 00 00       	call   0x14001359c
140012dc4:	45 33 db             	xor    %r11d,%r11d
140012dc7:	84 c0                	test   %al,%al
140012dc9:	74 4c                	je     0x140012e17
140012dcb:	48 8d 4e ff          	lea    -0x1(%rsi),%rcx
140012dcf:	8a 11                	mov    (%rcx),%dl
140012dd1:	8d 42 ba             	lea    -0x46(%rdx),%eax
140012dd4:	a8 df                	test   $0xdf,%al
140012dd6:	75 08                	jne    0x140012de0
140012dd8:	c6 01 30             	movb   $0x30,(%rcx)
140012ddb:	48 ff c9             	dec    %rcx
140012dde:	eb ef                	jmp    0x140012dcf
140012de0:	49 3b cc             	cmp    %r12,%rcx
140012de3:	74 0e                	je     0x140012df3
140012de5:	80 fa 39             	cmp    $0x39,%dl
140012de8:	75 03                	jne    0x140012ded
140012dea:	40 02 d5             	add    %bpl,%dl
140012ded:	fe c2                	inc    %dl
140012def:	88 11                	mov    %dl,(%rcx)
140012df1:	eb 03                	jmp    0x140012df6
140012df3:	fe 41 ff             	incb   -0x1(%rcx)
140012df6:	85 ff                	test   %edi,%edi
140012df8:	7e 1d                	jle    0x140012e17
140012dfa:	44 8b c7             	mov    %edi,%r8d
140012dfd:	48 8b ce             	mov    %rsi,%rcx
140012e00:	8b df                	mov    %edi,%ebx
140012e02:	bf 30 00 00 00       	mov    $0x30,%edi
140012e07:	40 8a d7             	mov    %dil,%dl
140012e0a:	e8 51 a5 00 00       	call   0x14001d360
140012e0f:	48 03 f3             	add    %rbx,%rsi
140012e12:	45 33 db             	xor    %r11d,%r11d
140012e15:	eb 05                	jmp    0x140012e1c
140012e17:	bf 30 00 00 00       	mov    $0x30,%edi
140012e1c:	45 38 1c 24          	cmp    %r11b,(%r12)
140012e20:	49 0f 44 f4          	cmove  %r12,%rsi
140012e24:	41 c0 e5 05          	shl    $0x5,%r13b
140012e28:	41 80 c5 50          	add    $0x50,%r13b
140012e2c:	44 88 2e             	mov    %r13b,(%rsi)
140012e2f:	4c 8d 4e 02          	lea    0x2(%rsi),%r9
140012e33:	49 8b 06             	mov    (%r14),%rax
140012e36:	48 c1 e8 34          	shr    $0x34,%rax
140012e3a:	25 ff 07 00 00       	and    $0x7ff,%eax
140012e3f:	8b c8                	mov    %eax,%ecx
140012e41:	49 2b cf             	sub    %r15,%rcx
140012e44:	48 8b d1             	mov    %rcx,%rdx
140012e47:	79 06                	jns    0x140012e4f
140012e49:	49 8b cf             	mov    %r15,%rcx
140012e4c:	48 2b c8             	sub    %rax,%rcx
140012e4f:	48 85 d2             	test   %rdx,%rdx
140012e52:	b8 2b 00 00 00       	mov    $0x2b,%eax
140012e57:	4d 8b c1             	mov    %r9,%r8
140012e5a:	8d 50 02             	lea    0x2(%rax),%edx
140012e5d:	0f 48 c2             	cmovs  %edx,%eax
140012e60:	88 46 01             	mov    %al,0x1(%rsi)
140012e63:	41 88 39             	mov    %dil,(%r9)
140012e66:	48 81 f9 e8 03 00 00 	cmp    $0x3e8,%rcx
140012e6d:	7c 34                	jl     0x140012ea3
140012e6f:	48 b8 cf f7 53 e3 a5 	movabs $0x20c49ba5e353f7cf,%rax
140012e76:	9b c4 20
140012e79:	4d 8d 41 01          	lea    0x1(%r9),%r8
140012e7d:	48 f7 e9             	imul   %rcx
140012e80:	48 c1 fa 07          	sar    $0x7,%rdx
140012e84:	48 8b c2             	mov    %rdx,%rax
140012e87:	48 c1 e8 3f          	shr    $0x3f,%rax
140012e8b:	48 03 d0             	add    %rax,%rdx
140012e8e:	8d 04 17             	lea    (%rdi,%rdx,1),%eax
140012e91:	41 88 01             	mov    %al,(%r9)
140012e94:	48 69 c2 18 fc ff ff 	imul   $0xfffffffffffffc18,%rdx,%rax
140012e9b:	48 03 c8             	add    %rax,%rcx
140012e9e:	4d 3b c1             	cmp    %r9,%r8
140012ea1:	75 06                	jne    0x140012ea9
140012ea3:	48 83 f9 64          	cmp    $0x64,%rcx
140012ea7:	7c 33                	jl     0x140012edc
140012ea9:	48 b8 0b d7 a3 70 3d 	movabs $0xa3d70a3d70a3d70b,%rax
140012eb0:	0a d7 a3
140012eb3:	48 f7 e9             	imul   %rcx
140012eb6:	48 03 d1             	add    %rcx,%rdx
140012eb9:	48 c1 fa 06          	sar    $0x6,%rdx
140012ebd:	48 8b c2             	mov    %rdx,%rax
140012ec0:	48 c1 e8 3f          	shr    $0x3f,%rax
140012ec4:	48 03 d0             	add    %rax,%rdx
140012ec7:	8d 04 17             	lea    (%rdi,%rdx,1),%eax
140012eca:	41 88 00             	mov    %al,(%r8)
140012ecd:	49 ff c0             	inc    %r8
140012ed0:	48 6b c2 9c          	imul   $0xffffffffffffff9c,%rdx,%rax
140012ed4:	48 03 c8             	add    %rax,%rcx
140012ed7:	4d 3b c1             	cmp    %r9,%r8
140012eda:	75 06                	jne    0x140012ee2
140012edc:	48 83 f9 0a          	cmp    $0xa,%rcx
140012ee0:	7c 2b                	jl     0x140012f0d
140012ee2:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140012ee9:	66 66 66
140012eec:	48 f7 e9             	imul   %rcx
140012eef:	48 c1 fa 02          	sar    $0x2,%rdx
140012ef3:	48 8b c2             	mov    %rdx,%rax
140012ef6:	48 c1 e8 3f          	shr    $0x3f,%rax
140012efa:	48 03 d0             	add    %rax,%rdx
140012efd:	8d 04 17             	lea    (%rdi,%rdx,1),%eax
140012f00:	41 88 00             	mov    %al,(%r8)
140012f03:	49 ff c0             	inc    %r8
140012f06:	48 6b c2 f6          	imul   $0xfffffffffffffff6,%rdx,%rax
140012f0a:	48 03 c8             	add    %rax,%rcx
140012f0d:	40 02 cf             	add    %dil,%cl
140012f10:	41 88 08             	mov    %cl,(%r8)
140012f13:	45 88 58 01          	mov    %r11b,0x1(%r8)
140012f17:	33 c0                	xor    %eax,%eax
140012f19:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
140012f1e:	49 8b 5b 30          	mov    0x30(%r11),%rbx
140012f22:	49 8b 6b 40          	mov    0x40(%r11),%rbp
140012f26:	49 8b 73 48          	mov    0x48(%r11),%rsi
140012f2a:	49 8b e3             	mov    %r11,%rsp
140012f2d:	41 5f                	pop    %r15
140012f2f:	41 5e                	pop    %r14
140012f31:	41 5d                	pop    %r13
140012f33:	41 5c                	pop    %r12
140012f35:	5f                   	pop    %rdi
140012f36:	c3                   	ret
140012f37:	cc                   	int3
140012f38:	4c 8b dc             	mov    %rsp,%r11
140012f3b:	49 89 5b 08          	mov    %rbx,0x8(%r11)
140012f3f:	49 89 6b 10          	mov    %rbp,0x10(%r11)
140012f43:	49 89 73 18          	mov    %rsi,0x18(%r11)
140012f47:	49 89 7b 20          	mov    %rdi,0x20(%r11)
140012f4b:	41 56                	push   %r14
140012f4d:	48 83 ec 50          	sub    $0x50,%rsp
140012f51:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
140012f58:	00
140012f59:	49 8b f0             	mov    %r8,%rsi
140012f5c:	8b ac 24 88 00 00 00 	mov    0x88(%rsp),%ebp
140012f63:	48 8b fa             	mov    %rdx,%rdi
140012f66:	48 8b 09             	mov    (%rcx),%rcx
140012f69:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140012f6f:	49 89 43 d0          	mov    %rax,-0x30(%r11)
140012f73:	4d 89 4b c8          	mov    %r9,-0x38(%r11)
140012f77:	4d 8d 4b e8          	lea    -0x18(%r11),%r9
140012f7b:	8d 55 01             	lea    0x1(%rbp),%edx
140012f7e:	e8 d9 4c 00 00       	call   0x140017c5c
140012f83:	4c 8b b4 24 a8 00 00 	mov    0xa8(%rsp),%r14
140012f8a:	00
140012f8b:	44 8d 45 01          	lea    0x1(%rbp),%r8d
140012f8f:	45 33 c9             	xor    %r9d,%r9d
140012f92:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140012f97:	83 7c 24 40 2d       	cmpl   $0x2d,0x40(%rsp)
140012f9c:	44 8b d0             	mov    %eax,%r10d
140012f9f:	8b 84 24 a0 00 00 00 	mov    0xa0(%rsp),%eax
140012fa6:	48 8b d6             	mov    %rsi,%rdx
140012fa9:	41 0f 94 c1          	sete   %r9b
140012fad:	89 44 24 28          	mov    %eax,0x28(%rsp)
140012fb1:	33 c9                	xor    %ecx,%ecx
140012fb3:	44 89 54 24 20       	mov    %r10d,0x20(%rsp)
140012fb8:	85 ed                	test   %ebp,%ebp
140012fba:	0f 9f c1             	setg   %cl
140012fbd:	48 2b d1             	sub    %rcx,%rdx
140012fc0:	49 2b d1             	sub    %r9,%rdx
140012fc3:	48 83 fe ff          	cmp    $0xffffffffffffffff,%rsi
140012fc7:	48 0f 44 d6          	cmove  %rsi,%rdx
140012fcb:	49 03 c9             	add    %r9,%rcx
140012fce:	48 03 cf             	add    %rdi,%rcx
140012fd1:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
140012fd6:	e8 d1 46 00 00       	call   0x1400176ac
140012fdb:	85 c0                	test   %eax,%eax
140012fdd:	74 05                	je     0x140012fe4
140012fdf:	c6 07 00             	movb   $0x0,(%rdi)
140012fe2:	eb 35                	jmp    0x140013019
140012fe4:	44 8a 8c 24 90 00 00 	mov    0x90(%rsp),%r9b
140012feb:	00
140012fec:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
140012ff1:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
140012ff6:	44 8b c5             	mov    %ebp,%r8d
140012ff9:	c6 44 24 30 00       	movb   $0x0,0x30(%rsp)
140012ffe:	48 8b d6             	mov    %rsi,%rdx
140013001:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140013006:	48 8b cf             	mov    %rdi,%rcx
140013009:	8b 84 24 98 00 00 00 	mov    0x98(%rsp),%eax
140013010:	89 44 24 20          	mov    %eax,0x20(%rsp)
140013014:	e8 1b 00 00 00       	call   0x140013034
140013019:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14001301e:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140013023:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140013028:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
14001302d:	48 83 c4 50          	add    $0x50,%rsp
140013031:	41 5e                	pop    %r14
140013033:	c3                   	ret
140013034:	4c 8b dc             	mov    %rsp,%r11
140013037:	49 89 5b 08          	mov    %rbx,0x8(%r11)
14001303b:	49 89 6b 10          	mov    %rbp,0x10(%r11)
14001303f:	49 89 73 18          	mov    %rsi,0x18(%r11)
140013043:	49 89 7b 20          	mov    %rdi,0x20(%r11)
140013047:	41 55                	push   %r13
140013049:	41 56                	push   %r14
14001304b:	41 57                	push   %r15
14001304d:	48 83 ec 30          	sub    $0x30,%rsp
140013051:	33 c0                	xor    %eax,%eax
140013053:	49 63 e8             	movslq %r8d,%rbp
140013056:	45 85 c0             	test   %r8d,%r8d
140013059:	45 8a e9             	mov    %r9b,%r13b
14001305c:	4c 8b fa             	mov    %rdx,%r15
14001305f:	48 8b f9             	mov    %rcx,%rdi
140013062:	0f 4f c5             	cmovg  %ebp,%eax
140013065:	83 c0 09             	add    $0x9,%eax
140013068:	48 98                	cltq
14001306a:	48 3b d0             	cmp    %rax,%rdx
14001306d:	77 4d                	ja     0x1400130bc
14001306f:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
140013076:	00
140013077:	bb 22 00 00 00       	mov    $0x22,%ebx
14001307c:	49 89 4b e0          	mov    %rcx,-0x20(%r11)
140013080:	45 33 c9             	xor    %r9d,%r9d
140013083:	49 83 63 d8 00       	andq   $0x0,-0x28(%r11)
140013088:	45 33 c0             	xor    %r8d,%r8d
14001308b:	33 d2                	xor    %edx,%edx
14001308d:	c6 41 30 01          	movb   $0x1,0x30(%rcx)
140013091:	89 59 2c             	mov    %ebx,0x2c(%rcx)
140013094:	33 c9                	xor    %ecx,%ecx
140013096:	e8 5d 8c ff ff       	call   0x14000bcf8
14001309b:	8b c3                	mov    %ebx,%eax
14001309d:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1400130a2:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
1400130a7:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
1400130ac:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
1400130b1:	48 83 c4 30          	add    $0x30,%rsp
1400130b5:	41 5f                	pop    %r15
1400130b7:	41 5e                	pop    %r14
1400130b9:	41 5d                	pop    %r13
1400130bb:	c3                   	ret
1400130bc:	80 bc 24 80 00 00 00 	cmpb   $0x0,0x80(%rsp)
1400130c3:	00
1400130c4:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
1400130c9:	74 2a                	je     0x1400130f5
1400130cb:	33 d2                	xor    %edx,%edx
1400130cd:	83 3e 2d             	cmpl   $0x2d,(%rsi)
1400130d0:	0f 94 c2             	sete   %dl
1400130d3:	48 03 d7             	add    %rdi,%rdx
1400130d6:	45 85 c0             	test   %r8d,%r8d
1400130d9:	7e 1a                	jle    0x1400130f5
1400130db:	49 83 c8 ff          	or     $0xffffffffffffffff,%r8
1400130df:	49 ff c0             	inc    %r8
1400130e2:	42 80 3c 02 00       	cmpb   $0x0,(%rdx,%r8,1)
1400130e7:	75 f6                	jne    0x1400130df
1400130e9:	49 ff c0             	inc    %r8
1400130ec:	48 8d 4a 01          	lea    0x1(%rdx),%rcx
1400130f0:	e8 cb 9b 00 00       	call   0x14001ccc0
1400130f5:	83 3e 2d             	cmpl   $0x2d,(%rsi)
1400130f8:	48 8b df             	mov    %rdi,%rbx
1400130fb:	75 07                	jne    0x140013104
1400130fd:	c6 07 2d             	movb   $0x2d,(%rdi)
140013100:	48 8d 5f 01          	lea    0x1(%rdi),%rbx
140013104:	85 ed                	test   %ebp,%ebp
140013106:	7e 31                	jle    0x140013139
140013108:	8a 43 01             	mov    0x1(%rbx),%al
14001310b:	4c 8b b4 24 88 00 00 	mov    0x88(%rsp),%r14
140013112:	00
140013113:	88 03                	mov    %al,(%rbx)
140013115:	48 ff c3             	inc    %rbx
140013118:	41 80 7e 28 00       	cmpb   $0x0,0x28(%r14)
14001311d:	75 08                	jne    0x140013127
14001311f:	49 8b ce             	mov    %r14,%rcx
140013122:	e8 39 b9 ff ff       	call   0x14000ea60
140013127:	49 8b 46 18          	mov    0x18(%r14),%rax
14001312b:	48 8b 88 f8 00 00 00 	mov    0xf8(%rax),%rcx
140013132:	48 8b 01             	mov    (%rcx),%rax
140013135:	8a 08                	mov    (%rax),%cl
140013137:	88 0b                	mov    %cl,(%rbx)
140013139:	0f b6 8c 24 80 00 00 	movzbl 0x80(%rsp),%ecx
140013140:	00
140013141:	4c 8d 05 54 29 01 00 	lea    0x12954(%rip),%r8        # 0x140025a9c
140013148:	48 83 f1 01          	xor    $0x1,%rcx
14001314c:	48 03 dd             	add    %rbp,%rbx
14001314f:	48 03 d9             	add    %rcx,%rbx
140013152:	48 2b fb             	sub    %rbx,%rdi
140013155:	48 8b cb             	mov    %rbx,%rcx
140013158:	49 83 ff ff          	cmp    $0xffffffffffffffff,%r15
14001315c:	49 8d 14 3f          	lea    (%r15,%rdi,1),%rdx
140013160:	49 0f 44 d7          	cmove  %r15,%rdx
140013164:	e8 af d4 ff ff       	call   0x140010618