14000765a:	49 2b c9             	sub    %r9,%rcx
14000765d:	48 3b ca             	cmp    %rdx,%rcx
140007660:	76 13                	jbe    0x140007675
140007662:	49 8d 04 11          	lea    (%r9,%rdx,1),%rax
140007666:	48 89 43 08          	mov    %rax,0x8(%rbx)
14000766a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14000766f:	48 83 c4 20          	add    $0x20,%rsp
140007673:	5f                   	pop    %rdi
140007674:	c3                   	ret
140007675:	73 71                	jae    0x1400076e8
140007677:	4c 8b 5b 10          	mov    0x10(%rbx),%r11
14000767b:	49 8b d1             	mov    %r9,%rdx
14000767e:	49 2b d0             	sub    %r8,%rdx
140007681:	49 8b c3             	mov    %r11,%rax
140007684:	49 2b c0             	sub    %r8,%rax
140007687:	4c 8d 14 3a          	lea    (%rdx,%rdi,1),%r10
14000768b:	49 3b c2             	cmp    %r10,%rax
14000768e:	73 3a                	jae    0x1400076ca
140007690:	48 8d 42 ff          	lea    -0x1(%rdx),%rax
140007694:	49 3b c2             	cmp    %r10,%rax
140007697:	72 5a                	jb     0x1400076f3
140007699:	4d 2b d9             	sub    %r9,%r11
14000769c:	4e 8d 04 11          	lea    (%rcx,%r10,1),%r8
1400076a0:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
1400076a4:	45 33 c9             	xor    %r9d,%r9d
1400076a7:	49 8b cb             	mov    %r11,%rcx
1400076aa:	48 d1 e9             	shr    $1,%rcx
1400076ad:	48 2b c1             	sub    %rcx,%rax
1400076b0:	49 3b c3             	cmp    %r11,%rax
1400076b3:	4a 8d 14 19          	lea    (%rcx,%r11,1),%rdx
1400076b7:	48 8b cb             	mov    %rbx,%rcx
1400076ba:	49 0f 42 d1          	cmovb  %r9,%rdx
1400076be:	49 3b d0             	cmp    %r8,%rdx
1400076c1:	49 0f 42 d0          	cmovb  %r8,%rdx
1400076c5:	e8 d6 f9 ff ff       	call   0x1400070a0
1400076ca:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1400076ce:	33 d2                	xor    %edx,%edx
1400076d0:	4c 8b 03             	mov    (%rbx),%r8
1400076d3:	4c 2b c1             	sub    %rcx,%r8
1400076d6:	4c 03 c7             	add    %rdi,%r8
1400076d9:	e8 d2 37 03 00       	call   0x14003aeb0
1400076de:	48 8b 0b             	mov    (%rbx),%rcx
1400076e1:	48 03 cf             	add    %rdi,%rcx
1400076e4:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
1400076e8:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400076ed:	48 83 c4 20          	add    $0x20,%rsp
1400076f1:	5f                   	pop    %rdi
1400076f2:	c3                   	ret
1400076f3:	48 8d 0d 76 54 03 00 	lea    0x35476(%rip),%rcx        # 0x14003cb70
1400076fa:	e8 ad 17 00 00       	call   0x140008eac
1400076ff:	cc                   	int3
140007700:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
140007705:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14000770a:	53                   	push   %rbx
14000770b:	55                   	push   %rbp
14000770c:	56                   	push   %rsi
14000770d:	57                   	push   %rdi
14000770e:	48 83 ec 38          	sub    $0x38,%rsp
140007712:	49 8b f0             	mov    %r8,%rsi
140007715:	48 8d 6c 24 78       	lea    0x78(%rsp),%rbp
14000771a:	48 8b da             	mov    %rdx,%rbx
14000771d:	48 8b f9             	mov    %rcx,%rdi
140007720:	e8 3b 9d ff ff       	call   0x140001460
140007725:	48 89 6c 24 28       	mov    %rbp,0x28(%rsp)
14000772a:	4c 8b ce             	mov    %rsi,%r9
14000772d:	4c 8b c3             	mov    %rbx,%r8
140007730:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
140007737:	00 00
140007739:	48 8b d7             	mov    %rdi,%rdx
14000773c:	48 8b 08             	mov    (%rax),%rcx
14000773f:	e8 a4 d7 00 00       	call   0x140014ee8
140007744:	83 c9 ff             	or     $0xffffffff,%ecx
140007747:	85 c0                	test   %eax,%eax
140007749:	0f 48 c1             	cmovs  %ecx,%eax
14000774c:	48 83 c4 38          	add    $0x38,%rsp
140007750:	5f                   	pop    %rdi
140007751:	5e                   	pop    %rsi
140007752:	5d                   	pop    %rbp
140007753:	5b                   	pop    %rbx
140007754:	c3                   	ret
140007755:	cc                   	int3
140007756:	cc                   	int3
140007757:	cc                   	int3
140007758:	cc                   	int3
140007759:	cc                   	int3
14000775a:	cc                   	int3
14000775b:	cc                   	int3
14000775c:	cc                   	int3
14000775d:	cc                   	int3
14000775e:	cc                   	int3
14000775f:	cc                   	int3
140007760:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140007765:	57                   	push   %rdi
140007766:	48 83 ec 20          	sub    $0x20,%rsp
14000776a:	33 ff                	xor    %edi,%edi
14000776c:	48 c7 41 18 07 00 00 	movq   $0x7,0x18(%rcx)
140007773:	00
140007774:	48 89 79 10          	mov    %rdi,0x10(%rcx)
140007778:	49 83 c9 ff          	or     $0xffffffffffffffff,%r9
14000777c:	45 33 c0             	xor    %r8d,%r8d
14000777f:	66 89 39             	mov    %di,(%rcx)
140007782:	48 8b d9             	mov    %rcx,%rbx
140007785:	e8 46 db ff ff       	call   0x1400052d0
14000778a:	48 c7 43 20 ff ff ff 	movq   $0xffffffffffffffff,0x20(%rbx)
140007791:	ff
140007792:	89 7b 28             	mov    %edi,0x28(%rbx)
140007795:	48 39 7b 10          	cmp    %rdi,0x10(%rbx)
140007799:	74 3b                	je     0x1400077d6
14000779b:	48 83 7b 18 08       	cmpq   $0x8,0x18(%rbx)
1400077a0:	72 05                	jb     0x1400077a7
1400077a2:	48 8b 13             	mov    (%rbx),%rdx
1400077a5:	eb 03                	jmp    0x1400077aa
1400077a7:	48 8b d3             	mov    %rbx,%rdx
1400077aa:	4c 8d 05 db 53 03 00 	lea    0x353db(%rip),%r8        # 0x14003cb8c
1400077b1:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1400077b6:	e8 5d f6 00 00       	call   0x140016e18
1400077bb:	85 c0                	test   %eax,%eax
1400077bd:	75 17                	jne    0x1400077d6
1400077bf:	48 8b 54 24 30       	mov    0x30(%rsp),%rdx
1400077c4:	48 8b cb             	mov    %rbx,%rcx
1400077c7:	e8 24 00 00 00       	call   0x1400077f0
1400077cc:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
1400077d1:	e8 c6 f7 00 00       	call   0x140016f9c
1400077d6:	48 8b c3             	mov    %rbx,%rax
1400077d9:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1400077de:	48 83 c4 20          	add    $0x20,%rsp
1400077e2:	5f                   	pop    %rdi
1400077e3:	c3                   	ret
1400077e4:	cc                   	int3
1400077e5:	cc                   	int3
1400077e6:	cc                   	int3
1400077e7:	cc                   	int3
1400077e8:	cc                   	int3
1400077e9:	cc                   	int3
1400077ea:	cc                   	int3
1400077eb:	cc                   	int3
1400077ec:	cc                   	int3
1400077ed:	cc                   	int3
1400077ee:	cc                   	int3
1400077ef:	cc                   	int3
1400077f0:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1400077f5:	57                   	push   %rdi
1400077f6:	48 81 ec b0 00 00 00 	sub    $0xb0,%rsp
1400077fd:	48 8b 05 bc 69 04 00 	mov    0x469bc(%rip),%rax        # 0x14004e1c0
140007804:	48 33 c4             	xor    %rsp,%rax
140007807:	48 89 84 24 a0 00 00 	mov    %rax,0xa0(%rsp)
14000780e:	00
14000780f:	48 8b fa             	mov    %rdx,%rdi
140007812:	48 8b f1             	mov    %rcx,%rsi
140007815:	4c 8b c2             	mov    %rdx,%r8
140007818:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14000781d:	ba 80 00 00 00       	mov    $0x80,%edx
140007822:	e8 e5 f8 00 00       	call   0x14001710c
140007827:	48 85 c0             	test   %rax,%rax
14000782a:	74 7b                	je     0x1400078a7
14000782c:	48 8d 44 24 20       	lea    0x20(%rsp),%rax
140007831:	4c 8d 05 4c 53 03 00 	lea    0x3534c(%rip),%r8        # 0x14003cb84
140007838:	4c 2b c0             	sub    %rax,%r8
14000783b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140007840:	0f b6 10             	movzbl (%rax),%edx
140007843:	42 0f b6 0c 00       	movzbl (%rax,%r8,1),%ecx
140007848:	2b d1                	sub    %ecx,%edx
14000784a:	75 07                	jne    0x140007853
14000784c:	48 ff c0             	inc    %rax
14000784f:	85 c9                	test   %ecx,%ecx
140007851:	75 ed                	jne    0x140007840
140007853:	85 d2                	test   %edx,%edx
140007855:	75 50                	jne    0x1400078a7
140007857:	4c 8d 46 24          	lea    0x24(%rsi),%r8
14000785b:	48 89 9c 24 d0 00 00 	mov    %rbx,0xd0(%rsp)
140007862:	00
140007863:	48 8d 15 52 53 03 00 	lea    0x35352(%rip),%rdx        # 0x14003cbbc
14000786a:	48 8b cf             	mov    %rdi,%rcx
14000786d:	e8 9e 02 00 00       	call   0x140007b10
140007872:	83 f8 01             	cmp    $0x1,%eax
140007875:	74 09                	je     0x140007880
140007877:	c7 46 24 ff ff ff ff 	movl   $0xffffffff,0x24(%rsi)
14000787e:	eb 1f                	jmp    0x14000789f
140007880:	4c 8d 46 28          	lea    0x28(%rsi),%r8
140007884:	48 8b cf             	mov    %rdi,%rcx
140007887:	48 8d 15 2e 53 03 00 	lea    0x3532e(%rip),%rdx        # 0x14003cbbc
14000788e:	e8 7d 02 00 00       	call   0x140007b10
140007893:	83 f8 01             	cmp    $0x1,%eax
140007896:	74 07                	je     0x14000789f
140007898:	c7 46 28 00 00 00 00 	movl   $0x0,0x28(%rsi)
14000789f:	48 8b 9c 24 d0 00 00 	mov    0xd0(%rsp),%rbx
1400078a6:	00
1400078a7:	48 8b 8c 24 a0 00 00 	mov    0xa0(%rsp),%rcx
1400078ae:	00
1400078af:	48 33 cc             	xor    %rsp,%rcx
1400078b2:	e8 e9 1a 00 00       	call   0x1400093a0
1400078b7:	48 8b b4 24 d8 00 00 	mov    0xd8(%rsp),%rsi
1400078be:	00
1400078bf:	48 81 c4 b0 00 00 00 	add    $0xb0,%rsp
1400078c6:	5f                   	pop    %rdi
1400078c7:	c3                   	ret
1400078c8:	cc                   	int3
1400078c9:	cc                   	int3
1400078ca:	cc                   	int3
1400078cb:	cc                   	int3
1400078cc:	cc                   	int3
1400078cd:	cc                   	int3
1400078ce:	cc                   	int3
1400078cf:	cc                   	int3
1400078d0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400078d5:	57                   	push   %rdi
1400078d6:	48 83 ec 20          	sub    $0x20,%rsp
1400078da:	3b 51 24             	cmp    0x24(%rcx),%edx
1400078dd:	48 8d 79 24          	lea    0x24(%rcx),%rdi
1400078e1:	74 09                	je     0x1400078ec
1400078e3:	89 17                	mov    %edx,(%rdi)
1400078e5:	c7 41 28 00 00 00 00 	movl   $0x0,0x28(%rcx)
1400078ec:	ff 41 28             	incl   0x28(%rcx)
1400078ef:	48 8d 59 28          	lea    0x28(%rcx),%rbx
1400078f3:	48 83 79 10 00       	cmpq   $0x0,0x10(%rcx)
1400078f8:	74 65                	je     0x14000795f
1400078fa:	48 83 79 18 08       	cmpq   $0x8,0x18(%rcx)
1400078ff:	72 03                	jb     0x140007904
140007901:	48 8b 09             	mov    (%rcx),%rcx
140007904:	48 8b d1             	mov    %rcx,%rdx
140007907:	4c 8d 05 b2 52 03 00 	lea    0x352b2(%rip),%r8        # 0x14003cbc0
14000790e:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140007913:	e8 00 f5 00 00       	call   0x140016e18
140007918:	85 c0                	test   %eax,%eax
14000791a:	75 43                	jne    0x14000795f
14000791c:	48 8b 54 24 30       	mov    0x30(%rsp),%rdx
140007921:	48 8d 0d 5c 52 03 00 	lea    0x3525c(%rip),%rcx        # 0x14003cb84
140007928:	e8 ab f8 00 00       	call   0x1400171d8
14000792d:	44 8b 07             	mov    (%rdi),%r8d
140007930:	48 8d 15 85 52 03 00 	lea    0x35285(%rip),%rdx        # 0x14003cbbc
140007937:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
14000793c:	e8 7f 01 00 00       	call   0x140007ac0
140007941:	44 8b 03             	mov    (%rbx),%r8d
140007944:	48 8d 15 71 52 03 00 	lea    0x35271(%rip),%rdx        # 0x14003cbbc
14000794b:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
140007950:	e8 6b 01 00 00       	call   0x140007ac0
140007955:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
14000795a:	e8 3d f6 00 00       	call   0x140016f9c
14000795f:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140007964:	48 83 c4 20          	add    $0x20,%rsp
140007968:	5f                   	pop    %rdi
140007969:	c3                   	ret
14000796a:	cc                   	int3
14000796b:	cc                   	int3
14000796c:	cc                   	int3
14000796d:	cc                   	int3
14000796e:	cc                   	int3
14000796f:	cc                   	int3
140007970:	40 55                	rex push %rbp
140007972:	56                   	push   %rsi
140007973:	57                   	push   %rdi
140007974:	41 54                	push   %r12
140007976:	41 56                	push   %r14
140007978:	41 57                	push   %r15
14000797a:	48 83 ec 78          	sub    $0x78,%rsp
14000797e:	48 8b 05 3b 68 04 00 	mov    0x4683b(%rip),%rax        # 0x14004e1c0
140007985:	48 33 c4             	xor    %rsp,%rax
140007988:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
14000798d:	4c 8b a4 24 d0 00 00 	mov    0xd0(%rsp),%r12
140007994:	00
140007995:	48 8b f9             	mov    %rcx,%rdi
140007998:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14000799d:	4d 8b f9             	mov    %r9,%r15
1400079a0:	4d 8b f0             	mov    %r8,%r14
1400079a3:	48 8b ea             	mov    %rdx,%rbp
1400079a6:	ff 15 ec 48 03 00    	call   *0x348ec(%rip)        # 0x14003c298
1400079ac:	0f b7 44 24 48       	movzwl 0x48(%rsp),%eax
1400079b1:	6b c8 64             	imul   $0x64,%eax,%ecx
1400079b4:	0f b7 44 24 4a       	movzwl 0x4a(%rsp),%eax
1400079b9:	03 c8                	add    %eax,%ecx
1400079bb:	0f b7 44 24 4e       	movzwl 0x4e(%rsp),%eax
1400079c0:	6b f1 64             	imul   $0x64,%ecx,%esi
1400079c3:	03 f0                	add    %eax,%esi
1400079c5:	3b 77 24             	cmp    0x24(%rdi),%esi
1400079c8:	75 17                	jne    0x1400079e1
1400079ca:	8b 47 20             	mov    0x20(%rdi),%eax
1400079cd:	83 f8 ff             	cmp    $0xffffffff,%eax
1400079d0:	74 0f                	je     0x1400079e1
1400079d2:	39 47 28             	cmp    %eax,0x28(%rdi)
1400079d5:	7c 0a                	jl     0x1400079e1
1400079d7:	b8 03 00 00 00       	mov    $0x3,%eax
1400079dc:	e9 a7 00 00 00       	jmp    0x140007a88
1400079e1:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
1400079e6:	48 8d 15 a3 51 03 00 	lea    0x351a3(%rip),%rdx        # 0x14003cb90
1400079ed:	33 db                	xor    %ebx,%ebx
1400079ef:	48 c7 44 24 60 07 00 	movq   $0x7,0x60(%rsp)
1400079f6:	00 00
1400079f8:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
1400079fd:	89 5c 24 40          	mov    %ebx,0x40(%rsp)
140007a01:	48 89 5c 24 58       	mov    %rbx,0x58(%rsp)
140007a06:	66 89 5c 24 48       	mov    %bx,0x48(%rsp)
140007a0b:	44 8d 43 14          	lea    0x14(%rbx),%r8d
140007a0f:	e8 0c da ff ff       	call   0x140005420
140007a14:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
140007a19:	4d 8b c7             	mov    %r15,%r8
140007a1c:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140007a21:	4c 8d 4c 24 48       	lea    0x48(%rsp),%r9
140007a26:	4c 89 64 24 28       	mov    %r12,0x28(%rsp)
140007a2b:	49 8b d6             	mov    %r14,%rdx
140007a2e:	48 8b cd             	mov    %rbp,%rcx
140007a31:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140007a36:	e8 35 db 02 00       	call   0x140035570
140007a3b:	4c 8b 44 24 60       	mov    0x60(%rsp),%r8
140007a40:	0f b6 e8             	movzbl %al,%ebp
140007a43:	49 83 f8 08          	cmp    $0x8,%r8
140007a47:	72 12                	jb     0x140007a5b
140007a49:	48 8b 54 24 48       	mov    0x48(%rsp),%rdx
140007a4e:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140007a53:	49 ff c0             	inc    %r8
140007a56:	e8 15 db ff ff       	call   0x140005570
140007a5b:	40 84 ed             	test   %bpl,%bpl
140007a5e:	74 11                	je     0x140007a71
140007a60:	8b d6                	mov    %esi,%edx
140007a62:	48 8b cf             	mov    %rdi,%rcx
140007a65:	e8 66 fe ff ff       	call   0x1400078d0
140007a6a:	b8 02 00 00 00       	mov    $0x2,%eax
140007a6f:	eb 12                	jmp    0x140007a83
140007a71:	8b 4c 24 40          	mov    0x40(%rsp),%ecx
140007a75:	81 c1 70 fe ff ff    	add    $0xfffffe70,%ecx
140007a7b:	83 f9 63             	cmp    $0x63,%ecx
140007a7e:	0f 96 c3             	setbe  %bl
140007a81:	8b c3                	mov    %ebx,%eax
140007a83:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
140007a88:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
140007a8d:	48 33 cc             	xor    %rsp,%rcx
140007a90:	e8 0b 19 00 00       	call   0x1400093a0
140007a95:	48 83 c4 78          	add    $0x78,%rsp
140007a99:	41 5f                	pop    %r15
140007a9b:	41 5e                	pop    %r14
140007a9d:	41 5c                	pop    %r12
140007a9f:	5f                   	pop    %rdi
140007aa0:	5e                   	pop    %rsi
140007aa1:	5d                   	pop    %rbp
140007aa2:	c3                   	ret
140007aa3:	cc                   	int3
140007aa4:	cc                   	int3
140007aa5:	cc                   	int3
140007aa6:	cc                   	int3
140007aa7:	cc                   	int3
140007aa8:	cc                   	int3
140007aa9:	cc                   	int3
140007aaa:	cc                   	int3
140007aab:	cc                   	int3
140007aac:	cc                   	int3
140007aad:	cc                   	int3
140007aae:	cc                   	int3
140007aaf:	cc                   	int3
140007ab0:	48 8d 05 81 79 04 00 	lea    0x47981(%rip),%rax        # 0x14004f438
140007ab7:	c3                   	ret
140007ab8:	cc                   	int3