14065b277:	48 83 c4 20          	add    $0x20,%rsp
14065b27b:	5f                   	pop    %rdi
14065b27c:	c3                   	ret
14065b27d:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
14065b282:	48 8b c2             	mov    %rdx,%rax
14065b285:	49 2b c0             	sub    %r8,%rax
14065b288:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
14065b28d:	48 c1 f8 03          	sar    $0x3,%rax
14065b291:	40 32 f6             	xor    %sil,%sil
14065b294:	33 ed                	xor    %ebp,%ebp
14065b296:	48 83 f8 01          	cmp    $0x1,%rax
14065b29a:	0f 84 1f 01 00 00    	je     0x14065b3bf
14065b2a0:	33 c0                	xor    %eax,%eax
14065b2a2:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
14065b2a7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14065b2ae:	00 00
14065b2b0:	4d 8d 0c c0          	lea    (%r8,%rax,8),%r9
14065b2b4:	49 8b 04 c0          	mov    (%r8,%rax,8),%rax
14065b2b8:	80 78 70 00          	cmpb   $0x0,0x70(%rax)
14065b2bc:	0f 84 d7 00 00 00    	je     0x14065b399
14065b2c2:	48 63 88 84 00 00 00 	movslq 0x84(%rax),%rcx
14065b2c9:	49 2b d0             	sub    %r8,%rdx
14065b2cc:	48 c1 fa 03          	sar    $0x3,%rdx
14065b2d0:	8d 42 ff             	lea    -0x1(%rdx),%eax
14065b2d3:	3b c8                	cmp    %eax,%ecx
14065b2d5:	74 44                	je     0x14065b31b
14065b2d7:	49 8b 4c c8 08       	mov    0x8(%r8,%rcx,8),%rcx
14065b2dc:	48 3b 4f 30          	cmp    0x30(%rdi),%rcx
14065b2e0:	74 39                	je     0x14065b31b
14065b2e2:	48 63 81 84 00 00 00 	movslq 0x84(%rcx),%rax
14065b2e9:	48 3b c2             	cmp    %rdx,%rax
14065b2ec:	73 14                	jae    0x14065b302
14065b2ee:	66 90                	xchg   %ax,%ax
14065b2f0:	49 8b 0c c0          	mov    (%r8,%rax,8),%rcx
14065b2f4:	80 79 70 00          	cmpb   $0x0,0x70(%rcx)
14065b2f8:	75 08                	jne    0x14065b302
14065b2fa:	48 ff c0             	inc    %rax
14065b2fd:	48 3b c2             	cmp    %rdx,%rax
14065b300:	72 ee                	jb     0x14065b2f0
14065b302:	48 8b 1f             	mov    (%rdi),%rbx
14065b305:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
14065b309:	48 2b cb             	sub    %rbx,%rcx
14065b30c:	48 c1 f9 03          	sar    $0x3,%rcx
14065b310:	48 3b c1             	cmp    %rcx,%rax
14065b313:	73 06                	jae    0x14065b31b
14065b315:	48 8b 1c c3          	mov    (%rbx,%rax,8),%rbx
14065b319:	eb 02                	jmp    0x14065b31d
14065b31b:	33 db                	xor    %ebx,%ebx
14065b31d:	49 8b 09             	mov    (%r9),%rcx
14065b320:	48 8b 41 78          	mov    0x78(%rcx),%rax
14065b324:	48 3b 47 30          	cmp    0x30(%rdi),%rax
14065b328:	75 16                	jne    0x14065b340
14065b32a:	48 85 db             	test   %rbx,%rbx
14065b32d:	75 11                	jne    0x14065b340
14065b32f:	48 63 91 84 00 00 00 	movslq 0x84(%rcx),%rdx
14065b336:	48 8b cf             	mov    %rdi,%rcx
14065b339:	e8 42 e6 ff ff       	call   0x140659980
14065b33e:	eb 56                	jmp    0x14065b396
14065b340:	48 85 c0             	test   %rax,%rax
14065b343:	74 2b                	je     0x14065b370
14065b345:	8b 90 84 00 00 00    	mov    0x84(%rax),%edx
14065b34b:	48 63 81 84 00 00 00 	movslq 0x84(%rcx),%rax
14065b352:	3b d0                	cmp    %eax,%edx
14065b354:	7e 1a                	jle    0x14065b370
14065b356:	48 85 db             	test   %rbx,%rbx
14065b359:	74 08                	je     0x14065b363
14065b35b:	3b 93 84 00 00 00    	cmp    0x84(%rbx),%edx
14065b361:	7f 0d                	jg     0x14065b370
14065b363:	48 8b d0             	mov    %rax,%rdx
14065b366:	48 8b cf             	mov    %rdi,%rcx
14065b369:	e8 12 e6 ff ff       	call   0x140659980
14065b36e:	eb 26                	jmp    0x14065b396
14065b370:	e8 9b a8 f5 ff       	call   0x1405b5c10
14065b375:	84 c0                	test   %al,%al
14065b377:	74 20                	je     0x14065b399
14065b379:	48 85 db             	test   %rbx,%rbx
14065b37c:	74 1b                	je     0x14065b399
14065b37e:	83 bb 88 00 00 00 00 	cmpl   $0x0,0x88(%rbx)
14065b385:	75 12                	jne    0x14065b399
14065b387:	48 63 93 84 00 00 00 	movslq 0x84(%rbx),%rdx
14065b38e:	48 8b cf             	mov    %rdi,%rcx
14065b391:	e8 ba e7 ff ff       	call   0x140659b50
14065b396:	40 b6 01             	mov    $0x1,%sil
14065b399:	48 8b 57 08          	mov    0x8(%rdi),%rdx
14065b39d:	ff c5                	inc    %ebp
14065b39f:	4c 8b 07             	mov    (%rdi),%r8
14065b3a2:	48 8b ca             	mov    %rdx,%rcx
14065b3a5:	49 2b c8             	sub    %r8,%rcx
14065b3a8:	8b c5                	mov    %ebp,%eax
14065b3aa:	48 c1 f9 03          	sar    $0x3,%rcx
14065b3ae:	48 ff c9             	dec    %rcx
14065b3b1:	48 3b c1             	cmp    %rcx,%rax
14065b3b4:	0f 82 f6 fe ff ff    	jb     0x14065b2b0
14065b3ba:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14065b3bf:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14065b3c4:	40 0f b6 c6          	movzbl %sil,%eax
14065b3c8:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14065b3cd:	48 83 c4 20          	add    $0x20,%rsp
14065b3d1:	5f                   	pop    %rdi
14065b3d2:	c3                   	ret
14065b3d3:	cc                   	int3
14065b3d4:	cc                   	int3
14065b3d5:	cc                   	int3
14065b3d6:	cc                   	int3
14065b3d7:	cc                   	int3
14065b3d8:	cc                   	int3
14065b3d9:	cc                   	int3
14065b3da:	cc                   	int3
14065b3db:	cc                   	int3
14065b3dc:	cc                   	int3
14065b3dd:	cc                   	int3
14065b3de:	cc                   	int3
14065b3df:	cc                   	int3
14065b3e0:	40 55                	rex push %rbp
14065b3e2:	41 56                	push   %r14
14065b3e4:	48 83 ec 28          	sub    $0x28,%rsp
14065b3e8:	48 b8 ff ff ff ff ff 	movabs $0xfffffffffffffff,%rax
14065b3ef:	ff ff 0f
14065b3f2:	48 8b e9             	mov    %rcx,%rbp
14065b3f5:	48 0f bd c8          	bsr    %rax,%rcx
14065b3f9:	41 be 01 00 00 00    	mov    $0x1,%r14d
14065b3ff:	41 8b c6             	mov    %r14d,%eax
14065b402:	48 d3 e0             	shl    %cl,%rax
14065b405:	48 3b d0             	cmp    %rax,%rdx
14065b408:	0f 87 64 02 00 00    	ja     0x14065b672
14065b40e:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
14065b413:	48 8d 42 ff          	lea    -0x1(%rdx),%rax
14065b417:	48 8b 55 20          	mov    0x20(%rbp),%rdx
14065b41b:	49 0b c6             	or     %r14,%rax
14065b41e:	48 8b 5d 08          	mov    0x8(%rbp),%rbx
14065b422:	48 0f bd c8          	bsr    %rax,%rcx
14065b426:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
14065b42b:	48 8b c2             	mov    %rdx,%rax
14065b42e:	ff c1                	inc    %ecx
14065b430:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14065b435:	49 d3 e6             	shl    %cl,%r14
14065b438:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
14065b43c:	48 2b c1             	sub    %rcx,%rax
14065b43f:	48 89 5c 24 48       	mov    %rbx,0x48(%rsp)
14065b444:	48 c1 f8 03          	sar    $0x3,%rax
14065b448:	4b 8d 34 36          	lea    (%r14,%r14,1),%rsi
14065b44c:	48 3b c6             	cmp    %rsi,%rax
14065b44f:	0f 83 ca 00 00 00    	jae    0x14065b51f
14065b455:	48 b8 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%rax
14065b45c:	ff ff 1f
14065b45f:	48 3b f0             	cmp    %rax,%rsi
14065b462:	0f 87 04 02 00 00    	ja     0x14065b66c
14065b468:	48 8d 34 f5 00 00 00 	lea    0x0(,%rsi,8),%rsi
14065b46f:	00
14065b470:	48 85 f6             	test   %rsi,%rsi
14065b473:	75 04                	jne    0x14065b479
14065b475:	33 ff                	xor    %edi,%edi
14065b477:	eb 3d                	jmp    0x14065b4b6
14065b479:	48 81 fe 00 10 00 00 	cmp    $0x1000,%rsi
14065b480:	72 29                	jb     0x14065b4ab
14065b482:	48 8d 4e 27          	lea    0x27(%rsi),%rcx
14065b486:	48 3b ce             	cmp    %rsi,%rcx
14065b489:	0f 86 dd 01 00 00    	jbe    0x14065b66c
14065b48f:	e8 74 fc 7b 00       	call   0x140e1b108
14065b494:	48 85 c0             	test   %rax,%rax
14065b497:	0f 84 e2 01 00 00    	je     0x14065b67f
14065b49d:	48 8d 78 27          	lea    0x27(%rax),%rdi
14065b4a1:	48 83 e7 e0          	and    $0xffffffffffffffe0,%rdi
14065b4a5:	48 89 47 f8          	mov    %rax,-0x8(%rdi)
14065b4a9:	eb 0b                	jmp    0x14065b4b6
14065b4ab:	48 8b ce             	mov    %rsi,%rcx
14065b4ae:	e8 55 fc 7b 00       	call   0x140e1b108
14065b4b3:	48 8b f8             	mov    %rax,%rdi
14065b4b6:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
14065b4ba:	48 8b 45 28          	mov    0x28(%rbp),%rax
14065b4be:	48 2b c1             	sub    %rcx,%rax
14065b4c1:	48 c1 f8 03          	sar    $0x3,%rax
14065b4c5:	48 85 c0             	test   %rax,%rax
14065b4c8:	74 32                	je     0x14065b4fc
14065b4ca:	48 8d 14 c5 00 00 00 	lea    0x0(,%rax,8),%rdx
14065b4d1:	00
14065b4d2:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14065b4d9:	72 1c                	jb     0x14065b4f7
14065b4db:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
14065b4df:	48 83 c2 27          	add    $0x27,%rdx
14065b4e3:	49 2b c8             	sub    %r8,%rcx
14065b4e6:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14065b4ea:	48 83 f8 1f          	cmp    $0x1f,%rax
14065b4ee:	0f 87 8b 01 00 00    	ja     0x14065b67f
14065b4f4:	49 8b c8             	mov    %r8,%rcx
14065b4f7:	e8 48 fc 7b 00       	call   0x140e1b144
14065b4fc:	48 8d 04 3e          	lea    (%rsi,%rdi,1),%rax
14065b500:	48 89 7d 18          	mov    %rdi,0x18(%rbp)
14065b504:	48 89 45 20          	mov    %rax,0x20(%rbp)
14065b508:	48 89 45 28          	mov    %rax,0x28(%rbp)
14065b50c:	48 3b f8             	cmp    %rax,%rdi
14065b50f:	74 18                	je     0x14065b529
14065b511:	48 89 1f             	mov    %rbx,(%rdi)
14065b514:	48 83 c7 08          	add    $0x8,%rdi
14065b518:	48 3b f8             	cmp    %rax,%rdi
14065b51b:	75 f4                	jne    0x14065b511
14065b51d:	eb 0a                	jmp    0x14065b529
14065b51f:	4c 8d 44 24 48       	lea    0x48(%rsp),%r8
14065b524:	e8 b7 af bb ff       	call   0x1402164e0
14065b529:	49 8d 46 ff          	lea    -0x1(%r14),%rax
14065b52d:	4c 89 75 38          	mov    %r14,0x38(%rbp)
14065b531:	48 89 45 30          	mov    %rax,0x30(%rbp)
14065b535:	48 8b 45 08          	mov    0x8(%rbp),%rax
14065b539:	48 8b 00             	mov    (%rax),%rax
14065b53c:	48 8b c8             	mov    %rax,%rcx
14065b53f:	48 3b c3             	cmp    %rbx,%rax
14065b542:	0f 84 e7 00 00 00    	je     0x14065b62f
14065b548:	48 be 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rsi
14065b54f:	9c f2 cb
14065b552:	48 bf b3 01 00 00 00 	movabs $0x100000001b3,%rdi
14065b559:	01 00 00
14065b55c:	0f 1f 40 00          	nopl   0x0(%rax)
14065b560:	0f b6 50 11          	movzbl 0x11(%rax),%edx
14065b564:	44 0f b6 58 10       	movzbl 0x10(%rax),%r11d
14065b569:	48 8b 09             	mov    (%rcx),%rcx
14065b56c:	4c 33 de             	xor    %rsi,%r11
14065b56f:	4c 0f af df          	imul   %rdi,%r11
14065b573:	4c 33 da             	xor    %rdx,%r11
14065b576:	0f b6 50 12          	movzbl 0x12(%rax),%edx
14065b57a:	4c 0f af df          	imul   %rdi,%r11
14065b57e:	4c 33 da             	xor    %rdx,%r11
14065b581:	0f b6 50 13          	movzbl 0x13(%rax),%edx
14065b585:	4c 0f af df          	imul   %rdi,%r11
14065b589:	4c 33 da             	xor    %rdx,%r11
14065b58c:	4c 0f af df          	imul   %rdi,%r11
14065b590:	4c 23 5d 30          	and    0x30(%rbp),%r11
14065b594:	49 c1 e3 04          	shl    $0x4,%r11
14065b598:	4c 03 5d 18          	add    0x18(%rbp),%r11
14065b59c:	4d 8b 0b             	mov    (%r11),%r9
14065b59f:	4c 3b cb             	cmp    %rbx,%r9
14065b5a2:	75 09                	jne    0x14065b5ad
14065b5a4:	49 89 03             	mov    %rax,(%r11)
14065b5a7:	49 89 43 08          	mov    %rax,0x8(%r11)
14065b5ab:	eb 76                	jmp    0x14065b623
14065b5ad:	49 8b 53 08          	mov    0x8(%r11),%rdx
14065b5b1:	44 8b 40 10          	mov    0x10(%rax),%r8d
14065b5b5:	44 3b 42 10          	cmp    0x10(%rdx),%r8d
14065b5b9:	75 2f                	jne    0x14065b5ea
14065b5bb:	4c 8b 12             	mov    (%rdx),%r10
14065b5be:	4c 3b d0             	cmp    %rax,%r10
14065b5c1:	74 21                	je     0x14065b5e4
14065b5c3:	4c 8b 48 08          	mov    0x8(%rax),%r9
14065b5c7:	49 89 09             	mov    %rcx,(%r9)
14065b5ca:	4c 8b 41 08          	mov    0x8(%rcx),%r8
14065b5ce:	4d 89 10             	mov    %r10,(%r8)
14065b5d1:	49 8b 52 08          	mov    0x8(%r10),%rdx
14065b5d5:	48 89 02             	mov    %rax,(%rdx)
14065b5d8:	4d 89 42 08          	mov    %r8,0x8(%r10)
14065b5dc:	4c 89 49 08          	mov    %r9,0x8(%rcx)
14065b5e0:	48 89 50 08          	mov    %rdx,0x8(%rax)
14065b5e4:	49 89 43 08          	mov    %rax,0x8(%r11)
14065b5e8:	eb 39                	jmp    0x14065b623
14065b5ea:	4c 3b ca             	cmp    %rdx,%r9
14065b5ed:	74 10                	je     0x14065b5ff
14065b5ef:	90                   	nop
14065b5f0:	48 8b 52 08          	mov    0x8(%rdx),%rdx
14065b5f4:	44 3b 42 10          	cmp    0x10(%rdx),%r8d
14065b5f8:	74 4c                	je     0x14065b646
14065b5fa:	4c 3b ca             	cmp    %rdx,%r9
14065b5fd:	75 f1                	jne    0x14065b5f0
14065b5ff:	4c 8b 50 08          	mov    0x8(%rax),%r10
14065b603:	49 89 0a             	mov    %rcx,(%r10)
14065b606:	4c 8b 49 08          	mov    0x8(%rcx),%r9
14065b60a:	49 89 11             	mov    %rdx,(%r9)
14065b60d:	4c 8b 42 08          	mov    0x8(%rdx),%r8
14065b611:	49 89 00             	mov    %rax,(%r8)
14065b614:	4c 89 4a 08          	mov    %r9,0x8(%rdx)
14065b618:	4c 89 51 08          	mov    %r10,0x8(%rcx)
14065b61c:	4c 89 40 08          	mov    %r8,0x8(%rax)
14065b620:	49 89 03             	mov    %rax,(%r11)
14065b623:	48 8b c1             	mov    %rcx,%rax
14065b626:	48 3b cb             	cmp    %rbx,%rcx
14065b629:	0f 85 31 ff ff ff    	jne    0x14065b560
14065b62f:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14065b634:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14065b639:	48 8b 7c 24 20       	mov    0x20(%rsp),%rdi
14065b63e:	48 83 c4 28          	add    $0x28,%rsp
14065b642:	41 5e                	pop    %r14
14065b644:	5d                   	pop    %rbp
14065b645:	c3                   	ret
14065b646:	4c 8b 12             	mov    (%rdx),%r10
14065b649:	4c 8b 48 08          	mov    0x8(%rax),%r9
14065b64d:	49 89 09             	mov    %rcx,(%r9)
14065b650:	4c 8b 41 08          	mov    0x8(%rcx),%r8
14065b654:	4d 89 10             	mov    %r10,(%r8)
14065b657:	49 8b 52 08          	mov    0x8(%r10),%rdx
14065b65b:	48 89 02             	mov    %rax,(%rdx)
14065b65e:	4d 89 42 08          	mov    %r8,0x8(%r10)
14065b662:	4c 89 49 08          	mov    %r9,0x8(%rcx)
14065b666:	48 89 50 08          	mov    %rdx,0x8(%rax)
14065b66a:	eb b7                	jmp    0x14065b623
14065b66c:	e8 1f 1b b4 ff       	call   0x14019d190
14065b671:	cc                   	int3
14065b672:	48 8d 0d 77 2e 95 00 	lea    0x952e77(%rip),%rcx        # 0x140fae4f0
14065b679:	e8 36 fd 79 00       	call   0x140dfb3b4
14065b67e:	cc                   	int3
14065b67f:	e8 20 eb 7c 00       	call   0x140e2a1a4
14065b684:	cc                   	int3
14065b685:	cc                   	int3
14065b686:	cc                   	int3
14065b687:	cc                   	int3
14065b688:	cc                   	int3
14065b689:	cc                   	int3
14065b68a:	cc                   	int3
14065b68b:	cc                   	int3
14065b68c:	cc                   	int3
14065b68d:	cc                   	int3
14065b68e:	cc                   	int3
14065b68f:	cc                   	int3
14065b690:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14065b695:	57                   	push   %rdi
14065b696:	48 83 ec 20          	sub    $0x20,%rsp
14065b69a:	48 b8 ff ff ff ff ff 	movabs $0xfffffffffffffff,%rax
14065b6a1:	ff ff 0f
14065b6a4:	48 8b f1             	mov    %rcx,%rsi
14065b6a7:	48 0f bd c8          	bsr    %rax,%rcx
14065b6ab:	bf 01 00 00 00       	mov    $0x1,%edi
14065b6b0:	8b c7                	mov    %edi,%eax
14065b6b2:	48 d3 e0             	shl    %cl,%rax
14065b6b5:	48 3b d0             	cmp    %rax,%rdx
14065b6b8:	0f 87 b1 01 00 00    	ja     0x14065b86f
14065b6be:	48 8d 42 ff          	lea    -0x1(%rdx),%rax
14065b6c2:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
14065b6c7:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
14065b6cb:	48 0b c7             	or     %rdi,%rax
14065b6ce:	48 0f bd c8          	bsr    %rax,%rcx
14065b6d2:	4c 8b c3             	mov    %rbx,%r8
14065b6d5:	4c 89 74 24 40       	mov    %r14,0x40(%rsp)
14065b6da:	ff c1                	inc    %ecx
14065b6dc:	48 d3 e7             	shl    %cl,%rdi
14065b6df:	48 8d 4e 18          	lea    0x18(%rsi),%rcx
14065b6e3:	48 8d 14 3f          	lea    (%rdi,%rdi,1),%rdx
14065b6e7:	e8 94 13 d3 ff       	call   0x14038ca80
14065b6ec:	48 8d 47 ff          	lea    -0x1(%rdi),%rax
14065b6f0:	48 89 7e 38          	mov    %rdi,0x38(%rsi)
14065b6f4:	48 89 46 30          	mov    %rax,0x30(%rsi)
14065b6f8:	48 8b 46 08          	mov    0x8(%rsi),%rax
14065b6fc:	48 8b 00             	mov    (%rax),%rax
14065b6ff:	48 8b c8             	mov    %rax,%rcx
14065b702:	48 3b c3             	cmp    %rbx,%rax
14065b705:	0f 84 29 01 00 00    	je     0x14065b834
14065b70b:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
14065b710:	48 bf b3 01 00 00 00 	movabs $0x100000001b3,%rdi
14065b717:	01 00 00
14065b71a:	48 bd 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rbp
14065b721:	9c f2 cb
14065b724:	0f 1f 40 00          	nopl   0x0(%rax)
14065b728:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14065b72f:	00
14065b730:	0f b6 50 11          	movzbl 0x11(%rax),%edx