14009444d:	48 2b 01             	sub    (%rcx),%rax
140094450:	48 c1 f8 04          	sar    $0x4,%rax
140094454:	48 ba ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rdx
14009445b:	aa aa aa
14009445e:	48 0f af c2          	imul   %rdx,%rax
140094462:	49 b8 55 55 55 55 55 	movabs $0x555555555555555,%r8
140094469:	55 55 05
14009446c:	49 3b c0             	cmp    %r8,%rax
14009446f:	0f 84 71 01 00 00    	je     0x1400945e6
140094475:	4c 8d 78 01          	lea    0x1(%rax),%r15
140094479:	48 8b 49 10          	mov    0x10(%rcx),%rcx
14009447d:	49 2b 0e             	sub    (%r14),%rcx
140094480:	48 c1 f9 04          	sar    $0x4,%rcx
140094484:	48 0f af ca          	imul   %rdx,%rcx
140094488:	48 8b d1             	mov    %rcx,%rdx
14009448b:	48 d1 ea             	shr    $1,%rdx
14009448e:	49 8b c0             	mov    %r8,%rax
140094491:	48 2b c2             	sub    %rdx,%rax
140094494:	48 3b c8             	cmp    %rax,%rcx
140094497:	76 05                	jbe    0x14009449e
140094499:	49 8b f8             	mov    %r8,%rdi
14009449c:	eb 0b                	jmp    0x1400944a9
14009449e:	48 8d 3c 0a          	lea    (%rdx,%rcx,1),%rdi
1400944a2:	49 3b ff             	cmp    %r15,%rdi
1400944a5:	49 0f 42 ff          	cmovb  %r15,%rdi
1400944a9:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1400944ae:	49 3b f8             	cmp    %r8,%rdi
1400944b1:	0f 87 29 01 00 00    	ja     0x1400945e0
1400944b7:	48 8d 0c 7f          	lea    (%rdi,%rdi,2),%rcx
1400944bb:	48 c1 e1 04          	shl    $0x4,%rcx
1400944bf:	48 85 c9             	test   %rcx,%rcx
1400944c2:	75 09                	jne    0x1400944cd
1400944c4:	33 db                	xor    %ebx,%ebx
1400944c6:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
1400944cb:	eb 56                	jmp    0x140094523
1400944cd:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
1400944d4:	72 2e                	jb     0x140094504
1400944d6:	48 8d 41 27          	lea    0x27(%rcx),%rax
1400944da:	48 3b c1             	cmp    %rcx,%rax
1400944dd:	0f 86 fd 00 00 00    	jbe    0x1400945e0
1400944e3:	48 8b c8             	mov    %rax,%rcx
1400944e6:	ff 15 dc 83 a7 00    	call   *0xa783dc(%rip)        # 0x140b0c8c8
1400944ec:	48 85 c0             	test   %rax,%rax
1400944ef:	74 21                	je     0x140094512
1400944f1:	48 8d 58 27          	lea    0x27(%rax),%rbx
1400944f5:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
1400944f9:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
1400944fd:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
140094502:	eb 1a                	jmp    0x14009451e
140094504:	ff 15 be 83 a7 00    	call   *0xa783be(%rip)        # 0x140b0c8c8
14009450a:	48 8b d8             	mov    %rax,%rbx
14009450d:	48 85 c0             	test   %rax,%rax
140094510:	75 07                	jne    0x140094519
140094512:	ff 15 80 7f a7 00    	call   *0xa77f80(%rip)        # 0x140b0c498
140094518:	cc                   	int3
140094519:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
14009451e:	4c 8b 54 24 78       	mov    0x78(%rsp),%r10
140094523:	48 8d 34 76          	lea    (%rsi,%rsi,2),%rsi
140094527:	48 c1 e6 04          	shl    $0x4,%rsi
14009452b:	48 03 f3             	add    %rbx,%rsi
14009452e:	4c 8d 66 30          	lea    0x30(%rsi),%r12
140094532:	4c 89 64 24 28       	mov    %r12,0x28(%rsp)
140094537:	49 8b 55 10          	mov    0x10(%r13),%rdx
14009453b:	49 83 65 10 00       	andq   $0x0,0x10(%r13)
140094540:	49 8b 4d 08          	mov    0x8(%r13),%rcx
140094544:	49 83 65 08 00       	andq   $0x0,0x8(%r13)
140094549:	49 8b 45 00          	mov    0x0(%r13),%rax
14009454d:	49 83 65 00 00       	andq   $0x0,0x0(%r13)
140094552:	48 89 06             	mov    %rax,(%rsi)
140094555:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
140094559:	48 89 56 10          	mov    %rdx,0x10(%rsi)
14009455d:	49 8b 55 28          	mov    0x28(%r13),%rdx
140094561:	49 83 65 28 00       	andq   $0x0,0x28(%r13)
140094566:	49 8b 4d 20          	mov    0x20(%r13),%rcx
14009456a:	49 83 65 20 00       	andq   $0x0,0x20(%r13)
14009456f:	49 8b 45 18          	mov    0x18(%r13),%rax
140094573:	49 83 65 18 00       	andq   $0x0,0x18(%r13)
140094578:	48 89 46 18          	mov    %rax,0x18(%rsi)
14009457c:	48 89 4e 20          	mov    %rcx,0x20(%rsi)
140094580:	48 89 56 28          	mov    %rdx,0x28(%rsi)
140094584:	48 89 b4 24 88 00 00 	mov    %rsi,0x88(%rsp)
14009458b:	00
14009458c:	49 8b 56 08          	mov    0x8(%r14),%rdx
140094590:	4c 8b c3             	mov    %rbx,%r8
140094593:	49 8b 0e             	mov    (%r14),%rcx
140094596:	4c 3b d2             	cmp    %rdx,%r10
140094599:	74 1c                	je     0x1400945b7
14009459b:	49 8b d2             	mov    %r10,%rdx
14009459e:	e8 45 19 00 00       	call   0x140095ee8
1400945a3:	48 89 9c 24 88 00 00 	mov    %rbx,0x88(%rsp)
1400945aa:	00
1400945ab:	4d 8b c4             	mov    %r12,%r8
1400945ae:	49 8b 56 08          	mov    0x8(%r14),%rdx
1400945b2:	48 8b 4c 24 78       	mov    0x78(%rsp),%rcx
1400945b7:	e8 2c 19 00 00       	call   0x140095ee8
1400945bc:	4c 8b cf             	mov    %rdi,%r9
1400945bf:	4d 8b c7             	mov    %r15,%r8
1400945c2:	48 8b d3             	mov    %rbx,%rdx
1400945c5:	49 8b ce             	mov    %r14,%rcx
1400945c8:	e8 07 0d 00 00       	call   0x1400952d4
1400945cd:	48 8b c6             	mov    %rsi,%rax
1400945d0:	48 83 c4 30          	add    $0x30,%rsp
1400945d4:	41 5f                	pop    %r15
1400945d6:	41 5e                	pop    %r14
1400945d8:	41 5d                	pop    %r13
1400945da:	41 5c                	pop    %r12
1400945dc:	5f                   	pop    %rdi
1400945dd:	5e                   	pop    %rsi
1400945de:	5b                   	pop    %rbx
1400945df:	c3                   	ret
1400945e0:	e8 eb f6 f6 ff       	call   0x140003cd0
1400945e5:	cc                   	int3
1400945e6:	e8 7d 77 f8 ff       	call   0x14001bd68
1400945eb:	cc                   	int3
1400945ec:	90                   	nop
1400945ed:	90                   	nop
1400945ee:	90                   	nop
1400945ef:	90                   	nop
1400945f0:	40 53                	rex push %rbx
1400945f2:	56                   	push   %rsi
1400945f3:	57                   	push   %rdi
1400945f4:	41 54                	push   %r12
1400945f6:	41 55                	push   %r13
1400945f8:	41 56                	push   %r14
1400945fa:	41 57                	push   %r15
1400945fc:	48 83 ec 30          	sub    $0x30,%rsp
140094600:	4d 8b f8             	mov    %r8,%r15
140094603:	48 8b fa             	mov    %rdx,%rdi
140094606:	48 8b f1             	mov    %rcx,%rsi
140094609:	4c 8b ca             	mov    %rdx,%r9
14009460c:	4c 2b 09             	sub    (%rcx),%r9
14009460f:	49 ba ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%r10
140094616:	aa aa 2a
140094619:	49 8b c2             	mov    %r10,%rax
14009461c:	49 f7 e9             	imul   %r9
14009461f:	4c 8b e2             	mov    %rdx,%r12
140094622:	49 c1 fc 02          	sar    $0x2,%r12
140094626:	49 8b c4             	mov    %r12,%rax
140094629:	48 c1 e8 3f          	shr    $0x3f,%rax
14009462d:	4c 03 e0             	add    %rax,%r12
140094630:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140094634:	48 2b 0e             	sub    (%rsi),%rcx
140094637:	49 8b c2             	mov    %r10,%rax
14009463a:	48 f7 e9             	imul   %rcx
14009463d:	48 c1 fa 02          	sar    $0x2,%rdx
140094641:	48 8b c2             	mov    %rdx,%rax
140094644:	48 c1 e8 3f          	shr    $0x3f,%rax
140094648:	48 03 d0             	add    %rax,%rdx
14009464b:	49 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%r8
140094652:	aa aa 0a
140094655:	49 3b d0             	cmp    %r8,%rdx
140094658:	0f 84 88 02 00 00    	je     0x1400948e6
14009465e:	4c 8d 6a 01          	lea    0x1(%rdx),%r13
140094662:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140094666:	48 2b 0e             	sub    (%rsi),%rcx
140094669:	49 8b c2             	mov    %r10,%rax
14009466c:	48 f7 e9             	imul   %rcx
14009466f:	48 c1 fa 02          	sar    $0x2,%rdx
140094673:	48 8b c2             	mov    %rdx,%rax
140094676:	48 c1 e8 3f          	shr    $0x3f,%rax
14009467a:	48 03 d0             	add    %rax,%rdx
14009467d:	48 8b ca             	mov    %rdx,%rcx
140094680:	48 d1 e9             	shr    $1,%rcx
140094683:	49 8b c0             	mov    %r8,%rax
140094686:	48 2b c1             	sub    %rcx,%rax
140094689:	48 3b d0             	cmp    %rax,%rdx
14009468c:	76 05                	jbe    0x140094693
14009468e:	49 8b c0             	mov    %r8,%rax
140094691:	eb 0b                	jmp    0x14009469e
140094693:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
140094697:	49 3b c5             	cmp    %r13,%rax
14009469a:	49 0f 42 c5          	cmovb  %r13,%rax
14009469e:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
1400946a5:	00
1400946a6:	49 3b c0             	cmp    %r8,%rax
1400946a9:	0f 87 31 02 00 00    	ja     0x1400948e0
1400946af:	48 8d 04 40          	lea    (%rax,%rax,2),%rax
1400946b3:	4c 8d 34 c5 00 00 00 	lea    0x0(,%rax,8),%r14
1400946ba:	00
1400946bb:	4d 85 f6             	test   %r14,%r14
1400946be:	0f 85 a0 00 00 00    	jne    0x140094764
1400946c4:	33 db                	xor    %ebx,%ebx
1400946c6:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
1400946cb:	4b 8d 04 64          	lea    (%r12,%r12,2),%rax
1400946cf:	4c 8d 1c c5 00 00 00 	lea    0x0(,%rax,8),%r11
1400946d6:	00
1400946d7:	4e 8d 24 1b          	lea    (%rbx,%r11,1),%r12
1400946db:	49 8d 44 24 18       	lea    0x18(%r12),%rax
1400946e0:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400946e5:	49 8b 57 10          	mov    0x10(%r15),%rdx
1400946e9:	49 83 67 10 00       	andq   $0x0,0x10(%r15)
1400946ee:	49 8b 4f 08          	mov    0x8(%r15),%rcx
1400946f2:	49 83 67 08 00       	andq   $0x0,0x8(%r15)
1400946f7:	49 8b 07             	mov    (%r15),%rax
1400946fa:	49 83 27 00          	andq   $0x0,(%r15)
1400946fe:	49 89 04 24          	mov    %rax,(%r12)
140094702:	49 89 4c 24 08       	mov    %rcx,0x8(%r12)
140094707:	49 89 54 24 10       	mov    %rdx,0x10(%r12)
14009470c:	4c 89 64 24 78       	mov    %r12,0x78(%rsp)
140094711:	4c 8b 56 08          	mov    0x8(%rsi),%r10
140094715:	4c 8b 06             	mov    (%rsi),%r8
140094718:	49 3b fa             	cmp    %r10,%rdi
14009471b:	0f 85 91 00 00 00    	jne    0x1400947b2
140094721:	4d 3b c2             	cmp    %r10,%r8
140094724:	0f 84 0d 01 00 00    	je     0x140094837
14009472a:	4c 8d 4b 10          	lea    0x10(%rbx),%r9
14009472e:	45 33 ff             	xor    %r15d,%r15d
140094731:	49 8b 50 10          	mov    0x10(%r8),%rdx
140094735:	4d 89 78 10          	mov    %r15,0x10(%r8)
140094739:	49 8b 48 08          	mov    0x8(%r8),%rcx
14009473d:	4d 89 78 08          	mov    %r15,0x8(%r8)
140094741:	49 8b 00             	mov    (%r8),%rax
140094744:	4d 89 38             	mov    %r15,(%r8)
140094747:	49 89 41 f0          	mov    %rax,-0x10(%r9)
14009474b:	49 89 49 f8          	mov    %rcx,-0x8(%r9)
14009474f:	49 89 11             	mov    %rdx,(%r9)
140094752:	4d 8d 49 18          	lea    0x18(%r9),%r9
140094756:	49 83 c0 18          	add    $0x18,%r8
14009475a:	4d 3b c2             	cmp    %r10,%r8
14009475d:	75 d2                	jne    0x140094731
14009475f:	e9 d3 00 00 00       	jmp    0x140094837
140094764:	49 81 fe 00 10 00 00 	cmp    $0x1000,%r14
14009476b:	72 29                	jb     0x140094796
14009476d:	49 8d 4e 27          	lea    0x27(%r14),%rcx
140094771:	49 3b ce             	cmp    %r14,%rcx
140094774:	0f 86 66 01 00 00    	jbe    0x1400948e0
14009477a:	ff 15 48 81 a7 00    	call   *0xa78148(%rip)        # 0x140b0c8c8
140094780:	48 85 c0             	test   %rax,%rax
140094783:	74 26                	je     0x1400947ab
140094785:	48 8d 58 27          	lea    0x27(%rax),%rbx
140094789:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
14009478d:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
140094791:	e9 30 ff ff ff       	jmp    0x1400946c6
140094796:	49 8b ce             	mov    %r14,%rcx
140094799:	ff 15 29 81 a7 00    	call   *0xa78129(%rip)        # 0x140b0c8c8
14009479f:	48 8b d8             	mov    %rax,%rbx
1400947a2:	48 85 c0             	test   %rax,%rax
1400947a5:	0f 85 1b ff ff ff    	jne    0x1400946c6
1400947ab:	ff 15 e7 7c a7 00    	call   *0xa77ce7(%rip)        # 0x140b0c498
1400947b1:	90                   	nop
1400947b2:	45 33 ff             	xor    %r15d,%r15d
1400947b5:	4c 3b c7             	cmp    %rdi,%r8
1400947b8:	74 32                	je     0x1400947ec
1400947ba:	4c 8d 4b 10          	lea    0x10(%rbx),%r9
1400947be:	49 8b 50 10          	mov    0x10(%r8),%rdx
1400947c2:	4d 89 78 10          	mov    %r15,0x10(%r8)
1400947c6:	49 8b 48 08          	mov    0x8(%r8),%rcx
1400947ca:	4d 89 78 08          	mov    %r15,0x8(%r8)
1400947ce:	49 8b 00             	mov    (%r8),%rax
1400947d1:	4d 89 38             	mov    %r15,(%r8)
1400947d4:	49 89 41 f0          	mov    %rax,-0x10(%r9)
1400947d8:	49 89 49 f8          	mov    %rcx,-0x8(%r9)
1400947dc:	49 89 11             	mov    %rdx,(%r9)
1400947df:	4d 8d 49 18          	lea    0x18(%r9),%r9
1400947e3:	49 83 c0 18          	add    $0x18,%r8
1400947e7:	4c 3b c7             	cmp    %rdi,%r8
1400947ea:	75 d2                	jne    0x1400947be
1400947ec:	48 89 5c 24 78       	mov    %rbx,0x78(%rsp)
1400947f1:	4c 8b 56 08          	mov    0x8(%rsi),%r10
1400947f5:	49 3b fa             	cmp    %r10,%rdi
1400947f8:	74 3d                	je     0x140094837
1400947fa:	4c 8d 47 10          	lea    0x10(%rdi),%r8
1400947fe:	4c 2b df             	sub    %rdi,%r11
140094801:	4d 8d 0c 1b          	lea    (%r11,%rbx,1),%r9
140094805:	49 8b 10             	mov    (%r8),%rdx
140094808:	4d 89 38             	mov    %r15,(%r8)
14009480b:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
14009480f:	4d 89 78 f8          	mov    %r15,-0x8(%r8)
140094813:	49 8b 40 f0          	mov    -0x10(%r8),%rax
140094817:	4d 89 78 f0          	mov    %r15,-0x10(%r8)
14009481b:	4b 89 44 01 08       	mov    %rax,0x8(%r9,%r8,1)
140094820:	4b 89 4c 01 10       	mov    %rcx,0x10(%r9,%r8,1)
140094825:	4b 89 54 01 18       	mov    %rdx,0x18(%r9,%r8,1)
14009482a:	4d 8d 40 18          	lea    0x18(%r8),%r8
14009482e:	49 8d 40 f0          	lea    -0x10(%r8),%rax
140094832:	49 3b c2             	cmp    %r10,%rax
140094835:	75 ce                	jne    0x140094805
140094837:	48 8b 3e             	mov    (%rsi),%rdi
14009483a:	48 85 ff             	test   %rdi,%rdi
14009483d:	74 69                	je     0x1400948a8
14009483f:	4c 8b 7e 08          	mov    0x8(%rsi),%r15
140094843:	eb 0c                	jmp    0x140094851
140094845:	48 8b cf             	mov    %rdi,%rcx
140094848:	e8 83 66 f8 ff       	call   0x14001aed0
14009484d:	48 83 c7 18          	add    $0x18,%rdi
140094851:	49 3b ff             	cmp    %r15,%rdi
140094854:	75 ef                	jne    0x140094845
140094856:	4c 8b 06             	mov    (%rsi),%r8
140094859:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
14009485d:	49 2b c8             	sub    %r8,%rcx
140094860:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
140094867:	aa aa 2a
14009486a:	48 f7 e9             	imul   %rcx
14009486d:	48 c1 fa 02          	sar    $0x2,%rdx
140094871:	48 8b c2             	mov    %rdx,%rax
140094874:	48 c1 e8 3f          	shr    $0x3f,%rax
140094878:	48 03 d0             	add    %rax,%rdx
14009487b:	48 8d 04 52          	lea    (%rdx,%rdx,2),%rax
14009487f:	48 c1 e0 03          	shl    $0x3,%rax
140094883:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140094889:	72 14                	jb     0x14009489f
14009488b:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
14009488f:	4c 2b c1             	sub    %rcx,%r8
140094892:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140094896:	48 83 f8 1f          	cmp    $0x1f,%rax
14009489a:	77 3d                	ja     0x1400948d9
14009489c:	4c 8b c1             	mov    %rcx,%r8
14009489f:	49 8b c8             	mov    %r8,%rcx
1400948a2:	ff 15 18 80 a7 00    	call   *0xa78018(%rip)        # 0x140b0c8c0
1400948a8:	48 89 1e             	mov    %rbx,(%rsi)
1400948ab:	4a 8d 0c 6d 00 00 00 	lea    0x0(,%r13,2),%rcx
1400948b2:	00
1400948b3:	49 03 cd             	add    %r13,%rcx
1400948b6:	48 8d 14 cb          	lea    (%rbx,%rcx,8),%rdx
1400948ba:	48 89 56 08          	mov    %rdx,0x8(%rsi)
1400948be:	49 8d 0c 1e          	lea    (%r14,%rbx,1),%rcx
1400948c2:	48 89 4e 10          	mov    %rcx,0x10(%rsi)
1400948c6:	49 8b c4             	mov    %r12,%rax
1400948c9:	48 83 c4 30          	add    $0x30,%rsp
1400948cd:	41 5f                	pop    %r15
1400948cf:	41 5e                	pop    %r14
1400948d1:	41 5d                	pop    %r13
1400948d3:	41 5c                	pop    %r12
1400948d5:	5f                   	pop    %rdi
1400948d6:	5e                   	pop    %rsi
1400948d7:	5b                   	pop    %rbx
1400948d8:	c3                   	ret
1400948d9:	ff 15 b9 80 a7 00    	call   *0xa780b9(%rip)        # 0x140b0c998
1400948df:	cc                   	int3
1400948e0:	e8 eb f3 f6 ff       	call   0x140003cd0
1400948e5:	cc                   	int3
1400948e6:	e8 7d 74 f8 ff       	call   0x14001bd68
1400948eb:	cc                   	int3
1400948ec:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400948f1:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1400948f6:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
1400948fb:	57                   	push   %rdi
1400948fc:	41 56                	push   %r14
1400948fe:	41 57                	push   %r15
140094900:	48 83 ec 20          	sub    $0x20,%rsp
140094904:	48 8b fa             	mov    %rdx,%rdi
140094907:	4c 8b f1             	mov    %rcx,%r14
14009490a:	48 bb ff ff ff ff ff 	movabs $0x1fffffffffffffff,%rbx
140094911:	ff ff 1f
140094914:	48 3b d3             	cmp    %rbx,%rdx
140094917:	0f 87 a1 00 00 00    	ja     0x1400949be
14009491d:	4c 8b 79 08          	mov    0x8(%rcx),%r15
140094921:	4c 2b 39             	sub    (%rcx),%r15
140094924:	49 c1 ff 03          	sar    $0x3,%r15
140094928:	48 8b 49 10          	mov    0x10(%rcx),%rcx