14019e42b:	bd 00 20 00 00       	mov    $0x2000,%ebp
14019e430:	4c 39 26             	cmp    %r12,(%rsi)
14019e433:	75 73                	jne    0x14019e4a8
14019e435:	8b d0                	mov    %eax,%edx
14019e437:	8b cd                	mov    %ebp,%ecx
14019e439:	e8 5e 89 00 00       	call   0x1401a6d9c
14019e43e:	48 8b 0e             	mov    (%rsi),%rcx
14019e441:	48 8b d8             	mov    %rax,%rbx
14019e444:	e8 73 85 00 00       	call   0x1401a69bc
14019e449:	33 c9                	xor    %ecx,%ecx
14019e44b:	48 89 1e             	mov    %rbx,(%rsi)
14019e44e:	e8 69 85 00 00       	call   0x1401a69bc
14019e453:	4c 39 26             	cmp    %r12,(%rsi)
14019e456:	75 27                	jne    0x14019e47f
14019e458:	48 c7 47 10 0c 00 00 	movq   $0xc,0x10(%rdi)
14019e45f:	00
14019e460:	44 89 67 18          	mov    %r12d,0x18(%rdi)
14019e464:	44 88 67 1c          	mov    %r12b,0x1c(%rdi)
14019e468:	32 c0                	xor    %al,%al
14019e46a:	4c 89 67 20          	mov    %r12,0x20(%rdi)
14019e46e:	44 89 67 28          	mov    %r12d,0x28(%rdi)
14019e472:	44 88 67 2c          	mov    %r12b,0x2c(%rdi)
14019e476:	44 89 67 30          	mov    %r12d,0x30(%rdi)
14019e47a:	e9 41 01 00 00       	jmp    0x14019e5c0
14019e47f:	b8 01 00 00 00       	mov    $0x1,%eax
14019e484:	4c 39 26             	cmp    %r12,(%rsi)
14019e487:	75 1f                	jne    0x14019e4a8
14019e489:	8b d0                	mov    %eax,%edx
14019e48b:	48 8b cd             	mov    %rbp,%rcx
14019e48e:	e8 09 89 00 00       	call   0x1401a6d9c
14019e493:	48 8b 0e             	mov    (%rsi),%rcx
14019e496:	48 8b d8             	mov    %rax,%rbx
14019e499:	e8 1e 85 00 00       	call   0x1401a69bc
14019e49e:	33 c9                	xor    %ecx,%ecx
14019e4a0:	48 89 1e             	mov    %rbx,(%rsi)
14019e4a3:	e8 14 85 00 00       	call   0x1401a69bc
14019e4a8:	48 8b 0e             	mov    (%rsi),%rcx
14019e4ab:	48 85 c9             	test   %rcx,%rcx
14019e4ae:	74 0a                	je     0x14019e4ba
14019e4b0:	4c 8b c5             	mov    %rbp,%r8
14019e4b3:	33 d2                	xor    %edx,%edx
14019e4b5:	e8 b6 a5 fe ff       	call   0x140188a70
14019e4ba:	48 8b 47 08          	mov    0x8(%rdi),%rax
14019e4be:	66 83 38 5e          	cmpw   $0x5e,(%rax)
14019e4c2:	41 0f 94 c6          	sete   %r14b
14019e4c6:	44 88 74 24 50       	mov    %r14b,0x50(%rsp)
14019e4cb:	45 84 f6             	test   %r14b,%r14b
14019e4ce:	74 08                	je     0x14019e4d8
14019e4d0:	48 83 c0 02          	add    $0x2,%rax
14019e4d4:	48 89 47 08          	mov    %rax,0x8(%rdi)
14019e4d8:	48 8b 47 08          	mov    0x8(%rdi),%rax
14019e4dc:	41 bd 5d 00 00 00    	mov    $0x5d,%r13d
14019e4e2:	66 44 39 28          	cmp    %r13w,(%rax)
14019e4e6:	75 13                	jne    0x14019e4fb
14019e4e8:	48 83 c0 02          	add    $0x2,%rax
14019e4ec:	41 8b d5             	mov    %r13d,%edx
14019e4ef:	48 8b ce             	mov    %rsi,%rcx
14019e4f2:	48 89 47 08          	mov    %rax,0x8(%rdi)
14019e4f6:	e8 e5 00 00 00       	call   0x14019e5e0
14019e4fb:	4c 8b 7f 08          	mov    0x8(%rdi),%r15
14019e4ff:	66 45 39 2f          	cmp    %r13w,(%r15)
14019e503:	0f 84 82 00 00 00    	je     0x14019e58b
14019e509:	41 be 01 00 00 00    	mov    $0x1,%r14d
14019e50f:	48 8b 47 08          	mov    0x8(%rdi),%rax
14019e513:	0f b7 10             	movzwl (%rax),%edx
14019e516:	66 85 d2             	test   %dx,%dx
14019e519:	74 6b                	je     0x14019e586
14019e51b:	66 83 fa 2d          	cmp    $0x2d,%dx
14019e51f:	75 4e                	jne    0x14019e56f
14019e521:	49 3b c7             	cmp    %r15,%rax
14019e524:	74 49                	je     0x14019e56f
14019e526:	0f b7 58 02          	movzwl 0x2(%rax),%ebx
14019e52a:	66 41 3b dd          	cmp    %r13w,%bx
14019e52e:	74 3f                	je     0x14019e56f
14019e530:	0f b7 68 fe          	movzwl -0x2(%rax),%ebp
14019e534:	66 3b eb             	cmp    %bx,%bp
14019e537:	76 09                	jbe    0x14019e542
14019e539:	0f b7 c5             	movzwl %bp,%eax
14019e53c:	0f b7 eb             	movzwl %bx,%ebp
14019e53f:	0f b7 d8             	movzwl %ax,%ebx
14019e542:	66 41 03 de          	add    %r14w,%bx
14019e546:	66 3b eb             	cmp    %bx,%bp
14019e549:	74 2c                	je     0x14019e577
14019e54b:	41 bc 01 00 00 00    	mov    $0x1,%r12d
14019e551:	0f b7 d5             	movzwl %bp,%edx
14019e554:	48 8b ce             	mov    %rsi,%rcx
14019e557:	e8 84 00 00 00       	call   0x14019e5e0
14019e55c:	66 41 03 ec          	add    %r12w,%bp
14019e560:	66 3b eb             	cmp    %bx,%bp
14019e563:	75 ec                	jne    0x14019e551
14019e565:	45 33 e4             	xor    %r12d,%r12d
14019e568:	45 8d 74 24 01       	lea    0x1(%r12),%r14d
14019e56d:	eb 08                	jmp    0x14019e577
14019e56f:	48 8b ce             	mov    %rsi,%rcx
14019e572:	e8 69 00 00 00       	call   0x14019e5e0
14019e577:	48 83 47 08 02       	addq   $0x2,0x8(%rdi)
14019e57c:	48 8b 47 08          	mov    0x8(%rdi),%rax
14019e580:	66 44 39 28          	cmp    %r13w,(%rax)
14019e584:	75 89                	jne    0x14019e50f
14019e586:	44 8a 74 24 50       	mov    0x50(%rsp),%r14b
14019e58b:	48 8b 47 08          	mov    0x8(%rdi),%rax
14019e58f:	66 44 39 20          	cmp    %r12w,(%rax)
14019e593:	75 14                	jne    0x14019e5a9
14019e595:	48 c7 47 10 16 00 00 	movq   $0x16,0x10(%rdi)
14019e59c:	00
14019e59d:	c7 47 18 00 00 00 00 	movl   $0x0,0x18(%rdi)
14019e5a4:	e9 bb fe ff ff       	jmp    0x14019e464
14019e5a9:	45 84 f6             	test   %r14b,%r14b
14019e5ac:	74 08                	je     0x14019e5b6
14019e5ae:	48 8b ce             	mov    %rsi,%rcx
14019e5b1:	e8 16 e9 ff ff       	call   0x14019cecc
14019e5b6:	48 83 47 08 02       	addq   $0x2,0x8(%rdi)
14019e5bb:	b8 01 00 00 00       	mov    $0x1,%eax
14019e5c0:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14019e5c5:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
14019e5ca:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
14019e5cf:	48 83 c4 20          	add    $0x20,%rsp
14019e5d3:	41 5f                	pop    %r15
14019e5d5:	41 5e                	pop    %r14
14019e5d7:	41 5d                	pop    %r13
14019e5d9:	41 5c                	pop    %r12
14019e5db:	5f                   	pop    %rdi
14019e5dc:	c3                   	ret
14019e5dd:	cc                   	int3
14019e5de:	cc                   	int3
14019e5df:	cc                   	int3
14019e5e0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14019e5e5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14019e5ea:	57                   	push   %rdi
14019e5eb:	48 83 ec 20          	sub    $0x20,%rsp
14019e5ef:	48 83 39 00          	cmpq   $0x0,(%rcx)
14019e5f3:	0f b7 f2             	movzwl %dx,%esi
14019e5f6:	48 8b f9             	mov    %rcx,%rdi
14019e5f9:	75 24                	jne    0x14019e61f
14019e5fb:	ba 01 00 00 00       	mov    $0x1,%edx
14019e600:	b9 00 20 00 00       	mov    $0x2000,%ecx
14019e605:	e8 92 87 00 00       	call   0x1401a6d9c
14019e60a:	48 8b 0f             	mov    (%rdi),%rcx
14019e60d:	48 8b d8             	mov    %rax,%rbx
14019e610:	e8 a7 83 00 00       	call   0x1401a69bc
14019e615:	33 c9                	xor    %ecx,%ecx
14019e617:	48 89 1f             	mov    %rbx,(%rdi)
14019e61a:	e8 9d 83 00 00       	call   0x1401a69bc
14019e61f:	4c 8b 07             	mov    (%rdi),%r8
14019e622:	0f b7 d6             	movzwl %si,%edx
14019e625:	48 c1 ea 03          	shr    $0x3,%rdx
14019e629:	0f b7 c6             	movzwl %si,%eax
14019e62c:	42 0f b6 0c 02       	movzbl (%rdx,%r8,1),%ecx
14019e631:	25 07 00 00 80       	and    $0x80000007,%eax
14019e636:	7d 07                	jge    0x14019e63f
14019e638:	ff c8                	dec    %eax
14019e63a:	83 c8 f8             	or     $0xfffffff8,%eax
14019e63d:	ff c0                	inc    %eax
14019e63f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14019e644:	0f ab c1             	bts    %eax,%ecx
14019e647:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14019e64c:	42 88 0c 02          	mov    %cl,(%rdx,%r8,1)
14019e650:	48 83 c4 20          	add    $0x20,%rsp
14019e654:	5f                   	pop    %rdi
14019e655:	c3                   	ret
14019e656:	cc                   	int3
14019e657:	cc                   	int3
14019e658:	48 8b c4             	mov    %rsp,%rax
14019e65b:	48 89 58 08          	mov    %rbx,0x8(%rax)
14019e65f:	48 89 68 10          	mov    %rbp,0x10(%rax)
14019e663:	48 89 70 18          	mov    %rsi,0x18(%rax)
14019e667:	48 89 78 20          	mov    %rdi,0x20(%rax)
14019e66b:	41 56                	push   %r14
14019e66d:	48 83 ec 20          	sub    $0x20,%rsp
14019e671:	33 ed                	xor    %ebp,%ebp
14019e673:	44 0f b7 f2          	movzwl %dx,%r14d
14019e677:	48 8b f1             	mov    %rcx,%rsi
14019e67a:	bf 01 00 00 00       	mov    $0x1,%edi
14019e67f:	48 39 29             	cmp    %rbp,(%rcx)
14019e682:	75 21                	jne    0x14019e6a5
14019e684:	8b d7                	mov    %edi,%edx
14019e686:	b9 00 20 00 00       	mov    $0x2000,%ecx
14019e68b:	e8 0c 87 00 00       	call   0x1401a6d9c
14019e690:	48 8b 0e             	mov    (%rsi),%rcx
14019e693:	48 8b d8             	mov    %rax,%rbx
14019e696:	e8 21 83 00 00       	call   0x1401a69bc
14019e69b:	33 c9                	xor    %ecx,%ecx
14019e69d:	48 89 1e             	mov    %rbx,(%rsi)
14019e6a0:	e8 17 83 00 00       	call   0x1401a69bc
14019e6a5:	41 0f b7 ce          	movzwl %r14w,%ecx
14019e6a9:	81 e1 07 00 00 80    	and    $0x80000007,%ecx
14019e6af:	7d 07                	jge    0x14019e6b8
14019e6b1:	2b cf                	sub    %edi,%ecx
14019e6b3:	83 c9 f8             	or     $0xfffffff8,%ecx
14019e6b6:	03 cf                	add    %edi,%ecx
14019e6b8:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14019e6bd:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14019e6c2:	d3 e7                	shl    %cl,%edi
14019e6c4:	48 8b 0e             	mov    (%rsi),%rcx
14019e6c7:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14019e6cc:	41 0f b7 d6          	movzwl %r14w,%edx
14019e6d0:	48 c1 ea 03          	shr    $0x3,%rdx
14019e6d4:	8a 14 0a             	mov    (%rdx,%rcx,1),%dl
14019e6d7:	40 84 fa             	test   %dil,%dl
14019e6da:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
14019e6df:	0f 95 c0             	setne  %al
14019e6e2:	48 83 c4 20          	add    $0x20,%rsp
14019e6e6:	41 5e                	pop    %r14
14019e6e8:	c3                   	ret
14019e6e9:	cc                   	int3
14019e6ea:	cc                   	int3
14019e6eb:	cc                   	int3
14019e6ec:	48 8b c4             	mov    %rsp,%rax
14019e6ef:	48 89 58 10          	mov    %rbx,0x10(%rax)
14019e6f3:	48 89 70 18          	mov    %rsi,0x18(%rax)
14019e6f7:	57                   	push   %rdi
14019e6f8:	48 83 ec 20          	sub    $0x20,%rsp
14019e6fc:	0f b6 7c 24 58       	movzbl 0x58(%rsp),%edi
14019e701:	49 8b f1             	mov    %r9,%rsi
14019e704:	40 88 78 30          	mov    %dil,0x30(%rax)
14019e708:	48 8b d9             	mov    %rcx,%rbx
14019e70b:	c6 40 31 00          	movb   $0x0,0x31(%rax)
14019e70f:	e8 78 10 00 00       	call   0x14019f78c
14019e714:	b9 00 80 00 00       	mov    $0x8000,%ecx
14019e719:	66 85 0c 78          	test   %cx,(%rax,%rdi,2)
14019e71d:	74 1d                	je     0x14019e73c
14019e71f:	48 8b 43 18          	mov    0x18(%rbx),%rax
14019e723:	48 3b 43 10          	cmp    0x10(%rbx),%rax
14019e727:	75 05                	jne    0x14019e72e
14019e729:	83 c9 ff             	or     $0xffffffff,%ecx
14019e72c:	eb 0a                	jmp    0x14019e738
14019e72e:	0f be 08             	movsbl (%rax),%ecx
14019e731:	48 ff c0             	inc    %rax
14019e734:	48 89 43 18          	mov    %rax,0x18(%rbx)
14019e738:	88 4c 24 59          	mov    %cl,0x59(%rsp)
14019e73c:	4c 8b 4b 78          	mov    0x78(%rbx),%r9
14019e740:	48 8d 54 24 58       	lea    0x58(%rsp),%rdx
14019e745:	b8 3f 00 00 00       	mov    $0x3f,%eax
14019e74a:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14019e74f:	66 89 44 24 30       	mov    %ax,0x30(%rsp)
14019e754:	49 8b 01             	mov    (%r9),%rax
14019e757:	4c 63 40 08          	movslq 0x8(%rax),%r8
14019e75b:	e8 8c 9b 00 00       	call   0x1401a82ec
14019e760:	48 8b 06             	mov    (%rsi),%rax
14019e763:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14019e768:	40 0f be cf          	movsbl %dil,%ecx
14019e76c:	66 89 08             	mov    %cx,(%rax)
14019e76f:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
14019e774:	48 83 06 02          	addq   $0x2,(%rsi)
14019e778:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14019e77d:	48 ff 08             	decq   (%rax)
14019e780:	b0 01                	mov    $0x1,%al
14019e782:	48 83 c4 20          	add    $0x20,%rsp
14019e786:	5f                   	pop    %rdi
14019e787:	c3                   	ret
14019e788:	48 8b c4             	mov    %rsp,%rax
14019e78b:	48 89 58 08          	mov    %rbx,0x8(%rax)
14019e78f:	48 89 70 10          	mov    %rsi,0x10(%rax)
14019e793:	57                   	push   %rdi
14019e794:	48 83 ec 30          	sub    $0x30,%rsp
14019e798:	83 60 18 00          	andl   $0x0,0x18(%rax)
14019e79c:	48 8d 48 18          	lea    0x18(%rax),%rcx
14019e7a0:	49 8b d9             	mov    %r9,%rbx
14019e7a3:	44 0f b7 4c 24 68    	movzwl 0x68(%rsp),%r9d
14019e7a9:	48 8b f2             	mov    %rdx,%rsi
14019e7ac:	48 8b 13             	mov    (%rbx),%rdx
14019e7af:	49 83 f8 ff          	cmp    $0xffffffffffffffff,%r8
14019e7b3:	75 2d                	jne    0x14019e7e2
14019e7b5:	41 b8 05 00 00 00    	mov    $0x5,%r8d
14019e7bb:	e8 00 9e 00 00       	call   0x1401a85c0
14019e7c0:	85 c0                	test   %eax,%eax
14019e7c2:	74 0c                	je     0x14019e7d0
14019e7c4:	83 f8 16             	cmp    $0x16,%eax
14019e7c7:	74 53                	je     0x14019e81c
14019e7c9:	83 f8 22             	cmp    $0x22,%eax
14019e7cc:	75 3c                	jne    0x14019e80a
14019e7ce:	eb 4c                	jmp    0x14019e81c
14019e7d0:	48 63 4c 24 50       	movslq 0x50(%rsp),%rcx
14019e7d5:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
14019e7da:	48 01 0b             	add    %rcx,(%rbx)
14019e7dd:	48 29 08             	sub    %rcx,(%rax)
14019e7e0:	eb 28                	jmp    0x14019e80a
14019e7e2:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
14019e7e7:	4c 8b 07             	mov    (%rdi),%r8
14019e7ea:	e8 d1 9d 00 00       	call   0x1401a85c0
14019e7ef:	83 f8 22             	cmp    $0x22,%eax
14019e7f2:	75 07                	jne    0x14019e7fb
14019e7f4:	c6 06 00             	movb   $0x0,(%rsi)
14019e7f7:	32 c0                	xor    %al,%al
14019e7f9:	eb 11                	jmp    0x14019e80c
14019e7fb:	48 63 44 24 50       	movslq 0x50(%rsp),%rax
14019e800:	85 c0                	test   %eax,%eax
14019e802:	7e 06                	jle    0x14019e80a
14019e804:	48 01 03             	add    %rax,(%rbx)
14019e807:	48 29 07             	sub    %rax,(%rdi)
14019e80a:	b0 01                	mov    $0x1,%al
14019e80c:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14019e811:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14019e816:	48 83 c4 30          	add    $0x30,%rsp
14019e81a:	5f                   	pop    %rdi
14019e81b:	c3                   	ret
14019e81c:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
14019e822:	45 33 c9             	xor    %r9d,%r9d
14019e825:	45 33 c0             	xor    %r8d,%r8d
14019e828:	33 d2                	xor    %edx,%edx
14019e82a:	33 c9                	xor    %ecx,%ecx
14019e82c:	e8 83 cd fe ff       	call   0x14018b5b4
14019e831:	cc                   	int3
14019e832:	cc                   	int3
14019e833:	cc                   	int3
14019e834:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14019e839:	57                   	push   %rdi
14019e83a:	48 83 ec 20          	sub    $0x20,%rsp
14019e83e:	48 83 81 80 00 00 00 	addq   $0x8,0x80(%rcx)
14019e845:	08
14019e846:	48 8b fa             	mov    %rdx,%rdi
14019e849:	48 8b 81 80 00 00 00 	mov    0x80(%rcx),%rax
14019e850:	48 8b 58 f8          	mov    -0x8(%rax),%rbx
14019e854:	48 85 db             	test   %rbx,%rbx
14019e857:	75 14                	jne    0x14019e86d
14019e859:	e8 ae 16 ff ff       	call   0x14018ff0c
14019e85e:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
14019e864:	e8 fb cc fe ff       	call   0x14018b564
14019e869:	32 c0                	xor    %al,%al
14019e86b:	eb 40                	jmp    0x14019e8ad
14019e86d:	45 84 c0             	test   %r8b,%r8b
14019e870:	74 07                	je     0x14019e879
14019e872:	48 ff 81 88 00 00 00 	incq   0x88(%rcx)
14019e879:	48 83 c1 20          	add    $0x20,%rcx
14019e87d:	e8 c6 e6 ff ff       	call   0x14019cf48
14019e882:	48 83 e8 01          	sub    $0x1,%rax
14019e886:	74 20                	je     0x14019e8a8
14019e888:	48 83 e8 01          	sub    $0x1,%rax
14019e88c:	74 15                	je     0x14019e8a3
14019e88e:	48 83 e8 02          	sub    $0x2,%rax
14019e892:	74 0b                	je     0x14019e89f
14019e894:	48 83 e8 04          	sub    $0x4,%rax
14019e898:	75 cf                	jne    0x14019e869
14019e89a:	48 89 3b             	mov    %rdi,(%rbx)
14019e89d:	eb 0c                	jmp    0x14019e8ab
14019e89f:	89 3b                	mov    %edi,(%rbx)
14019e8a1:	eb 08                	jmp    0x14019e8ab
14019e8a3:	66 89 3b             	mov    %di,(%rbx)
14019e8a6:	eb 03                	jmp    0x14019e8ab
14019e8a8:	40 88 3b             	mov    %dil,(%rbx)
14019e8ab:	b0 01                	mov    $0x1,%al
14019e8ad:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14019e8b2:	48 83 c4 20          	add    $0x20,%rsp
14019e8b6:	5f                   	pop    %rdi
14019e8b7:	c3                   	ret
14019e8b8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14019e8bd:	57                   	push   %rdi
14019e8be:	48 83 ec 20          	sub    $0x20,%rsp
14019e8c2:	48 83 41 68 08       	addq   $0x8,0x68(%rcx)
14019e8c7:	48 8b fa             	mov    %rdx,%rdi