140a595d0:	48 85 c0             	test   %rax,%rax
140a595d3:	74 04                	je     0x140a595d9
140a595d5:	4d 89 47 08          	mov    %r8,0x8(%r15)
140a595d9:	48 89 42 08          	mov    %rax,0x8(%rdx)
140a595dd:	48 89 94 24 98 00 00 	mov    %rdx,0x98(%rsp)
140a595e4:	00
140a595e5:	4d 8b 4e 08          	mov    0x8(%r14),%r9
140a595e9:	49 8b 06             	mov    (%r14),%rax
140a595ec:	49 3b d9             	cmp    %r9,%rbx
140a595ef:	75 2e                	jne    0x140a5961f
140a595f1:	49 3b c1             	cmp    %r9,%rax
140a595f4:	0f 84 93 00 00 00    	je     0x140a5968d
140a595fa:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
140a595fe:	66 90                	xchg   %ax,%ax
140a59600:	48 8b 50 08          	mov    0x8(%rax),%rdx
140a59604:	48 85 d2             	test   %rdx,%rdx
140a59607:	74 04                	je     0x140a5960d
140a59609:	4c 89 40 08          	mov    %r8,0x8(%rax)
140a5960d:	48 89 11             	mov    %rdx,(%rcx)
140a59610:	48 83 c1 10          	add    $0x10,%rcx
140a59614:	48 83 c0 10          	add    $0x10,%rax
140a59618:	49 3b c1             	cmp    %r9,%rax
140a5961b:	75 e3                	jne    0x140a59600
140a5961d:	eb 6e                	jmp    0x140a5968d
140a5961f:	48 3b c3             	cmp    %rbx,%rax
140a59622:	74 29                	je     0x140a5964d
140a59624:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
140a59628:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140a5962f:	00
140a59630:	48 8b 50 08          	mov    0x8(%rax),%rdx
140a59634:	48 85 d2             	test   %rdx,%rdx
140a59637:	74 04                	je     0x140a5963d
140a59639:	4c 89 40 08          	mov    %r8,0x8(%rax)
140a5963d:	48 89 11             	mov    %rdx,(%rcx)
140a59640:	48 83 c1 10          	add    $0x10,%rcx
140a59644:	48 83 c0 10          	add    $0x10,%rax
140a59648:	48 3b c3             	cmp    %rbx,%rax
140a5964b:	75 e3                	jne    0x140a59630
140a5964d:	48 89 b4 24 98 00 00 	mov    %rsi,0x98(%rsp)
140a59654:	00
140a59655:	4d 8b 4e 08          	mov    0x8(%r14),%r9
140a59659:	49 3b d9             	cmp    %r9,%rbx
140a5965c:	74 2f                	je     0x140a5968d
140a5965e:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a59662:	48 8b d6             	mov    %rsi,%rdx
140a59665:	48 2b d3             	sub    %rbx,%rdx
140a59668:	48 03 d7             	add    %rdi,%rdx
140a5966b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140a59670:	48 8b 01             	mov    (%rcx),%rax
140a59673:	48 85 c0             	test   %rax,%rax
140a59676:	74 03                	je     0x140a5967b
140a59678:	4c 89 01             	mov    %r8,(%rcx)
140a5967b:	48 89 44 11 10       	mov    %rax,0x10(%rcx,%rdx,1)
140a59680:	48 83 c1 10          	add    $0x10,%rcx
140a59684:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140a59688:	49 3b c1             	cmp    %r9,%rax
140a5968b:	75 e3                	jne    0x140a59670
140a5968d:	49 8b 1e             	mov    (%r14),%rbx
140a59690:	48 85 db             	test   %rbx,%rbx
140a59693:	74 57                	je     0x140a596ec
140a59695:	49 8b 7e 08          	mov    0x8(%r14),%rdi
140a59699:	48 3b df             	cmp    %rdi,%rbx
140a5969c:	74 1a                	je     0x140a596b8
140a5969e:	66 90                	xchg   %ax,%ax
140a596a0:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140a596a4:	48 85 c9             	test   %rcx,%rcx
140a596a7:	74 06                	je     0x140a596af
140a596a9:	e8 82 ea fa ff       	call   0x140a08130
140a596ae:	90                   	nop
140a596af:	48 83 c3 10          	add    $0x10,%rbx
140a596b3:	48 3b df             	cmp    %rdi,%rbx
140a596b6:	75 e8                	jne    0x140a596a0
140a596b8:	49 8b 0e             	mov    (%r14),%rcx
140a596bb:	49 8b 56 10          	mov    0x10(%r14),%rdx
140a596bf:	48 2b d1             	sub    %rcx,%rdx
140a596c2:	48 83 e2 f0          	and    $0xfffffffffffffff0,%rdx
140a596c6:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140a596cd:	72 18                	jb     0x140a596e7
140a596cf:	48 83 c2 27          	add    $0x27,%rdx
140a596d3:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
140a596d7:	49 2b c8             	sub    %r8,%rcx
140a596da:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140a596de:	48 83 f8 1f          	cmp    $0x1f,%rax
140a596e2:	77 3f                	ja     0x140a59723
140a596e4:	49 8b c8             	mov    %r8,%rcx
140a596e7:	e8 58 1a 3c 00       	call   0x140e1b144
140a596ec:	49 89 36             	mov    %rsi,(%r14)
140a596ef:	49 c1 e5 04          	shl    $0x4,%r13
140a596f3:	4c 03 ee             	add    %rsi,%r13
140a596f6:	4d 89 6e 08          	mov    %r13,0x8(%r14)
140a596fa:	49 8d 0c 34          	lea    (%r12,%rsi,1),%rcx
140a596fe:	49 89 4e 10          	mov    %rcx,0x10(%r14)
140a59702:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140a59707:	48 83 c4 40          	add    $0x40,%rsp
140a5970b:	41 5f                	pop    %r15
140a5970d:	41 5e                	pop    %r14
140a5970f:	41 5d                	pop    %r13
140a59711:	41 5c                	pop    %r12
140a59713:	5f                   	pop    %rdi
140a59714:	5e                   	pop    %rsi
140a59715:	5b                   	pop    %rbx
140a59716:	c3                   	ret
140a59717:	e8 74 3a 74 ff       	call   0x14019d190
140a5971c:	cc                   	int3
140a5971d:	e8 6e 3e 74 ff       	call   0x14019d590
140a59722:	cc                   	int3
140a59723:	e8 7c 0a 3d 00       	call   0x140e2a1a4
140a59728:	cc                   	int3
140a59729:	cc                   	int3
140a5972a:	cc                   	int3
140a5972b:	cc                   	int3
140a5972c:	cc                   	int3
140a5972d:	cc                   	int3
140a5972e:	cc                   	int3
140a5972f:	cc                   	int3
140a59730:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140a59735:	53                   	push   %rbx
140a59736:	56                   	push   %rsi
140a59737:	57                   	push   %rdi
140a59738:	41 54                	push   %r12
140a5973a:	41 55                	push   %r13
140a5973c:	41 56                	push   %r14
140a5973e:	41 57                	push   %r15
140a59740:	48 83 ec 40          	sub    $0x40,%rsp
140a59744:	4d 8b f8             	mov    %r8,%r15
140a59747:	48 8b da             	mov    %rdx,%rbx
140a5974a:	4c 8b f1             	mov    %rcx,%r14
140a5974d:	48 8b 11             	mov    (%rcx),%rdx
140a59750:	48 8b fb             	mov    %rbx,%rdi
140a59753:	48 2b fa             	sub    %rdx,%rdi
140a59756:	48 8b 41 08          	mov    0x8(%rcx),%rax
140a5975a:	48 2b c2             	sub    %rdx,%rax
140a5975d:	48 c1 f8 04          	sar    $0x4,%rax
140a59761:	49 b8 ff ff ff ff ff 	movabs $0xfffffffffffffff,%r8
140a59768:	ff ff 0f
140a5976b:	49 3b c0             	cmp    %r8,%rax
140a5976e:	0f 84 0f 02 00 00    	je     0x140a59983
140a59774:	4c 8d 68 01          	lea    0x1(%rax),%r13
140a59778:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140a5977c:	48 2b ca             	sub    %rdx,%rcx
140a5977f:	48 c1 f9 04          	sar    $0x4,%rcx
140a59783:	48 8b d1             	mov    %rcx,%rdx
140a59786:	48 d1 ea             	shr    $1,%rdx
140a59789:	49 8b c0             	mov    %r8,%rax
140a5978c:	48 2b c2             	sub    %rdx,%rax
140a5978f:	48 3b c8             	cmp    %rax,%rcx
140a59792:	0f 87 e5 01 00 00    	ja     0x140a5997d
140a59798:	48 8d 04 0a          	lea    (%rdx,%rcx,1),%rax
140a5979c:	49 8b cd             	mov    %r13,%rcx
140a5979f:	49 3b c5             	cmp    %r13,%rax
140a597a2:	48 0f 43 c8          	cmovae %rax,%rcx
140a597a6:	49 3b c8             	cmp    %r8,%rcx
140a597a9:	0f 87 ce 01 00 00    	ja     0x140a5997d
140a597af:	4c 8b e1             	mov    %rcx,%r12
140a597b2:	49 c1 e4 04          	shl    $0x4,%r12
140a597b6:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140a597bb:	4d 85 e4             	test   %r12,%r12
140a597be:	75 15                	jne    0x140a597d5
140a597c0:	45 33 c0             	xor    %r8d,%r8d
140a597c3:	41 8b f0             	mov    %r8d,%esi
140a597c6:	4c 89 84 24 88 00 00 	mov    %r8,0x88(%rsp)
140a597cd:	00
140a597ce:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140a597d3:	eb 51                	jmp    0x140a59826
140a597d5:	49 81 fc 00 10 00 00 	cmp    $0x1000,%r12
140a597dc:	72 32                	jb     0x140a59810
140a597de:	49 8d 4c 24 27       	lea    0x27(%r12),%rcx
140a597e3:	49 3b cc             	cmp    %r12,%rcx
140a597e6:	0f 86 91 01 00 00    	jbe    0x140a5997d
140a597ec:	e8 17 19 3c 00       	call   0x140e1b108
140a597f1:	48 85 c0             	test   %rax,%rax
140a597f4:	0f 84 8f 01 00 00    	je     0x140a59989
140a597fa:	48 8d 70 27          	lea    0x27(%rax),%rsi
140a597fe:	48 83 e6 e0          	and    $0xffffffffffffffe0,%rsi
140a59802:	48 89 46 f8          	mov    %rax,-0x8(%rsi)
140a59806:	48 89 b4 24 88 00 00 	mov    %rsi,0x88(%rsp)
140a5980d:	00
140a5980e:	eb 13                	jmp    0x140a59823
140a59810:	49 8b cc             	mov    %r12,%rcx
140a59813:	e8 f0 18 3c 00       	call   0x140e1b108
140a59818:	48 8b f0             	mov    %rax,%rsi
140a5981b:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
140a59822:	00
140a59823:	45 33 c0             	xor    %r8d,%r8d
140a59826:	48 83 e7 f0          	and    $0xfffffffffffffff0,%rdi
140a5982a:	48 8d 14 37          	lea    (%rdi,%rsi,1),%rdx
140a5982e:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
140a59833:	48 8d 4a 10          	lea    0x10(%rdx),%rcx
140a59837:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
140a5983c:	49 8b 47 08          	mov    0x8(%r15),%rax
140a59840:	48 85 c0             	test   %rax,%rax
140a59843:	74 04                	je     0x140a59849
140a59845:	4d 89 47 08          	mov    %r8,0x8(%r15)
140a59849:	48 89 42 08          	mov    %rax,0x8(%rdx)
140a5984d:	48 89 94 24 98 00 00 	mov    %rdx,0x98(%rsp)
140a59854:	00
140a59855:	4d 8b 4e 08          	mov    0x8(%r14),%r9
140a59859:	49 8b 06             	mov    (%r14),%rax
140a5985c:	49 3b d9             	cmp    %r9,%rbx
140a5985f:	75 2e                	jne    0x140a5988f
140a59861:	49 3b c1             	cmp    %r9,%rax
140a59864:	0f 84 8b 00 00 00    	je     0x140a598f5
140a5986a:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
140a5986e:	66 90                	xchg   %ax,%ax
140a59870:	48 8b 50 08          	mov    0x8(%rax),%rdx
140a59874:	48 85 d2             	test   %rdx,%rdx
140a59877:	74 04                	je     0x140a5987d
140a59879:	4c 89 40 08          	mov    %r8,0x8(%rax)
140a5987d:	48 89 11             	mov    %rdx,(%rcx)
140a59880:	48 83 c1 10          	add    $0x10,%rcx
140a59884:	48 83 c0 10          	add    $0x10,%rax
140a59888:	49 3b c1             	cmp    %r9,%rax
140a5988b:	75 e3                	jne    0x140a59870
140a5988d:	eb 66                	jmp    0x140a598f5
140a5988f:	48 3b c3             	cmp    %rbx,%rax
140a59892:	74 29                	je     0x140a598bd
140a59894:	48 8d 4e 08          	lea    0x8(%rsi),%rcx
140a59898:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140a5989f:	00
140a598a0:	48 8b 50 08          	mov    0x8(%rax),%rdx
140a598a4:	48 85 d2             	test   %rdx,%rdx
140a598a7:	74 04                	je     0x140a598ad
140a598a9:	4c 89 40 08          	mov    %r8,0x8(%rax)
140a598ad:	48 89 11             	mov    %rdx,(%rcx)
140a598b0:	48 83 c1 10          	add    $0x10,%rcx
140a598b4:	48 83 c0 10          	add    $0x10,%rax
140a598b8:	48 3b c3             	cmp    %rbx,%rax
140a598bb:	75 e3                	jne    0x140a598a0
140a598bd:	48 89 b4 24 98 00 00 	mov    %rsi,0x98(%rsp)
140a598c4:	00
140a598c5:	49 8b 56 08          	mov    0x8(%r14),%rdx
140a598c9:	48 3b da             	cmp    %rdx,%rbx
140a598cc:	74 27                	je     0x140a598f5
140a598ce:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a598d2:	48 2b fb             	sub    %rbx,%rdi
140a598d5:	48 03 fe             	add    %rsi,%rdi
140a598d8:	48 8b 01             	mov    (%rcx),%rax
140a598db:	48 85 c0             	test   %rax,%rax
140a598de:	74 03                	je     0x140a598e3
140a598e0:	4c 89 01             	mov    %r8,(%rcx)
140a598e3:	48 89 44 0f 10       	mov    %rax,0x10(%rdi,%rcx,1)
140a598e8:	48 83 c1 10          	add    $0x10,%rcx
140a598ec:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140a598f0:	48 3b c2             	cmp    %rdx,%rax
140a598f3:	75 e3                	jne    0x140a598d8
140a598f5:	49 8b 1e             	mov    (%r14),%rbx
140a598f8:	48 85 db             	test   %rbx,%rbx
140a598fb:	74 55                	je     0x140a59952
140a598fd:	49 8b 7e 08          	mov    0x8(%r14),%rdi
140a59901:	48 3b df             	cmp    %rdi,%rbx
140a59904:	74 18                	je     0x140a5991e
140a59906:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140a5990a:	48 85 c9             	test   %rcx,%rcx
140a5990d:	74 06                	je     0x140a59915
140a5990f:	e8 bc e7 fa ff       	call   0x140a080d0
140a59914:	90                   	nop
140a59915:	48 83 c3 10          	add    $0x10,%rbx
140a59919:	48 3b df             	cmp    %rdi,%rbx
140a5991c:	75 e8                	jne    0x140a59906
140a5991e:	49 8b 0e             	mov    (%r14),%rcx
140a59921:	49 8b 56 10          	mov    0x10(%r14),%rdx
140a59925:	48 2b d1             	sub    %rcx,%rdx
140a59928:	48 83 e2 f0          	and    $0xfffffffffffffff0,%rdx
140a5992c:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140a59933:	72 18                	jb     0x140a5994d
140a59935:	48 83 c2 27          	add    $0x27,%rdx
140a59939:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
140a5993d:	49 2b c8             	sub    %r8,%rcx
140a59940:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140a59944:	48 83 f8 1f          	cmp    $0x1f,%rax
140a59948:	77 3f                	ja     0x140a59989
140a5994a:	49 8b c8             	mov    %r8,%rcx
140a5994d:	e8 f2 17 3c 00       	call   0x140e1b144
140a59952:	49 89 36             	mov    %rsi,(%r14)
140a59955:	49 c1 e5 04          	shl    $0x4,%r13
140a59959:	4c 03 ee             	add    %rsi,%r13
140a5995c:	4d 89 6e 08          	mov    %r13,0x8(%r14)
140a59960:	49 8d 0c 34          	lea    (%r12,%rsi,1),%rcx
140a59964:	49 89 4e 10          	mov    %rcx,0x10(%r14)
140a59968:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140a5996d:	48 83 c4 40          	add    $0x40,%rsp
140a59971:	41 5f                	pop    %r15
140a59973:	41 5e                	pop    %r14
140a59975:	41 5d                	pop    %r13
140a59977:	41 5c                	pop    %r12
140a59979:	5f                   	pop    %rdi
140a5997a:	5e                   	pop    %rsi
140a5997b:	5b                   	pop    %rbx
140a5997c:	c3                   	ret
140a5997d:	e8 0e 38 74 ff       	call   0x14019d190
140a59982:	cc                   	int3
140a59983:	e8 08 3c 74 ff       	call   0x14019d590
140a59988:	cc                   	int3
140a59989:	e8 16 08 3d 00       	call   0x140e2a1a4
140a5998e:	cc                   	int3
140a5998f:	cc                   	int3
140a59990:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140a59995:	53                   	push   %rbx
140a59996:	56                   	push   %rsi
140a59997:	57                   	push   %rdi
140a59998:	41 54                	push   %r12
140a5999a:	41 55                	push   %r13
140a5999c:	41 56                	push   %r14
140a5999e:	41 57                	push   %r15
140a599a0:	48 83 ec 40          	sub    $0x40,%rsp
140a599a4:	4d 8b f8             	mov    %r8,%r15
140a599a7:	48 8b da             	mov    %rdx,%rbx
140a599aa:	4c 8b f1             	mov    %rcx,%r14
140a599ad:	4c 8b 11             	mov    (%rcx),%r10
140a599b0:	4c 8b ca             	mov    %rdx,%r9
140a599b3:	4d 2b ca             	sub    %r10,%r9
140a599b6:	49 bb ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%r11
140a599bd:	aa aa 2a
140a599c0:	49 8b c3             	mov    %r11,%rax
140a599c3:	49 f7 e9             	imul   %r9
140a599c6:	48 8b f2             	mov    %rdx,%rsi
140a599c9:	48 c1 fe 02          	sar    $0x2,%rsi
140a599cd:	48 8b c6             	mov    %rsi,%rax
140a599d0:	48 c1 e8 3f          	shr    $0x3f,%rax
140a599d4:	48 03 f0             	add    %rax,%rsi
140a599d7:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140a599db:	49 2b ca             	sub    %r10,%rcx
140a599de:	49 8b c3             	mov    %r11,%rax
140a599e1:	48 f7 e9             	imul   %rcx
140a599e4:	48 c1 fa 02          	sar    $0x2,%rdx
140a599e8:	48 8b c2             	mov    %rdx,%rax
140a599eb:	48 c1 e8 3f          	shr    $0x3f,%rax
140a599ef:	48 03 d0             	add    %rax,%rdx
140a599f2:	49 b9 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%r9
140a599f9:	aa aa 0a
140a599fc:	49 3b d1             	cmp    %r9,%rdx
140a599ff:	0f 84 54 02 00 00    	je     0x140a59c59
140a59a05:	4c 8d 42 01          	lea    0x1(%rdx),%r8
140a59a09:	4c 89 44 24 28       	mov    %r8,0x28(%rsp)
140a59a0e:	49 8b 4e 10          	mov    0x10(%r14),%rcx
140a59a12:	49 2b ca             	sub    %r10,%rcx
140a59a15:	49 8b c3             	mov    %r11,%rax
140a59a18:	48 f7 e9             	imul   %rcx
140a59a1b:	48 c1 fa 02          	sar    $0x2,%rdx
140a59a1f:	48 8b c2             	mov    %rdx,%rax
140a59a22:	48 c1 e8 3f          	shr    $0x3f,%rax
140a59a26:	48 03 d0             	add    %rax,%rdx
140a59a29:	48 8b ca             	mov    %rdx,%rcx
140a59a2c:	48 d1 e9             	shr    $1,%rcx
140a59a2f:	49 8b c1             	mov    %r9,%rax
140a59a32:	48 2b c1             	sub    %rcx,%rax
140a59a35:	48 3b d0             	cmp    %rax,%rdx
140a59a38:	0f 87 15 02 00 00    	ja     0x140a59c53
140a59a3e:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
140a59a42:	49 8b c8             	mov    %r8,%rcx