1407882d7:	45 8b c3             	mov    %r11d,%r8d
1407882da:	4d 2b ca             	sub    %r10,%r9
1407882dd:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
1407882e4:	aa aa 2a
1407882e7:	49 f7 e9             	imul   %r9
1407882ea:	48 c1 fa 03          	sar    $0x3,%rdx
1407882ee:	48 8b c2             	mov    %rdx,%rax
1407882f1:	48 c1 e8 3f          	shr    $0x3f,%rax
1407882f5:	48 03 d0             	add    %rax,%rdx
1407882f8:	4c 3b c2             	cmp    %rdx,%r8
1407882fb:	0f 83 82 00 00 00    	jae    0x140788383
140788301:	4b 8d 04 40          	lea    (%r8,%r8,2),%rax
140788305:	48 c1 e0 04          	shl    $0x4,%rax
140788309:	49 03 c2             	add    %r10,%rax
14078830c:	74 75                	je     0x140788383
14078830e:	80 78 28 02          	cmpb   $0x2,0x28(%rax)
140788312:	75 6f                	jne    0x140788383
140788314:	0f b6 00             	movzbl (%rax),%eax
140788317:	41 88 06             	mov    %al,(%r14)
14078831a:	49 ff c3             	inc    %r11
14078831d:	4c 8b 4e 08          	mov    0x8(%rsi),%r9
140788321:	4c 8b 16             	mov    (%rsi),%r10
140788324:	49 8b c9             	mov    %r9,%rcx
140788327:	49 2b ca             	sub    %r10,%rcx
14078832a:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
140788331:	aa aa 2a
140788334:	48 f7 e9             	imul   %rcx
140788337:	48 c1 fa 03          	sar    $0x3,%rdx
14078833b:	48 8b c2             	mov    %rdx,%rax
14078833e:	48 c1 e8 3f          	shr    $0x3f,%rax
140788342:	48 03 d0             	add    %rax,%rdx
140788345:	4c 3b da             	cmp    %rdx,%r11
140788348:	72 86                	jb     0x1407882d0
14078834a:	b9 78 00 00 00       	mov    $0x78,%ecx
14078834f:	e8 b4 2d 69 00       	call   0x140e1b108
140788354:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
14078835b:	00
14078835c:	48 85 c0             	test   %rax,%rax
14078835f:	74 75                	je     0x1407883d6
140788361:	49 8b dd             	mov    %r13,%rbx
140788364:	48 89 5c 24 78       	mov    %rbx,0x78(%rsp)
140788369:	48 89 bc 24 80 00 00 	mov    %rdi,0x80(%rsp)
140788370:	00
140788371:	48 8d 94 24 80 00 00 	lea    0x80(%rsp),%rdx
140788378:	00
140788379:	48 8b c8             	mov    %rax,%rcx
14078837c:	e8 8f a7 30 00       	call   0x140a92b10
140788381:	eb 56                	jmp    0x1407883d9
140788383:	48 85 c9             	test   %rcx,%rcx
140788386:	74 3c                	je     0x1407883c4
140788388:	48 8b 57 10          	mov    0x10(%rdi),%rdx
14078838c:	48 2b d1             	sub    %rcx,%rdx
14078838f:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140788396:	72 1c                	jb     0x1407883b4
140788398:	48 83 c2 27          	add    $0x27,%rdx
14078839c:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1407883a0:	49 2b c8             	sub    %r8,%rcx
1407883a3:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1407883a7:	48 83 f8 1f          	cmp    $0x1f,%rax
1407883ab:	0f 87 d5 00 00 00    	ja     0x140788486
1407883b1:	49 8b c8             	mov    %r8,%rcx
1407883b4:	e8 8b 2d 69 00       	call   0x140e1b144
1407883b9:	4c 89 2f             	mov    %r13,(%rdi)
1407883bc:	4c 89 6f 08          	mov    %r13,0x8(%rdi)
1407883c0:	4c 89 6f 10          	mov    %r13,0x10(%rdi)
1407883c4:	ba 18 00 00 00       	mov    $0x18,%edx
1407883c9:	48 8b cf             	mov    %rdi,%rcx
1407883cc:	e8 73 2d 69 00       	call   0x140e1b144
1407883d1:	e9 9e 00 00 00       	jmp    0x140788474
1407883d6:	49 8b c5             	mov    %r13,%rax
1407883d9:	49 8b 7f 20          	mov    0x20(%r15),%rdi
1407883dd:	49 89 47 20          	mov    %rax,0x20(%r15)
1407883e1:	48 85 ff             	test   %rdi,%rdi
1407883e4:	74 16                	je     0x1407883fc
1407883e6:	48 8b cf             	mov    %rdi,%rcx
1407883e9:	e8 92 a7 30 00       	call   0x140a92b80
1407883ee:	ba 78 00 00 00       	mov    $0x78,%edx
1407883f3:	48 8b cf             	mov    %rdi,%rcx
1407883f6:	e8 49 2d 69 00       	call   0x140e1b144
1407883fb:	90                   	nop
1407883fc:	48 85 db             	test   %rbx,%rbx
1407883ff:	74 4d                	je     0x14078844e
140788401:	48 8b 0b             	mov    (%rbx),%rcx
140788404:	48 85 c9             	test   %rcx,%rcx
140788407:	74 38                	je     0x140788441
140788409:	48 8b 53 10          	mov    0x10(%rbx),%rdx
14078840d:	48 2b d1             	sub    %rcx,%rdx
140788410:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140788417:	72 18                	jb     0x140788431
140788419:	48 83 c2 27          	add    $0x27,%rdx
14078841d:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
140788421:	49 2b c8             	sub    %r8,%rcx
140788424:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140788428:	48 83 f8 1f          	cmp    $0x1f,%rax
14078842c:	77 58                	ja     0x140788486
14078842e:	49 8b c8             	mov    %r8,%rcx
140788431:	e8 0e 2d 69 00       	call   0x140e1b144
140788436:	4c 89 2b             	mov    %r13,(%rbx)
140788439:	4c 89 6b 08          	mov    %r13,0x8(%rbx)
14078843d:	4c 89 6b 10          	mov    %r13,0x10(%rbx)
140788441:	ba 18 00 00 00       	mov    $0x18,%edx
140788446:	48 8b cb             	mov    %rbx,%rcx
140788449:	e8 f6 2c 69 00       	call   0x140e1b144
14078844e:	b0 01                	mov    $0x1,%al
140788450:	48 83 c4 30          	add    $0x30,%rsp
140788454:	41 5f                	pop    %r15
140788456:	41 5e                	pop    %r14
140788458:	41 5d                	pop    %r13
14078845a:	41 5c                	pop    %r12
14078845c:	5f                   	pop    %rdi
14078845d:	5e                   	pop    %rsi
14078845e:	5b                   	pop    %rbx
14078845f:	c3                   	ret
140788460:	48 8b 4c 24 78       	mov    0x78(%rsp),%rcx
140788465:	48 85 c9             	test   %rcx,%rcx
140788468:	74 0a                	je     0x140788474
14078846a:	ba 01 00 00 00       	mov    $0x1,%edx
14078846f:	e8 2c 13 a1 ff       	call   0x1401997a0
140788474:	32 c0                	xor    %al,%al
140788476:	48 83 c4 30          	add    $0x30,%rsp
14078847a:	41 5f                	pop    %r15
14078847c:	41 5e                	pop    %r14
14078847e:	41 5d                	pop    %r13
140788480:	41 5c                	pop    %r12
140788482:	5f                   	pop    %rdi
140788483:	5e                   	pop    %rsi
140788484:	5b                   	pop    %rbx
140788485:	c3                   	ret
140788486:	e8 19 1d 6a 00       	call   0x140e2a1a4
14078848b:	cc                   	int3
14078848c:	cc                   	int3
14078848d:	cc                   	int3
14078848e:	cc                   	int3
14078848f:	cc                   	int3
140788490:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140788495:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14078849a:	57                   	push   %rdi
14078849b:	48 83 ec 20          	sub    $0x20,%rsp
14078849f:	48 8b f1             	mov    %rcx,%rsi
1407884a2:	48 85 d2             	test   %rdx,%rdx
1407884a5:	74 79                	je     0x140788520
1407884a7:	80 7a 28 0e          	cmpb   $0xe,0x28(%rdx)
1407884ab:	75 73                	jne    0x140788520
1407884ad:	48 8b 1a             	mov    (%rdx),%rbx
1407884b0:	48 85 db             	test   %rbx,%rbx
1407884b3:	74 6b                	je     0x140788520
1407884b5:	80 7b 28 01          	cmpb   $0x1,0x28(%rbx)
1407884b9:	75 65                	jne    0x140788520
1407884bb:	80 3b 00             	cmpb   $0x0,(%rbx)
1407884be:	74 4e                	je     0x14078850e
1407884c0:	48 8b 42 08          	mov    0x8(%rdx),%rax
1407884c4:	48 2b c3             	sub    %rbx,%rax
1407884c7:	48 83 e8 60          	sub    $0x60,%rax
1407884cb:	48 83 f8 30          	cmp    $0x30,%rax
1407884cf:	73 4f                	jae    0x140788520
1407884d1:	48 83 c3 30          	add    $0x30,%rbx
1407884d5:	74 49                	je     0x140788520
1407884d7:	80 7b 28 05          	cmpb   $0x5,0x28(%rbx)
1407884db:	75 43                	jne    0x140788520
1407884dd:	48 83 7b 10 60       	cmpq   $0x60,0x10(%rbx)
1407884e2:	48 8d 7b 10          	lea    0x10(%rbx),%rdi
1407884e6:	75 38                	jne    0x140788520
1407884e8:	e8 a3 04 00 00       	call   0x140788990
1407884ed:	48 8b 4e 28          	mov    0x28(%rsi),%rcx
1407884f1:	e8 2a 78 cc ff       	call   0x14044fd20
1407884f6:	48 83 7b 18 0f       	cmpq   $0xf,0x18(%rbx)
1407884fb:	76 03                	jbe    0x140788500
1407884fd:	48 8b 1b             	mov    (%rbx),%rbx
140788500:	4c 8b 07             	mov    (%rdi),%r8
140788503:	48 8b d3             	mov    %rbx,%rdx
140788506:	48 8b c8             	mov    %rax,%rcx
140788509:	e8 02 6b 75 00       	call   0x140edf010
14078850e:	b0 01                	mov    $0x1,%al
140788510:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140788515:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14078851a:	48 83 c4 20          	add    $0x20,%rsp
14078851e:	5f                   	pop    %rdi
14078851f:	c3                   	ret
140788520:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140788525:	32 c0                	xor    %al,%al
140788527:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14078852c:	48 83 c4 20          	add    $0x20,%rsp
140788530:	5f                   	pop    %rdi
140788531:	c3                   	ret
140788532:	cc                   	int3
140788533:	cc                   	int3
140788534:	cc                   	int3
140788535:	cc                   	int3
140788536:	cc                   	int3
140788537:	cc                   	int3
140788538:	cc                   	int3
140788539:	cc                   	int3
14078853a:	cc                   	int3
14078853b:	cc                   	int3
14078853c:	cc                   	int3
14078853d:	cc                   	int3
14078853e:	cc                   	int3
14078853f:	cc                   	int3
140788540:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140788545:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14078854a:	57                   	push   %rdi
14078854b:	48 83 ec 20          	sub    $0x20,%rsp
14078854f:	48 8b f1             	mov    %rcx,%rsi
140788552:	48 85 d2             	test   %rdx,%rdx
140788555:	74 79                	je     0x1407885d0
140788557:	80 7a 28 0e          	cmpb   $0xe,0x28(%rdx)
14078855b:	75 73                	jne    0x1407885d0
14078855d:	48 8b 1a             	mov    (%rdx),%rbx
140788560:	48 85 db             	test   %rbx,%rbx
140788563:	74 6b                	je     0x1407885d0
140788565:	80 7b 28 01          	cmpb   $0x1,0x28(%rbx)
140788569:	75 65                	jne    0x1407885d0
14078856b:	80 3b 00             	cmpb   $0x0,(%rbx)
14078856e:	74 4e                	je     0x1407885be
140788570:	48 8b 42 08          	mov    0x8(%rdx),%rax
140788574:	48 2b c3             	sub    %rbx,%rax
140788577:	48 83 e8 60          	sub    $0x60,%rax
14078857b:	48 83 f8 30          	cmp    $0x30,%rax
14078857f:	73 4f                	jae    0x1407885d0
140788581:	48 83 c3 30          	add    $0x30,%rbx
140788585:	74 49                	je     0x1407885d0
140788587:	80 7b 28 05          	cmpb   $0x5,0x28(%rbx)
14078858b:	75 43                	jne    0x1407885d0
14078858d:	48 83 7b 10 70       	cmpq   $0x70,0x10(%rbx)
140788592:	48 8d 7b 10          	lea    0x10(%rbx),%rdi
140788596:	75 38                	jne    0x1407885d0
140788598:	e8 f3 03 00 00       	call   0x140788990
14078859d:	48 8b 4e 28          	mov    0x28(%rsi),%rcx
1407885a1:	e8 7a 77 cc ff       	call   0x14044fd20
1407885a6:	48 83 7b 18 0f       	cmpq   $0xf,0x18(%rbx)
1407885ab:	76 03                	jbe    0x1407885b0
1407885ad:	48 8b 1b             	mov    (%rbx),%rbx
1407885b0:	4c 8b 07             	mov    (%rdi),%r8
1407885b3:	48 8b d3             	mov    %rbx,%rdx
1407885b6:	48 8b c8             	mov    %rax,%rcx
1407885b9:	e8 52 6a 75 00       	call   0x140edf010
1407885be:	b0 01                	mov    $0x1,%al
1407885c0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1407885c5:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1407885ca:	48 83 c4 20          	add    $0x20,%rsp
1407885ce:	5f                   	pop    %rdi
1407885cf:	c3                   	ret
1407885d0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1407885d5:	32 c0                	xor    %al,%al
1407885d7:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1407885dc:	48 83 c4 20          	add    $0x20,%rsp
1407885e0:	5f                   	pop    %rdi
1407885e1:	c3                   	ret
1407885e2:	cc                   	int3
1407885e3:	cc                   	int3
1407885e4:	cc                   	int3
1407885e5:	cc                   	int3
1407885e6:	cc                   	int3
1407885e7:	cc                   	int3
1407885e8:	cc                   	int3
1407885e9:	cc                   	int3
1407885ea:	cc                   	int3
1407885eb:	cc                   	int3
1407885ec:	cc                   	int3
1407885ed:	cc                   	int3
1407885ee:	cc                   	int3
1407885ef:	cc                   	int3
1407885f0:	48 83 ec 28          	sub    $0x28,%rsp
1407885f4:	48 83 c1 20          	add    $0x20,%rcx
1407885f8:	e8 e3 44 ff ff       	call   0x14077cae0
1407885fd:	b0 01                	mov    $0x1,%al
1407885ff:	48 83 c4 28          	add    $0x28,%rsp
140788603:	c3                   	ret
140788604:	cc                   	int3
140788605:	cc                   	int3
140788606:	cc                   	int3
140788607:	cc                   	int3
140788608:	cc                   	int3
140788609:	cc                   	int3
14078860a:	cc                   	int3
14078860b:	cc                   	int3
14078860c:	cc                   	int3
14078860d:	cc                   	int3
14078860e:	cc                   	int3
14078860f:	cc                   	int3
140788610:	48 83 ec 38          	sub    $0x38,%rsp
140788614:	80 79 20 00          	cmpb   $0x0,0x20(%rcx)
140788618:	74 15                	je     0x14078862f
14078861a:	48 8b 01             	mov    (%rcx),%rax
14078861d:	48 8b 80 98 00 00 00 	mov    0x98(%rax),%rax
140788624:	48 83 c4 38          	add    $0x38,%rsp
140788628:	48 ff 25 f1 b3 7f 00 	rex.W jmp *0x7fb3f1(%rip)        # 0x140f83a20
14078862f:	45 33 c9             	xor    %r9d,%r9d
140788632:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
140788639:	00 00
14078863b:	45 33 c0             	xor    %r8d,%r8d
14078863e:	48 8d 15 3b 20 8a 00 	lea    0x8a203b(%rip),%rdx        # 0x14102a680
140788645:	e8 76 1c 00 00       	call   0x14078a2c0
14078864a:	32 c0                	xor    %al,%al
14078864c:	48 83 c4 38          	add    $0x38,%rsp
140788650:	c3                   	ret
140788651:	cc                   	int3
140788652:	cc                   	int3
140788653:	cc                   	int3
140788654:	cc                   	int3
140788655:	cc                   	int3
140788656:	cc                   	int3
140788657:	cc                   	int3
140788658:	cc                   	int3
140788659:	cc                   	int3
14078865a:	cc                   	int3
14078865b:	cc                   	int3
14078865c:	cc                   	int3
14078865d:	cc                   	int3
14078865e:	cc                   	int3
14078865f:	cc                   	int3
140788660:	48 83 ec 38          	sub    $0x38,%rsp
140788664:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
140788669:	48 83 c1 20          	add    $0x20,%rcx
14078866d:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140788672:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
140788677:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14078867c:	e8 1f 46 ff ff       	call   0x14077cca0
140788681:	b0 01                	mov    $0x1,%al
140788683:	48 83 c4 38          	add    $0x38,%rsp
140788687:	c3                   	ret
140788688:	cc                   	int3
140788689:	cc                   	int3
14078868a:	cc                   	int3
14078868b:	cc                   	int3
14078868c:	cc                   	int3
14078868d:	cc                   	int3
14078868e:	cc                   	int3
14078868f:	cc                   	int3
140788690:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140788695:	57                   	push   %rdi
140788696:	48 83 ec 30          	sub    $0x30,%rsp
14078869a:	48 8b da             	mov    %rdx,%rbx
14078869d:	48 8b f9             	mov    %rcx,%rdi
1407886a0:	80 79 20 00          	cmpb   $0x0,0x20(%rcx)
1407886a4:	75 35                	jne    0x1407886db
1407886a6:	48 8b 05 cb a7 ca 00 	mov    0xcaa7cb(%rip),%rax        # 0x141432e78
1407886ad:	48 8b 48 50          	mov    0x50(%rax),%rcx
1407886b1:	48 89 0a             	mov    %rcx,(%rdx)
1407886b4:	48 85 c9             	test   %rcx,%rcx
1407886b7:	74 14                	je     0x1407886cd
1407886b9:	8b 41 10             	mov    0x10(%rcx),%eax
1407886bc:	ff c0                	inc    %eax
1407886be:	89 41 10             	mov    %eax,0x10(%rcx)
1407886c1:	83 f8 01             	cmp    $0x1,%eax
1407886c4:	7e 4f                	jle    0x140788715
1407886c6:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1407886cb:	74 3d                	je     0x14078870a
1407886cd:	48 8b c3             	mov    %rbx,%rax
1407886d0:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx