140278394:	75 03                	jne    0x140278399
140278396:	89 43 08             	mov    %eax,0x8(%rbx)
140278399:	bf 01 00 00 00       	mov    $0x1,%edi
14027839e:	48 8b cb             	mov    %rbx,%rcx
1402783a1:	e8 5a 3a fb ff       	call   0x14022be00
1402783a6:	85 c0                	test   %eax,%eax
1402783a8:	75 0a                	jne    0x1402783b4
1402783aa:	39 6b 10             	cmp    %ebp,0x10(%rbx)
1402783ad:	40 0f 94 c5          	sete   %bpl
1402783b1:	89 6b 10             	mov    %ebp,0x10(%rbx)
1402783b4:	8b c7                	mov    %edi,%eax
1402783b6:	eb 62                	jmp    0x14027841a
1402783b8:	8b f5                	mov    %ebp,%esi
1402783ba:	4c 8b cd             	mov    %rbp,%r9
1402783bd:	0f 1f 00             	nopl   (%rax)
1402783c0:	4c 8b c7             	mov    %rdi,%r8
1402783c3:	3b 73 08             	cmp    0x8(%rbx),%esi
1402783c6:	7d 25                	jge    0x1402783ed
1402783c8:	48 8b 0b             	mov    (%rbx),%rcx
1402783cb:	48 8b c5             	mov    %rbp,%rax
1402783ce:	4a 8b 14 09          	mov    (%rcx,%r9,1),%rdx
1402783d2:	48 03 d7             	add    %rdi,%rdx
1402783d5:	48 3b fa             	cmp    %rdx,%rdi
1402783d8:	4a 89 14 09          	mov    %rdx,(%rcx,%r9,1)
1402783dc:	0f 97 c0             	seta   %al
1402783df:	ff c6                	inc    %esi
1402783e1:	49 83 c1 08          	add    $0x8,%r9
1402783e5:	48 8b f8             	mov    %rax,%rdi
1402783e8:	4c 3b c2             	cmp    %rdx,%r8
1402783eb:	77 d3                	ja     0x1402783c0
1402783ed:	48 85 ff             	test   %rdi,%rdi
1402783f0:	74 23                	je     0x140278415
1402783f2:	8b 53 08             	mov    0x8(%rbx),%edx
1402783f5:	3b f2                	cmp    %edx,%esi
1402783f7:	75 1c                	jne    0x140278415
1402783f9:	ff c2                	inc    %edx
1402783fb:	48 8b cb             	mov    %rbx,%rcx
1402783fe:	e8 fd 43 fb ff       	call   0x14022c800
140278403:	48 85 c0             	test   %rax,%rax
140278406:	74 12                	je     0x14027841a
140278408:	48 8b 03             	mov    (%rbx),%rax
14027840b:	ff 43 08             	incl   0x8(%rbx)
14027840e:	48 63 ce             	movslq %esi,%rcx
140278411:	48 89 3c c8          	mov    %rdi,(%rax,%rcx,8)
140278415:	b8 01 00 00 00       	mov    $0x1,%eax
14027841a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14027841f:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140278424:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140278429:	48 83 c4 20          	add    $0x20,%rsp
14027842d:	5f                   	pop    %rdi
14027842e:	c3                   	ret
14027842f:	cc                   	int3
140278430:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140278435:	56                   	push   %rsi
140278436:	57                   	push   %rdi
140278437:	41 57                	push   %r15
140278439:	b8 20 00 00 00       	mov    $0x20,%eax
14027843e:	e8 9d 21 08 00       	call   0x1402fa5e0
140278443:	48 2b e0             	sub    %rax,%rsp
140278446:	33 f6                	xor    %esi,%esi
140278448:	48 8b ea             	mov    %rdx,%rbp
14027844b:	48 8b f9             	mov    %rcx,%rdi
14027844e:	48 85 d2             	test   %rdx,%rdx
140278451:	0f 84 d6 00 00 00    	je     0x14027852d
140278457:	39 71 08             	cmp    %esi,0x8(%rcx)
14027845a:	75 10                	jne    0x14027846c
14027845c:	33 c0                	xor    %eax,%eax
14027845e:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140278463:	48 83 c4 20          	add    $0x20,%rsp
140278467:	41 5f                	pop    %r15
140278469:	5f                   	pop    %rdi
14027846a:	5e                   	pop    %rsi
14027846b:	c3                   	ret
14027846c:	48 8b cd             	mov    %rbp,%rcx
14027846f:	e8 6c 3b fb ff       	call   0x14022bfe0
140278474:	41 b8 40 00 00 00    	mov    $0x40,%r8d
14027847a:	48 8b d7             	mov    %rdi,%rdx
14027847d:	44 2b c0             	sub    %eax,%r8d
140278480:	4d 63 f8             	movslq %r8d,%r15
140278483:	49 8b cf             	mov    %r15,%rcx
140278486:	48 d3 e5             	shl    %cl,%rbp
140278489:	48 8b cf             	mov    %rdi,%rcx
14027848c:	e8 7f dd 00 00       	call   0x140286210
140278491:	85 c0                	test   %eax,%eax
140278493:	0f 84 94 00 00 00    	je     0x14027852d
140278499:	8b 47 08             	mov    0x8(%rdi),%eax
14027849c:	83 e8 01             	sub    $0x1,%eax
14027849f:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
1402784a4:	4c 63 f0             	movslq %eax,%r14
1402784a7:	78 3b                	js     0x1402784e4
1402784a9:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
1402784ae:	66 90                	xchg   %ax,%ax
1402784b0:	48 8b 07             	mov    (%rdi),%rax
1402784b3:	4c 8b c5             	mov    %rbp,%r8
1402784b6:	48 8b ce             	mov    %rsi,%rcx
1402784b9:	4a 8b 1c f0          	mov    (%rax,%r14,8),%rbx
1402784bd:	48 8b d3             	mov    %rbx,%rdx
1402784c0:	e8 bb 1f 04 00       	call   0x1402ba480
1402784c5:	48 8b c8             	mov    %rax,%rcx
1402784c8:	48 8b f3             	mov    %rbx,%rsi
1402784cb:	48 0f af cd          	imul   %rbp,%rcx
1402784cf:	48 2b f1             	sub    %rcx,%rsi
1402784d2:	48 8b 0f             	mov    (%rdi),%rcx
1402784d5:	4a 89 04 f1          	mov    %rax,(%rcx,%r14,8)
1402784d9:	49 83 ee 01          	sub    $0x1,%r14
1402784dd:	79 d1                	jns    0x1402784b0
1402784df:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1402784e4:	48 63 47 08          	movslq 0x8(%rdi),%rax
1402784e8:	4c 8b 74 24 48       	mov    0x48(%rsp),%r14
1402784ed:	44 8b c0             	mov    %eax,%r8d
1402784f0:	85 c0                	test   %eax,%eax
1402784f2:	7e 19                	jle    0x14027850d
1402784f4:	48 8b d0             	mov    %rax,%rdx
1402784f7:	44 8d 48 ff          	lea    -0x1(%rax),%r9d
1402784fb:	48 8b 07             	mov    (%rdi),%rax
1402784fe:	48 83 7c d0 f8 00    	cmpq   $0x0,-0x8(%rax,%rdx,8)
140278504:	75 07                	jne    0x14027850d
140278506:	44 89 4f 08          	mov    %r9d,0x8(%rdi)
14027850a:	45 8b c1             	mov    %r9d,%r8d
14027850d:	49 8b cf             	mov    %r15,%rcx
140278510:	48 d3 ee             	shr    %cl,%rsi
140278513:	45 85 c0             	test   %r8d,%r8d
140278516:	75 04                	jne    0x14027851c
140278518:	44 89 47 10          	mov    %r8d,0x10(%rdi)
14027851c:	48 8b c6             	mov    %rsi,%rax
14027851f:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140278524:	48 83 c4 20          	add    $0x20,%rsp
140278528:	41 5f                	pop    %r15
14027852a:	5f                   	pop    %rdi
14027852b:	5e                   	pop    %rsi
14027852c:	c3                   	ret
14027852d:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140278532:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
140278539:	48 83 c4 20          	add    $0x20,%rsp
14027853d:	41 5f                	pop    %r15
14027853f:	5f                   	pop    %rdi
140278540:	5e                   	pop    %rsi
140278541:	c3                   	ret
140278542:	cc                   	int3
140278543:	cc                   	int3
140278544:	cc                   	int3
140278545:	cc                   	int3
140278546:	cc                   	int3
140278547:	cc                   	int3
140278548:	cc                   	int3
140278549:	cc                   	int3
14027854a:	cc                   	int3
14027854b:	cc                   	int3
14027854c:	cc                   	int3
14027854d:	cc                   	int3
14027854e:	cc                   	int3
14027854f:	cc                   	int3
140278550:	40 55                	rex push %rbp
140278552:	56                   	push   %rsi
140278553:	57                   	push   %rdi
140278554:	b8 20 00 00 00       	mov    $0x20,%eax
140278559:	e8 82 20 08 00       	call   0x1402fa5e0
14027855e:	48 2b e0             	sub    %rax,%rsp
140278561:	33 ff                	xor    %edi,%edi
140278563:	48 8b ea             	mov    %rdx,%rbp
140278566:	48 85 d2             	test   %rdx,%rdx
140278569:	0f 84 60 01 00 00    	je     0x1402786cf
14027856f:	48 b8 00 00 00 00 01 	movabs $0x100000000,%rax
140278576:	00 00 00
140278579:	48 3b d0             	cmp    %rax,%rdx
14027857c:	0f 86 f8 00 00 00    	jbe    0x14027867a
140278582:	e8 09 36 fb ff       	call   0x14022bb90
140278587:	48 8b f0             	mov    %rax,%rsi
14027858a:	48 85 c0             	test   %rax,%rax
14027858d:	0f 84 3c 01 00 00    	je     0x1402786cf
140278593:	4c 89 74 24 50       	mov    %r14,0x50(%rsp)
140278598:	44 8b f7             	mov    %edi,%r14d
14027859b:	39 78 08             	cmp    %edi,0x8(%rax)
14027859e:	0f 84 be 00 00 00    	je     0x140278662
1402785a4:	48 8b cd             	mov    %rbp,%rcx
1402785a7:	4c 89 64 24 48       	mov    %r12,0x48(%rsp)
1402785ac:	e8 2f 3a fb ff       	call   0x14022bfe0
1402785b1:	41 b8 40 00 00 00    	mov    $0x40,%r8d
1402785b7:	48 8b d6             	mov    %rsi,%rdx
1402785ba:	44 2b c0             	sub    %eax,%r8d
1402785bd:	4d 63 e0             	movslq %r8d,%r12
1402785c0:	49 8b cc             	mov    %r12,%rcx
1402785c3:	48 d3 e5             	shl    %cl,%rbp
1402785c6:	48 8b ce             	mov    %rsi,%rcx
1402785c9:	e8 42 dc 00 00       	call   0x140286210
1402785ce:	85 c0                	test   %eax,%eax
1402785d0:	75 09                	jne    0x1402785db
1402785d2:	49 8d 7e ff          	lea    -0x1(%r14),%rdi
1402785d6:	e9 82 00 00 00       	jmp    0x14027865d
1402785db:	8b 46 08             	mov    0x8(%rsi),%eax
1402785de:	83 e8 01             	sub    $0x1,%eax
1402785e1:	4c 89 7c 24 58       	mov    %r15,0x58(%rsp)
1402785e6:	4c 63 f8             	movslq %eax,%r15
1402785e9:	78 39                	js     0x140278624
1402785eb:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
1402785f0:	48 8b 06             	mov    (%rsi),%rax
1402785f3:	4c 8b c5             	mov    %rbp,%r8
1402785f6:	49 8b ce             	mov    %r14,%rcx
1402785f9:	4a 8b 1c f8          	mov    (%rax,%r15,8),%rbx
1402785fd:	48 8b d3             	mov    %rbx,%rdx
140278600:	e8 7b 1e 04 00       	call   0x1402ba480
140278605:	48 8b c8             	mov    %rax,%rcx
140278608:	4c 8b f3             	mov    %rbx,%r14
14027860b:	48 0f af cd          	imul   %rbp,%rcx
14027860f:	4c 2b f1             	sub    %rcx,%r14
140278612:	48 8b 0e             	mov    (%rsi),%rcx
140278615:	4a 89 04 f9          	mov    %rax,(%rcx,%r15,8)
140278619:	49 83 ef 01          	sub    $0x1,%r15
14027861d:	79 d1                	jns    0x1402785f0
14027861f:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140278624:	48 63 46 08          	movslq 0x8(%rsi),%rax
140278628:	4c 8b 7c 24 58       	mov    0x58(%rsp),%r15
14027862d:	44 8b c0             	mov    %eax,%r8d
140278630:	85 c0                	test   %eax,%eax
140278632:	7e 18                	jle    0x14027864c
140278634:	48 8b d0             	mov    %rax,%rdx
140278637:	44 8d 48 ff          	lea    -0x1(%rax),%r9d
14027863b:	48 8b 06             	mov    (%rsi),%rax
14027863e:	48 39 7c d0 f8       	cmp    %rdi,-0x8(%rax,%rdx,8)
140278643:	75 07                	jne    0x14027864c
140278645:	44 89 4e 08          	mov    %r9d,0x8(%rsi)
140278649:	45 8b c1             	mov    %r9d,%r8d
14027864c:	49 8b cc             	mov    %r12,%rcx
14027864f:	49 d3 ee             	shr    %cl,%r14
140278652:	45 85 c0             	test   %r8d,%r8d
140278655:	75 03                	jne    0x14027865a
140278657:	89 7e 10             	mov    %edi,0x10(%rsi)
14027865a:	49 8b fe             	mov    %r14,%rdi
14027865d:	4c 8b 64 24 48       	mov    0x48(%rsp),%r12
140278662:	48 8b ce             	mov    %rsi,%rcx
140278665:	e8 36 36 fb ff       	call   0x14022bca0
14027866a:	4c 8b 74 24 50       	mov    0x50(%rsp),%r14
14027866f:	48 8b c7             	mov    %rdi,%rax
140278672:	48 83 c4 20          	add    $0x20,%rsp
140278676:	5f                   	pop    %rdi
140278677:	5e                   	pop    %rsi
140278678:	5d                   	pop    %rbp
140278679:	c3                   	ret
14027867a:	44 8b 41 08          	mov    0x8(%rcx),%r8d
14027867e:	41 83 e8 01          	sub    $0x1,%r8d
140278682:	78 40                	js     0x1402786c4
140278684:	48 8b 09             	mov    (%rcx),%rcx
140278687:	49 63 c0             	movslq %r8d,%rax
14027868a:	4c 8d 0c c1          	lea    (%rcx,%rax,8),%r9
14027868e:	66 90                	xchg   %ax,%ax
140278690:	49 8b 09             	mov    (%r9),%rcx
140278693:	4d 8d 49 f8          	lea    -0x8(%r9),%r9
140278697:	33 d2                	xor    %edx,%edx
140278699:	48 c1 e7 20          	shl    $0x20,%rdi
14027869d:	48 8b c1             	mov    %rcx,%rax
1402786a0:	8b c9                	mov    %ecx,%ecx
1402786a2:	48 c1 e8 20          	shr    $0x20,%rax
1402786a6:	48 0b c7             	or     %rdi,%rax
1402786a9:	48 f7 f5             	div    %rbp
1402786ac:	48 8b c2             	mov    %rdx,%rax
1402786af:	33 d2                	xor    %edx,%edx
1402786b1:	48 c1 e0 20          	shl    $0x20,%rax
1402786b5:	48 0b c1             	or     %rcx,%rax
1402786b8:	48 f7 f5             	div    %rbp
1402786bb:	41 83 e8 01          	sub    $0x1,%r8d
1402786bf:	48 8b fa             	mov    %rdx,%rdi
1402786c2:	79 cc                	jns    0x140278690
1402786c4:	48 8b c7             	mov    %rdi,%rax
1402786c7:	48 83 c4 20          	add    $0x20,%rsp
1402786cb:	5f                   	pop    %rdi
1402786cc:	5e                   	pop    %rsi
1402786cd:	5d                   	pop    %rbp
1402786ce:	c3                   	ret
1402786cf:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
1402786d6:	48 83 c4 20          	add    $0x20,%rsp
1402786da:	5f                   	pop    %rdi
1402786db:	5e                   	pop    %rsi
1402786dc:	5d                   	pop    %rbp
1402786dd:	c3                   	ret
1402786de:	cc                   	int3
1402786df:	cc                   	int3
1402786e0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1402786e5:	57                   	push   %rdi
1402786e6:	b8 20 00 00 00       	mov    $0x20,%eax
1402786eb:	e8 f0 1e 08 00       	call   0x1402fa5e0
1402786f0:	48 2b e0             	sub    %rax,%rsp
1402786f3:	44 8b 41 08          	mov    0x8(%rcx),%r8d
1402786f7:	48 8b d9             	mov    %rcx,%rbx
1402786fa:	45 85 c0             	test   %r8d,%r8d
1402786fd:	74 5b                	je     0x14027875a
1402786ff:	48 85 d2             	test   %rdx,%rdx
140278702:	75 15                	jne    0x140278719
140278704:	e8 67 3b fb ff       	call   0x14022c270
140278709:	b8 01 00 00 00       	mov    $0x1,%eax
14027870e:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140278713:	48 83 c4 20          	add    $0x20,%rsp
140278717:	5f                   	pop    %rdi
140278718:	c3                   	ret
140278719:	48 8b 09             	mov    (%rcx),%rcx
14027871c:	4c 8b ca             	mov    %rdx,%r9
14027871f:	48 8b d1             	mov    %rcx,%rdx
140278722:	e8 d9 2b 04 00       	call   0x1402bb300
140278727:	48 8b f8             	mov    %rax,%rdi
14027872a:	48 85 c0             	test   %rax,%rax
14027872d:	74 2b                	je     0x14027875a
14027872f:	8b 53 08             	mov    0x8(%rbx),%edx
140278732:	48 8b cb             	mov    %rbx,%rcx
140278735:	ff c2                	inc    %edx
140278737:	e8 c4 40 fb ff       	call   0x14022c800
14027873c:	48 85 c0             	test   %rax,%rax
14027873f:	75 0b                	jne    0x14027874c
140278741:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140278746:	48 83 c4 20          	add    $0x20,%rsp
14027874a:	5f                   	pop    %rdi
14027874b:	c3                   	ret
14027874c:	48 63 4b 08          	movslq 0x8(%rbx),%rcx
140278750:	48 8b 03             	mov    (%rbx),%rax
140278753:	48 89 3c c8          	mov    %rdi,(%rax,%rcx,8)
140278757:	ff 43 08             	incl   0x8(%rbx)
14027875a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14027875f:	b8 01 00 00 00       	mov    $0x1,%eax
140278764:	48 83 c4 20          	add    $0x20,%rsp
140278768:	5f                   	pop    %rdi
140278769:	c3                   	ret
14027876a:	cc                   	int3
14027876b:	cc                   	int3
14027876c:	cc                   	int3
14027876d:	cc                   	int3
14027876e:	cc                   	int3
14027876f:	cc                   	int3
140278770:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140278775:	57                   	push   %rdi
140278776:	b8 20 00 00 00       	mov    $0x20,%eax
14027877b:	e8 60 1e 08 00       	call   0x1402fa5e0
140278780:	48 2b e0             	sub    %rax,%rsp
140278783:	48 8b fa             	mov    %rdx,%rdi
140278786:	48 8b d9             	mov    %rcx,%rbx
140278789:	48 85 d2             	test   %rdx,%rdx
14027878c:	0f 84 e3 00 00 00    	je     0x140278875
140278792:	e8 69 36 fb ff       	call   0x14022be00
140278797:	85 c0                	test   %eax,%eax
140278799:	74 2b                	je     0x1402787c6
14027879b:	48 8b d7             	mov    %rdi,%rdx
14027879e:	48 8b cb             	mov    %rbx,%rcx
1402787a1:	e8 ca 3a fb ff       	call   0x14022c270
1402787a6:	8b f8                	mov    %eax,%edi
1402787a8:	85 c0                	test   %eax,%eax
1402787aa:	74 0d                	je     0x1402787b9
1402787ac:	ba 01 00 00 00       	mov    $0x1,%edx
1402787b1:	48 8b cb             	mov    %rbx,%rcx
1402787b4:	e8 97 3a fb ff       	call   0x14022c250
1402787b9:	8b c7                	mov    %edi,%eax
1402787bb:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1402787c0:	48 83 c4 20          	add    $0x20,%rsp
1402787c4:	5f                   	pop    %rdi