1400034d7:	48 c7 43 18 0f 00 00 	movq   $0xf,0x18(%rbx)
1400034de:	00
1400034df:	c6 03 00             	movb   $0x0,(%rbx)
1400034e2:	48 83 c4 20          	add    $0x20,%rsp
1400034e6:	5b                   	pop    %rbx
1400034e7:	c3                   	ret
1400034e8:	e8 cb d2 00 00       	call   0x1400107b8
1400034ed:	cc                   	int3
1400034ee:	cc                   	int3
1400034ef:	cc                   	int3
1400034f0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1400034f5:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1400034fa:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1400034ff:	41 56                	push   %r14
140003501:	48 83 ec 20          	sub    $0x20,%rsp
140003505:	48 8b 41 28          	mov    0x28(%rcx),%rax
140003509:	48 8d 1c 12          	lea    (%rdx,%rdx,1),%rbx
14000350d:	48 2b 41 18          	sub    0x18(%rcx),%rax
140003511:	4c 8b f2             	mov    %rdx,%r14
140003514:	48 c1 f8 03          	sar    $0x3,%rax
140003518:	48 8b f9             	mov    %rcx,%rdi
14000351b:	48 3b d8             	cmp    %rax,%rbx
14000351e:	76 1b                	jbe    0x14000353b
140003520:	48 b8 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%rax
140003527:	ff ff 1f
14000352a:	48 3b d8             	cmp    %rax,%rbx
14000352d:	77 48                	ja     0x140003577
14000352f:	48 8b d3             	mov    %rbx,%rdx
140003532:	48 83 c1 18          	add    $0x18,%rcx
140003536:	e8 25 02 00 00       	call   0x140003760
14000353b:	48 8b 47 08          	mov    0x8(%rdi),%rax
14000353f:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
140003544:	48 8b d3             	mov    %rbx,%rdx
140003547:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14000354c:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140003550:	e8 2b 00 00 00       	call   0x140003580
140003555:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14000355a:	49 8d 46 ff          	lea    -0x1(%r14),%rax
14000355e:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140003563:	48 89 47 30          	mov    %rax,0x30(%rdi)
140003567:	4c 89 77 38          	mov    %r14,0x38(%rdi)
14000356b:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140003570:	48 83 c4 20          	add    $0x20,%rsp
140003574:	41 5e                	pop    %r14
140003576:	c3                   	ret
140003577:	e8 c4 01 00 00       	call   0x140003740
14000357c:	cc                   	int3
14000357d:	cc                   	int3
14000357e:	cc                   	int3
14000357f:	cc                   	int3
140003580:	40 53                	rex push %rbx
140003582:	55                   	push   %rbp
140003583:	56                   	push   %rsi
140003584:	57                   	push   %rdi
140003585:	48 83 ec 28          	sub    $0x28,%rsp
140003589:	48 8b 41 08          	mov    0x8(%rcx),%rax
14000358d:	48 8b da             	mov    %rdx,%rbx
140003590:	48 8b f9             	mov    %rcx,%rdi
140003593:	48 8b e8             	mov    %rax,%rbp
140003596:	48 8b 09             	mov    (%rcx),%rcx
140003599:	49 8b f0             	mov    %r8,%rsi
14000359c:	48 2b e9             	sub    %rcx,%rbp
14000359f:	48 c1 fd 03          	sar    $0x3,%rbp
1400035a3:	48 8b 57 10          	mov    0x10(%rdi),%rdx
1400035a7:	48 2b d1             	sub    %rcx,%rdx
1400035aa:	48 c1 fa 03          	sar    $0x3,%rdx
1400035ae:	48 3b da             	cmp    %rdx,%rbx
1400035b1:	0f 86 1b 01 00 00    	jbe    0x1400036d2
1400035b7:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
1400035bc:	49 be ff ff ff ff ff 	movabs $0x1fffffffffffffff,%r14
1400035c3:	ff ff 1f
1400035c6:	49 3b de             	cmp    %r14,%rbx
1400035c9:	0f 87 57 01 00 00    	ja     0x140003726
1400035cf:	4c 8b c2             	mov    %rdx,%r8
1400035d2:	49 8b c6             	mov    %r14,%rax
1400035d5:	49 d1 e8             	shr    $1,%r8
1400035d8:	49 2b c0             	sub    %r8,%rax
1400035db:	48 3b d0             	cmp    %rax,%rdx
1400035de:	76 05                	jbe    0x1400035e5
1400035e0:	48 8b eb             	mov    %rbx,%rbp
1400035e3:	eb 0b                	jmp    0x1400035f0
1400035e5:	49 8d 2c 10          	lea    (%r8,%rdx,1),%rbp
1400035e9:	48 3b eb             	cmp    %rbx,%rbp
1400035ec:	48 0f 42 eb          	cmovb  %rbx,%rbp
1400035f0:	48 85 c9             	test   %rcx,%rcx
1400035f3:	74 32                	je     0x140003627
1400035f5:	48 8d 14 d5 00 00 00 	lea    0x0(,%rdx,8),%rdx
1400035fc:	00
1400035fd:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140003604:	72 1c                	jb     0x140003622
140003606:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
14000360a:	48 83 c2 27          	add    $0x27,%rdx
14000360e:	49 2b c8             	sub    %r8,%rcx
140003611:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140003615:	48 83 f8 1f          	cmp    $0x1f,%rax
140003619:	0f 87 0d 01 00 00    	ja     0x14000372c
14000361f:	49 8b c8             	mov    %r8,%rcx
140003622:	e8 5d 92 00 00       	call   0x14000c884
140003627:	33 c0                	xor    %eax,%eax
140003629:	48 89 07             	mov    %rax,(%rdi)
14000362c:	48 89 47 08          	mov    %rax,0x8(%rdi)
140003630:	48 89 47 10          	mov    %rax,0x10(%rdi)
140003634:	48 85 ed             	test   %rbp,%rbp
140003637:	74 69                	je     0x1400036a2
140003639:	49 3b ee             	cmp    %r14,%rbp
14000363c:	0f 87 e4 00 00 00    	ja     0x140003726
140003642:	48 8d 2c ed 00 00 00 	lea    0x0(,%rbp,8),%rbp
140003649:	00
14000364a:	48 81 fd 00 10 00 00 	cmp    $0x1000,%rbp
140003651:	72 31                	jb     0x140003684
140003653:	48 8d 4d 27          	lea    0x27(%rbp),%rcx
140003657:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
14000365e:	48 3b cd             	cmp    %rbp,%rcx
140003661:	48 0f 46 c8          	cmovbe %rax,%rcx
140003665:	e8 2a 8f 00 00       	call   0x14000c594
14000366a:	48 8b c8             	mov    %rax,%rcx
14000366d:	48 85 c0             	test   %rax,%rax
140003670:	0f 84 b6 00 00 00    	je     0x14000372c
140003676:	48 83 c0 27          	add    $0x27,%rax
14000367a:	48 83 e0 e0          	and    $0xffffffffffffffe0,%rax
14000367e:	48 89 48 f8          	mov    %rcx,-0x8(%rax)
140003682:	eb 0d                	jmp    0x140003691
140003684:	48 85 ed             	test   %rbp,%rbp
140003687:	74 08                	je     0x140003691
140003689:	48 8b cd             	mov    %rbp,%rcx
14000368c:	e8 03 8f 00 00       	call   0x14000c594
140003691:	48 89 07             	mov    %rax,(%rdi)
140003694:	48 89 47 08          	mov    %rax,0x8(%rdi)
140003698:	48 8b 0f             	mov    (%rdi),%rcx
14000369b:	48 03 cd             	add    %rbp,%rcx
14000369e:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
1400036a2:	48 8b 0f             	mov    (%rdi),%rcx
1400036a5:	48 85 db             	test   %rbx,%rbx
1400036a8:	74 16                	je     0x1400036c0
1400036aa:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1400036b0:	48 8b 06             	mov    (%rsi),%rax
1400036b3:	48 89 01             	mov    %rax,(%rcx)
1400036b6:	48 83 c1 08          	add    $0x8,%rcx
1400036ba:	48 83 eb 01          	sub    $0x1,%rbx
1400036be:	75 f0                	jne    0x1400036b0
1400036c0:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
1400036c5:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
1400036c9:	48 83 c4 28          	add    $0x28,%rsp
1400036cd:	5f                   	pop    %rdi
1400036ce:	5e                   	pop    %rsi
1400036cf:	5d                   	pop    %rbp
1400036d0:	5b                   	pop    %rbx
1400036d1:	c3                   	ret
1400036d2:	48 3b dd             	cmp    %rbp,%rbx
1400036d5:	76 36                	jbe    0x14000370d
1400036d7:	48 8b d0             	mov    %rax,%rdx
1400036da:	e8 f1 04 00 00       	call   0x140003bd0
1400036df:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1400036e3:	48 2b dd             	sub    %rbp,%rbx
1400036e6:	74 18                	je     0x140003700
1400036e8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1400036ef:	00
1400036f0:	49 8b 00             	mov    (%r8),%rax
1400036f3:	48 89 01             	mov    %rax,(%rcx)
1400036f6:	48 83 c1 08          	add    $0x8,%rcx
1400036fa:	48 83 eb 01          	sub    $0x1,%rbx
1400036fe:	75 f0                	jne    0x1400036f0
140003700:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
140003704:	48 83 c4 28          	add    $0x28,%rsp
140003708:	5f                   	pop    %rdi
140003709:	5e                   	pop    %rsi
14000370a:	5d                   	pop    %rbp
14000370b:	5b                   	pop    %rbx
14000370c:	c3                   	ret
14000370d:	48 8d 1c d9          	lea    (%rcx,%rbx,8),%rbx
140003711:	48 8b d3             	mov    %rbx,%rdx
140003714:	e8 b7 04 00 00       	call   0x140003bd0
140003719:	48 89 5f 08          	mov    %rbx,0x8(%rdi)
14000371d:	48 83 c4 28          	add    $0x28,%rsp
140003721:	5f                   	pop    %rdi
140003722:	5e                   	pop    %rsi
140003723:	5d                   	pop    %rbp
140003724:	5b                   	pop    %rbx
140003725:	c3                   	ret
140003726:	e8 15 00 00 00       	call   0x140003740
14000372b:	cc                   	int3
14000372c:	e8 87 d0 00 00       	call   0x1400107b8
140003731:	cc                   	int3
140003732:	cc                   	int3
140003733:	cc                   	int3
140003734:	cc                   	int3
140003735:	cc                   	int3
140003736:	cc                   	int3
140003737:	cc                   	int3
140003738:	cc                   	int3
140003739:	cc                   	int3
14000373a:	cc                   	int3
14000373b:	cc                   	int3
14000373c:	cc                   	int3
14000373d:	cc                   	int3
14000373e:	cc                   	int3
14000373f:	cc                   	int3
140003740:	48 83 ec 28          	sub    $0x28,%rsp
140003744:	48 8d 0d 25 a8 03 00 	lea    0x3a825(%rip),%rcx        # 0x14003df70
14000374b:	e8 a8 36 00 00       	call   0x140006df8
140003750:	cc                   	int3
140003751:	cc                   	int3
140003752:	cc                   	int3
140003753:	cc                   	int3
140003754:	cc                   	int3
140003755:	cc                   	int3
140003756:	cc                   	int3
140003757:	cc                   	int3
140003758:	cc                   	int3
140003759:	cc                   	int3
14000375a:	cc                   	int3
14000375b:	cc                   	int3
14000375c:	cc                   	int3
14000375d:	cc                   	int3
14000375e:	cc                   	int3
14000375f:	cc                   	int3
140003760:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140003765:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
14000376a:	56                   	push   %rsi
14000376b:	57                   	push   %rdi
14000376c:	41 56                	push   %r14
14000376e:	48 83 ec 20          	sub    $0x20,%rsp
140003772:	48 8b 69 08          	mov    0x8(%rcx),%rbp
140003776:	4c 8d 34 d5 00 00 00 	lea    0x0(,%rdx,8),%r14
14000377d:	00
14000377e:	48 2b 29             	sub    (%rcx),%rbp
140003781:	33 db                	xor    %ebx,%ebx
140003783:	48 8b f1             	mov    %rcx,%rsi
140003786:	48 c1 fd 03          	sar    $0x3,%rbp
14000378a:	48 b9 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%rcx
140003791:	ff ff 1f
140003794:	49 8b c6             	mov    %r14,%rax
140003797:	4c 8d 43 ff          	lea    -0x1(%rbx),%r8
14000379b:	48 3b d1             	cmp    %rcx,%rdx
14000379e:	76 05                	jbe    0x1400037a5
1400037a0:	49 8b c0             	mov    %r8,%rax
1400037a3:	eb 08                	jmp    0x1400037ad
1400037a5:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
1400037ab:	72 27                	jb     0x1400037d4
1400037ad:	48 8d 48 27          	lea    0x27(%rax),%rcx
1400037b1:	48 3b c8             	cmp    %rax,%rcx
1400037b4:	49 0f 46 c8          	cmovbe %r8,%rcx
1400037b8:	e8 d7 8d 00 00       	call   0x14000c594
1400037bd:	48 85 c0             	test   %rax,%rax
1400037c0:	0f 84 bf 00 00 00    	je     0x140003885
1400037c6:	48 8d 78 27          	lea    0x27(%rax),%rdi
1400037ca:	48 83 e7 e0          	and    $0xffffffffffffffe0,%rdi
1400037ce:	48 89 47 f8          	mov    %rax,-0x8(%rdi)
1400037d2:	eb 15                	jmp    0x1400037e9
1400037d4:	48 85 c0             	test   %rax,%rax
1400037d7:	74 0d                	je     0x1400037e6
1400037d9:	48 8b c8             	mov    %rax,%rcx
1400037dc:	e8 b3 8d 00 00       	call   0x14000c594
1400037e1:	48 8b f8             	mov    %rax,%rdi
1400037e4:	eb 03                	jmp    0x1400037e9
1400037e6:	48 8b fb             	mov    %rbx,%rdi
1400037e9:	48 8b 0e             	mov    (%rsi),%rcx
1400037ec:	48 8b d7             	mov    %rdi,%rdx
1400037ef:	4c 8b 46 08          	mov    0x8(%rsi),%r8
1400037f3:	4c 2b c1             	sub    %rcx,%r8
1400037f6:	49 83 c0 07          	add    $0x7,%r8
1400037fa:	49 c1 e8 03          	shr    $0x3,%r8
1400037fe:	48 3b 4e 08          	cmp    0x8(%rsi),%rcx
140003802:	4c 0f 47 c3          	cmova  %rbx,%r8
140003806:	4d 85 c0             	test   %r8,%r8
140003809:	74 1e                	je     0x140003829
14000380b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003810:	48 8b 01             	mov    (%rcx),%rax
140003813:	48 ff c3             	inc    %rbx
140003816:	48 89 02             	mov    %rax,(%rdx)
140003819:	48 8d 52 08          	lea    0x8(%rdx),%rdx
14000381d:	48 8d 49 08          	lea    0x8(%rcx),%rcx
140003821:	49 3b d8             	cmp    %r8,%rbx
140003824:	75 ea                	jne    0x140003810
140003826:	48 8b 0e             	mov    (%rsi),%rcx
140003829:	48 85 c9             	test   %rcx,%rcx
14000382c:	74 31                	je     0x14000385f
14000382e:	48 8b 56 10          	mov    0x10(%rsi),%rdx
140003832:	48 2b d1             	sub    %rcx,%rdx
140003835:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
140003839:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140003840:	72 18                	jb     0x14000385a
140003842:	48 8b 41 f8          	mov    -0x8(%rcx),%rax
140003846:	48 83 c2 27          	add    $0x27,%rdx
14000384a:	48 2b c8             	sub    %rax,%rcx
14000384d:	48 83 c1 f8          	add    $0xfffffffffffffff8,%rcx
140003851:	48 83 f9 1f          	cmp    $0x1f,%rcx
140003855:	77 2e                	ja     0x140003885
140003857:	48 8b c8             	mov    %rax,%rcx
14000385a:	e8 25 90 00 00       	call   0x14000c884
14000385f:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140003864:	48 8d 04 ef          	lea    (%rdi,%rbp,8),%rax
140003868:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
14000386d:	48 89 3e             	mov    %rdi,(%rsi)
140003870:	48 89 46 08          	mov    %rax,0x8(%rsi)
140003874:	49 8d 04 3e          	lea    (%r14,%rdi,1),%rax
140003878:	48 89 46 10          	mov    %rax,0x10(%rsi)
14000387c:	48 83 c4 20          	add    $0x20,%rsp
140003880:	41 5e                	pop    %r14
140003882:	5f                   	pop    %rdi
140003883:	5e                   	pop    %rsi
140003884:	c3                   	ret
140003885:	e8 2e cf 00 00       	call   0x1400107b8
14000388a:	cc                   	int3
14000388b:	cc                   	int3
14000388c:	cc                   	int3
14000388d:	cc                   	int3
14000388e:	cc                   	int3
14000388f:	cc                   	int3
140003890:	48 83 ec 28          	sub    $0x28,%rsp
140003894:	48 8d 0d ed a6 03 00 	lea    0x3a6ed(%rip),%rcx        # 0x14003df88
14000389b:	e8 7c 35 00 00       	call   0x140006e1c
1400038a0:	cc                   	int3
1400038a1:	cc                   	int3
1400038a2:	cc                   	int3
1400038a3:	cc                   	int3
1400038a4:	cc                   	int3
1400038a5:	cc                   	int3
1400038a6:	cc                   	int3
1400038a7:	cc                   	int3
1400038a8:	cc                   	int3
1400038a9:	cc                   	int3
1400038aa:	cc                   	int3
1400038ab:	cc                   	int3
1400038ac:	cc                   	int3
1400038ad:	cc                   	int3
1400038ae:	cc                   	int3
1400038af:	cc                   	int3
1400038b0:	40 53                	rex push %rbx
1400038b2:	56                   	push   %rsi
1400038b3:	41 56                	push   %r14
1400038b5:	41 57                	push   %r15
1400038b7:	48 83 ec 38          	sub    $0x38,%rsp
1400038bb:	48 bb fe ff ff ff ff 	movabs $0x7ffffffffffffffe,%rbx
1400038c2:	ff ff 7f
1400038c5:	4d 8b f9             	mov    %r9,%r15
1400038c8:	4c 8b f2             	mov    %rdx,%r14
1400038cb:	48 8b f1             	mov    %rcx,%rsi
1400038ce:	48 3b d3             	cmp    %rbx,%rdx
1400038d1:	0f 87 26 01 00 00    	ja     0x1400039fd
1400038d7:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
1400038dc:	48 8b 69 18          	mov    0x18(%rcx),%rbp
1400038e0:	48 8b ca             	mov    %rdx,%rcx
1400038e3:	48 83 c9 07          	or     $0x7,%rcx
1400038e7:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
1400038ec:	48 3b cb             	cmp    %rbx,%rcx
1400038ef:	77 1f                	ja     0x140003910
1400038f1:	48 8b d5             	mov    %rbp,%rdx
1400038f4:	48 8b c3             	mov    %rbx,%rax
1400038f7:	48 d1 ea             	shr    $1,%rdx