14003a9a1:	41 88 01             	mov    %al,(%r9)
14003a9a4:	48 69 c2 18 fc ff ff 	imul   $0xfffffffffffffc18,%rdx,%rax
14003a9ab:	48 03 c8             	add    %rax,%rcx
14003a9ae:	4d 3b c1             	cmp    %r9,%r8
14003a9b1:	75 06                	jne    0x14003a9b9
14003a9b3:	48 83 f9 64          	cmp    $0x64,%rcx
14003a9b7:	7c 33                	jl     0x14003a9ec
14003a9b9:	48 b8 0b d7 a3 70 3d 	movabs $0xa3d70a3d70a3d70b,%rax
14003a9c0:	0a d7 a3
14003a9c3:	48 f7 e9             	imul   %rcx
14003a9c6:	48 03 d1             	add    %rcx,%rdx
14003a9c9:	48 c1 fa 06          	sar    $0x6,%rdx
14003a9cd:	48 8b c2             	mov    %rdx,%rax
14003a9d0:	48 c1 e8 3f          	shr    $0x3f,%rax
14003a9d4:	48 03 d0             	add    %rax,%rdx
14003a9d7:	8d 04 17             	lea    (%rdi,%rdx,1),%eax
14003a9da:	41 88 00             	mov    %al,(%r8)
14003a9dd:	49 ff c0             	inc    %r8
14003a9e0:	48 6b c2 9c          	imul   $0xffffffffffffff9c,%rdx,%rax
14003a9e4:	48 03 c8             	add    %rax,%rcx
14003a9e7:	4d 3b c1             	cmp    %r9,%r8
14003a9ea:	75 06                	jne    0x14003a9f2
14003a9ec:	48 83 f9 0a          	cmp    $0xa,%rcx
14003a9f0:	7c 2b                	jl     0x14003aa1d
14003a9f2:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
14003a9f9:	66 66 66
14003a9fc:	48 f7 e9             	imul   %rcx
14003a9ff:	48 c1 fa 02          	sar    $0x2,%rdx
14003aa03:	48 8b c2             	mov    %rdx,%rax
14003aa06:	48 c1 e8 3f          	shr    $0x3f,%rax
14003aa0a:	48 03 d0             	add    %rax,%rdx
14003aa0d:	8d 04 17             	lea    (%rdi,%rdx,1),%eax
14003aa10:	41 88 00             	mov    %al,(%r8)
14003aa13:	49 ff c0             	inc    %r8
14003aa16:	48 6b c2 f6          	imul   $0xfffffffffffffff6,%rdx,%rax
14003aa1a:	48 03 c8             	add    %rax,%rcx
14003aa1d:	40 02 cf             	add    %dil,%cl
14003aa20:	41 88 08             	mov    %cl,(%r8)
14003aa23:	45 88 58 01          	mov    %r11b,0x1(%r8)
14003aa27:	33 c0                	xor    %eax,%eax
14003aa29:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
14003aa2e:	49 8b 5b 30          	mov    0x30(%r11),%rbx
14003aa32:	49 8b 6b 40          	mov    0x40(%r11),%rbp
14003aa36:	49 8b 73 48          	mov    0x48(%r11),%rsi
14003aa3a:	49 8b e3             	mov    %r11,%rsp
14003aa3d:	41 5f                	pop    %r15
14003aa3f:	41 5e                	pop    %r14
14003aa41:	41 5d                	pop    %r13
14003aa43:	41 5c                	pop    %r12
14003aa45:	5f                   	pop    %rdi
14003aa46:	c3                   	ret
14003aa47:	cc                   	int3
14003aa48:	4c 8b dc             	mov    %rsp,%r11
14003aa4b:	49 89 5b 08          	mov    %rbx,0x8(%r11)
14003aa4f:	49 89 6b 10          	mov    %rbp,0x10(%r11)
14003aa53:	49 89 73 18          	mov    %rsi,0x18(%r11)
14003aa57:	49 89 7b 20          	mov    %rdi,0x20(%r11)
14003aa5b:	41 56                	push   %r14
14003aa5d:	48 83 ec 50          	sub    $0x50,%rsp
14003aa61:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
14003aa68:	00
14003aa69:	49 8b f0             	mov    %r8,%rsi
14003aa6c:	8b ac 24 88 00 00 00 	mov    0x88(%rsp),%ebp
14003aa73:	48 8b fa             	mov    %rdx,%rdi
14003aa76:	48 8b 09             	mov    (%rcx),%rcx
14003aa79:	41 b8 01 00 00 00    	mov    $0x1,%r8d
14003aa7f:	49 89 43 d0          	mov    %rax,-0x30(%r11)
14003aa83:	4d 89 4b c8          	mov    %r9,-0x38(%r11)
14003aa87:	4d 8d 4b e8          	lea    -0x18(%r11),%r9
14003aa8b:	8d 55 01             	lea    0x1(%rbp),%edx
14003aa8e:	e8 0d 8b 00 00       	call   0x1400435a0
14003aa93:	4c 8b b4 24 a8 00 00 	mov    0xa8(%rsp),%r14
14003aa9a:	00
14003aa9b:	44 8d 45 01          	lea    0x1(%rbp),%r8d
14003aa9f:	45 33 c9             	xor    %r9d,%r9d
14003aaa2:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
14003aaa7:	83 7c 24 40 2d       	cmpl   $0x2d,0x40(%rsp)
14003aaac:	44 8b d0             	mov    %eax,%r10d
14003aaaf:	8b 84 24 a0 00 00 00 	mov    0xa0(%rsp),%eax
14003aab6:	48 8b d6             	mov    %rsi,%rdx
14003aab9:	41 0f 94 c1          	sete   %r9b
14003aabd:	89 44 24 28          	mov    %eax,0x28(%rsp)
14003aac1:	33 c9                	xor    %ecx,%ecx
14003aac3:	44 89 54 24 20       	mov    %r10d,0x20(%rsp)
14003aac8:	85 ed                	test   %ebp,%ebp
14003aaca:	0f 9f c1             	setg   %cl
14003aacd:	48 2b d1             	sub    %rcx,%rdx
14003aad0:	49 2b d1             	sub    %r9,%rdx
14003aad3:	48 83 fe ff          	cmp    $0xffffffffffffffff,%rsi
14003aad7:	48 0f 44 d6          	cmove  %rsi,%rdx
14003aadb:	49 03 c9             	add    %r9,%rcx
14003aade:	48 03 cf             	add    %rdi,%rcx
14003aae1:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
14003aae6:	e8 a5 89 00 00       	call   0x140043490
14003aaeb:	85 c0                	test   %eax,%eax
14003aaed:	74 05                	je     0x14003aaf4
14003aaef:	c6 07 00             	movb   $0x0,(%rdi)
14003aaf2:	eb 35                	jmp    0x14003ab29
14003aaf4:	44 8a 8c 24 90 00 00 	mov    0x90(%rsp),%r9b
14003aafb:	00
14003aafc:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
14003ab01:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
14003ab06:	44 8b c5             	mov    %ebp,%r8d
14003ab09:	c6 44 24 30 00       	movb   $0x0,0x30(%rsp)
14003ab0e:	48 8b d6             	mov    %rsi,%rdx
14003ab11:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14003ab16:	48 8b cf             	mov    %rdi,%rcx
14003ab19:	8b 84 24 98 00 00 00 	mov    0x98(%rsp),%eax
14003ab20:	89 44 24 20          	mov    %eax,0x20(%rsp)
14003ab24:	e8 1b 00 00 00       	call   0x14003ab44
14003ab29:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14003ab2e:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
14003ab33:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
14003ab38:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
14003ab3d:	48 83 c4 50          	add    $0x50,%rsp
14003ab41:	41 5e                	pop    %r14
14003ab43:	c3                   	ret
14003ab44:	4c 8b dc             	mov    %rsp,%r11
14003ab47:	49 89 5b 08          	mov    %rbx,0x8(%r11)
14003ab4b:	49 89 6b 10          	mov    %rbp,0x10(%r11)
14003ab4f:	49 89 73 18          	mov    %rsi,0x18(%r11)
14003ab53:	49 89 7b 20          	mov    %rdi,0x20(%r11)
14003ab57:	41 55                	push   %r13
14003ab59:	41 56                	push   %r14
14003ab5b:	41 57                	push   %r15
14003ab5d:	48 83 ec 30          	sub    $0x30,%rsp
14003ab61:	33 c0                	xor    %eax,%eax
14003ab63:	49 63 e8             	movslq %r8d,%rbp
14003ab66:	45 85 c0             	test   %r8d,%r8d
14003ab69:	45 8a e9             	mov    %r9b,%r13b
14003ab6c:	4c 8b fa             	mov    %rdx,%r15
14003ab6f:	48 8b f9             	mov    %rcx,%rdi
14003ab72:	0f 4f c5             	cmovg  %ebp,%eax
14003ab75:	83 c0 09             	add    $0x9,%eax
14003ab78:	48 98                	cltq
14003ab7a:	48 3b d0             	cmp    %rax,%rdx
14003ab7d:	77 4d                	ja     0x14003abcc
14003ab7f:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
14003ab86:	00
14003ab87:	bb 22 00 00 00       	mov    $0x22,%ebx
14003ab8c:	49 89 4b e0          	mov    %rcx,-0x20(%r11)
14003ab90:	45 33 c9             	xor    %r9d,%r9d
14003ab93:	49 83 63 d8 00       	andq   $0x0,-0x28(%r11)
14003ab98:	45 33 c0             	xor    %r8d,%r8d
14003ab9b:	33 d2                	xor    %edx,%edx
14003ab9d:	c6 41 30 01          	movb   $0x1,0x30(%rcx)
14003aba1:	89 59 2c             	mov    %ebx,0x2c(%rcx)
14003aba4:	33 c9                	xor    %ecx,%ecx
14003aba6:	e8 2d 09 ff ff       	call   0x14002b4d8
14003abab:	8b c3                	mov    %ebx,%eax
14003abad:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
14003abb2:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
14003abb7:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
14003abbc:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
14003abc1:	48 83 c4 30          	add    $0x30,%rsp
14003abc5:	41 5f                	pop    %r15
14003abc7:	41 5e                	pop    %r14
14003abc9:	41 5d                	pop    %r13
14003abcb:	c3                   	ret
14003abcc:	80 bc 24 80 00 00 00 	cmpb   $0x0,0x80(%rsp)
14003abd3:	00
14003abd4:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
14003abd9:	74 2a                	je     0x14003ac05
14003abdb:	33 d2                	xor    %edx,%edx
14003abdd:	83 3e 2d             	cmpl   $0x2d,(%rsi)
14003abe0:	0f 94 c2             	sete   %dl
14003abe3:	48 03 d7             	add    %rdi,%rdx
14003abe6:	45 85 c0             	test   %r8d,%r8d
14003abe9:	7e 1a                	jle    0x14003ac05
14003abeb:	49 83 c8 ff          	or     $0xffffffffffffffff,%r8
14003abef:	49 ff c0             	inc    %r8
14003abf2:	42 80 3c 02 00       	cmpb   $0x0,(%rdx,%r8,1)
14003abf7:	75 f6                	jne    0x14003abef
14003abf9:	49 ff c0             	inc    %r8
14003abfc:	48 8d 4a 01          	lea    0x1(%rdx),%rcx
14003ac00:	e8 cb c4 fe ff       	call   0x1400270d0
14003ac05:	83 3e 2d             	cmpl   $0x2d,(%rsi)
14003ac08:	48 8b df             	mov    %rdi,%rbx
14003ac0b:	75 07                	jne    0x14003ac14
14003ac0d:	c6 07 2d             	movb   $0x2d,(%rdi)
14003ac10:	48 8d 5f 01          	lea    0x1(%rdi),%rbx
14003ac14:	85 ed                	test   %ebp,%ebp
14003ac16:	7e 31                	jle    0x14003ac49
14003ac18:	8a 43 01             	mov    0x1(%rbx),%al
14003ac1b:	4c 8b b4 24 88 00 00 	mov    0x88(%rsp),%r14
14003ac22:	00
14003ac23:	88 03                	mov    %al,(%rbx)
14003ac25:	48 ff c3             	inc    %rbx
14003ac28:	41 80 7e 28 00       	cmpb   $0x0,0x28(%r14)
14003ac2d:	75 08                	jne    0x14003ac37
14003ac2f:	49 8b ce             	mov    %r14,%rcx
14003ac32:	e8 b9 58 ff ff       	call   0x1400304f0
14003ac37:	49 8b 46 18          	mov    0x18(%r14),%rax
14003ac3b:	48 8b 88 f8 00 00 00 	mov    0xf8(%rax),%rcx
14003ac42:	48 8b 01             	mov    (%rcx),%rax
14003ac45:	8a 08                	mov    (%rax),%cl
14003ac47:	88 0b                	mov    %cl,(%rbx)
14003ac49:	0f b6 8c 24 80 00 00 	movzbl 0x80(%rsp),%ecx
14003ac50:	00
14003ac51:	4c 8d 05 f4 89 01 00 	lea    0x189f4(%rip),%r8        # 0x14005364c
14003ac58:	48 83 f1 01          	xor    $0x1,%rcx
14003ac5c:	48 03 dd             	add    %rbp,%rbx
14003ac5f:	48 03 d9             	add    %rcx,%rbx
14003ac62:	48 2b fb             	sub    %rbx,%rdi
14003ac65:	48 8b cb             	mov    %rbx,%rcx
14003ac68:	49 83 ff ff          	cmp    $0xffffffffffffffff,%r15
14003ac6c:	49 8d 14 3f          	lea    (%r15,%rdi,1),%rdx
14003ac70:	49 0f 44 d7          	cmove  %r15,%rdx
14003ac74:	e8 ef cf ff ff       	call   0x140037c68
14003ac79:	85 c0                	test   %eax,%eax
14003ac7b:	0f 85 8e 00 00 00    	jne    0x14003ad0f
14003ac81:	48 8d 4b 02          	lea    0x2(%rbx),%rcx
14003ac85:	45 84 ed             	test   %r13b,%r13b
14003ac88:	74 03                	je     0x14003ac8d
14003ac8a:	c6 03 45             	movb   $0x45,(%rbx)
14003ac8d:	48 8b 46 08          	mov    0x8(%rsi),%rax
14003ac91:	80 38 30             	cmpb   $0x30,(%rax)
14003ac94:	74 57                	je     0x14003aced
14003ac96:	44 8b 46 04          	mov    0x4(%rsi),%r8d
14003ac9a:	41 83 e8 01          	sub    $0x1,%r8d
14003ac9e:	79 07                	jns    0x14003aca7
14003aca0:	41 f7 d8             	neg    %r8d
14003aca3:	c6 43 01 2d          	movb   $0x2d,0x1(%rbx)
14003aca7:	41 83 f8 64          	cmp    $0x64,%r8d
14003acab:	7c 1b                	jl     0x14003acc8
14003acad:	b8 1f 85 eb 51       	mov    $0x51eb851f,%eax
14003acb2:	41 f7 e8             	imul   %r8d
14003acb5:	c1 fa 05             	sar    $0x5,%edx
14003acb8:	8b c2                	mov    %edx,%eax
14003acba:	c1 e8 1f             	shr    $0x1f,%eax
14003acbd:	03 d0                	add    %eax,%edx
14003acbf:	00 53 02             	add    %dl,0x2(%rbx)
14003acc2:	6b c2 9c             	imul   $0xffffff9c,%edx,%eax
14003acc5:	44 03 c0             	add    %eax,%r8d
14003acc8:	41 83 f8 0a          	cmp    $0xa,%r8d
14003accc:	7c 1b                	jl     0x14003ace9
14003acce:	b8 67 66 66 66       	mov    $0x66666667,%eax
14003acd3:	41 f7 e8             	imul   %r8d
14003acd6:	c1 fa 02             	sar    $0x2,%edx
14003acd9:	8b c2                	mov    %edx,%eax
14003acdb:	c1 e8 1f             	shr    $0x1f,%eax
14003acde:	03 d0                	add    %eax,%edx
14003ace0:	00 53 03             	add    %dl,0x3(%rbx)
14003ace3:	6b c2 f6             	imul   $0xfffffff6,%edx,%eax
14003ace6:	44 03 c0             	add    %eax,%r8d
14003ace9:	44 00 43 04          	add    %r8b,0x4(%rbx)
14003aced:	83 7c 24 70 02       	cmpl   $0x2,0x70(%rsp)
14003acf2:	75 14                	jne    0x14003ad08
14003acf4:	80 39 30             	cmpb   $0x30,(%rcx)
14003acf7:	75 0f                	jne    0x14003ad08
14003acf9:	48 8d 51 01          	lea    0x1(%rcx),%rdx
14003acfd:	41 b8 03 00 00 00    	mov    $0x3,%r8d
14003ad03:	e8 c8 c3 fe ff       	call   0x1400270d0
14003ad08:	33 c0                	xor    %eax,%eax
14003ad0a:	e9 9e fe ff ff       	jmp    0x14003abad
14003ad0f:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
14003ad15:	45 33 c9             	xor    %r9d,%r9d
14003ad18:	45 33 c0             	xor    %r8d,%r8d
14003ad1b:	33 d2                	xor    %edx,%edx
14003ad1d:	33 c9                	xor    %ecx,%ecx
14003ad1f:	e8 d0 08 ff ff       	call   0x14002b5f4
14003ad24:	cc                   	int3
14003ad25:	cc                   	int3
14003ad26:	cc                   	int3
14003ad27:	cc                   	int3
14003ad28:	4c 8b dc             	mov    %rsp,%r11
14003ad2b:	49 89 5b 08          	mov    %rbx,0x8(%r11)
14003ad2f:	49 89 6b 10          	mov    %rbp,0x10(%r11)
14003ad33:	49 89 73 18          	mov    %rsi,0x18(%r11)
14003ad37:	57                   	push   %rdi
14003ad38:	48 83 ec 50          	sub    $0x50,%rsp
14003ad3c:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
14003ad43:	00
14003ad44:	49 8b f8             	mov    %r8,%rdi
14003ad47:	8b b4 24 88 00 00 00 	mov    0x88(%rsp),%esi
14003ad4e:	48 8b da             	mov    %rdx,%rbx
14003ad51:	48 8b 09             	mov    (%rcx),%rcx
14003ad54:	0f 57 c0             	xorps  %xmm0,%xmm0
14003ad57:	49 89 43 d0          	mov    %rax,-0x30(%r11)
14003ad5b:	45 33 c0             	xor    %r8d,%r8d
14003ad5e:	4d 89 4b c8          	mov    %r9,-0x38(%r11)
14003ad62:	8b d6                	mov    %esi,%edx
14003ad64:	4d 8d 4b e8          	lea    -0x18(%r11),%r9
14003ad68:	0f 11 44 24 40       	movups %xmm0,0x40(%rsp)
14003ad6d:	e8 2e 88 00 00       	call   0x1400435a0
14003ad72:	44 8b 44 24 44       	mov    0x44(%rsp),%r8d
14003ad77:	45 33 c9             	xor    %r9d,%r9d
14003ad7a:	83 7c 24 40 2d       	cmpl   $0x2d,0x40(%rsp)
14003ad7f:	44 8b d0             	mov    %eax,%r10d
14003ad82:	8b 84 24 90 00 00 00 	mov    0x90(%rsp),%eax
14003ad89:	48 8b d7             	mov    %rdi,%rdx
14003ad8c:	48 8b ac 24 98 00 00 	mov    0x98(%rsp),%rbp
14003ad93:	00
14003ad94:	41 0f 94 c1          	sete   %r9b
14003ad98:	49 2b d1             	sub    %r9,%rdx
14003ad9b:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
14003ada0:	44 03 c6             	add    %esi,%r8d
14003ada3:	89 44 24 28          	mov    %eax,0x28(%rsp)
14003ada7:	48 83 ff ff          	cmp    $0xffffffffffffffff,%rdi
14003adab:	44 89 54 24 20       	mov    %r10d,0x20(%rsp)
14003adb0:	49 8d 0c 19          	lea    (%r9,%rbx,1),%rcx
14003adb4:	48 0f 44 d7          	cmove  %rdi,%rdx
14003adb8:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
14003adbd:	e8 ce 86 00 00       	call   0x140043490
14003adc2:	85 c0                	test   %eax,%eax
14003adc4:	74 05                	je     0x14003adcb
14003adc6:	c6 03 00             	movb   $0x0,(%rbx)
14003adc9:	eb 1d                	jmp    0x14003ade8
14003adcb:	48 89 6c 24 28       	mov    %rbp,0x28(%rsp)
14003add0:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
14003add5:	44 8b c6             	mov    %esi,%r8d
14003add8:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)
14003addd:	48 8b d7             	mov    %rdi,%rdx
14003ade0:	48 8b cb             	mov    %rbx,%rcx
14003ade3:	e8 18 00 00 00       	call   0x14003ae00
14003ade8:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14003aded:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
14003adf2:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
14003adf7:	48 83 c4 50          	add    $0x50,%rsp
14003adfb:	5f                   	pop    %rdi
14003adfc:	c3                   	ret
14003adfd:	cc                   	int3
14003adfe:	cc                   	int3
14003adff:	cc                   	int3
14003ae00:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14003ae05:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14003ae0a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14003ae0f:	57                   	push   %rdi
14003ae10:	41 56                	push   %r14
14003ae12:	41 57                	push   %r15
14003ae14:	48 83 ec 20          	sub    $0x20,%rsp
14003ae18:	80 7c 24 60 00       	cmpb   $0x0,0x60(%rsp)
14003ae1d:	48 8b d9             	mov    %rcx,%rbx
14003ae20:	49 63 49 04          	movslq 0x4(%r9),%rcx
14003ae24:	4d 8b f1             	mov    %r9,%r14
14003ae27:	41 8b e8             	mov    %r8d,%ebp
14003ae2a:	74 1b                	je     0x14003ae47
14003ae2c:	8d 41 ff             	lea    -0x1(%rcx),%eax
14003ae2f:	41 3b c0             	cmp    %r8d,%eax
14003ae32:	75 13                	jne    0x14003ae47
14003ae34:	33 c0                	xor    %eax,%eax
14003ae36:	41 83 39 2d          	cmpl   $0x2d,(%r9)
14003ae3a:	0f 94 c0             	sete   %al
14003ae3d:	48 03 c3             	add    %rbx,%rax
14003ae40:	66 c7 44 01 ff 30 00 	movw   $0x30,-0x1(%rcx,%rax,1)
14003ae47:	41 83 39 2d          	cmpl   $0x2d,(%r9)
14003ae4b:	75 06                	jne    0x14003ae53
14003ae4d:	c6 03 2d             	movb   $0x2d,(%rbx)
14003ae50:	48 ff c3             	inc    %rbx
14003ae53:	49 63 41 04          	movslq 0x4(%r9),%rax