// File: BenLangmead[P]bowtie/ebwt_search.cpp
// Function: printUsage(std::ostream&)
static void printUsage(ostream& out) {
#ifdef BOWTIE_64BIT_INDEX
	string tool_name = "bowtie-align-l";
#else
	string tool_name = "bowtie-align-s";
#endif
	if(wrapper == "basic-0") {
		tool_name = "bowtie";
	}

	out << "Usage: " << endl
        << tool_name << " [options]* -x <ebwt> {-1 <m1> -2 <m2> | --12 <r> | --interleaved <i> | 
} [<hit>]" << endl
        << endl
	    << "  <ebwt>  Index filename prefix (minus trailing .X." + gEbwt_ext + ")." << endl
	    << "  <m1>    Comma-separated list of files containing upstream mates (or the" << endl
	    << "          sequences themselves, if -c is set) paired with mates in <m2>" << endl
	    << "  <m2>    Comma-separated list of files containing downstream mates (or the" << endl
	    << "          sequences themselves if -c is set) paired with mates in <m1>" << endl
	    << "  <r>     Comma-separated list of files containing Crossbow-style reads.  Can be" << endl
	    << "          a mixture of paired and unpaired.  Specify \"-\" for stdin." << endl
	    << "  <i>     Files with interleaved paired-end FASTQ reads." << endl
	    << "  
     Comma-separated list of files containing unpaired reads, or the" << endl
	    << "          sequences themselves, if -c is set.  Specify \"-\" for stdin." << endl
	    << "  <hit>   File to write hits to (default: stdout)" << endl
	    << "Input:" << endl
	    << "  -q                 query input files are FASTQ .fq/.fastq (default)" << endl
	    << "  -f                 query input files are (multi-)FASTA .fa/.mfa" << endl
	    << "  -F k:<int>,i:<int> query input files are continuous FASTA where reads" << endl
	    << "                     are substrings (k-mers) extracted from a FASTA file 
" << endl
	    << "                     and aligned at offsets 1, 1+i, 1+2i ... end of reference" << endl
	    << "  -r                 query input files are raw one-sequence-per-line" << endl
	    << "  -c                 query sequences given on cmd line (as <mates>, <singles>)" << endl
	    << "  -Q/--quals <file>  QV file(s) corresponding to CSFASTA inputs; use with -f -C" << endl
	    << "  --Q1/--Q2 <file>   same as -Q, but for mate files 1 and 2 respectively" << endl
	    << "  -s/--skip <int>    skip the first <int> reads/pairs in the input" << endl
	    << "  -u/--qupto <int>   stop after first <int> reads/pairs (excl. skipped reads)" << endl
	    << "  -5/--trim5 <int>   trim <int> bases from 5' (left) end of reads" << endl
	    << "  -3/--trim3 <int>   trim <int> bases from 3' (right) end of reads" << endl
		<< "  --phred33-quals    input quals are Phred+33 (default)" << endl
		<< "  --phred64-quals    input quals are Phred+64 (same as --solexa1.3-quals)" << endl
		<< "  --solexa-quals     input quals are from GA Pipeline ver. < 1.3" << endl
		<< "  --solexa1.3-quals  input quals are from GA Pipeline ver. >= 1.3" << endl
		<< "  --integer-quals    qualities are given as space-separated integers (not ASCII)" << endl;
		if(wrapper == "basic-0") {
		out << "  --large-index      force usage of a 'large' index, even if a small one is present" << endl;
		}
		out << "Alignment:" << endl
	    << "  -v <int>           report end-to-end hits w/ <=v mismatches; ignore qualities" << endl
	    << "    or" << endl
	    << "  -n/--seedmms <int> max mismatches in seed (can be 0-3, default: -n 2)" << endl
	    << "  -e/--maqerr <int>  max sum of mismatch quals across alignment for -n (def: 70)" << endl
	    << "  -l/--seedlen <int> seed length for -n (default: 28)" << endl
		<< "  --nomaqround       disable Maq-like quality rounding for -n (nearest 10 <= 30)" << endl
	    << "  -I/--minins <int>  minimum insert size for paired-end alignment (default: 0)" << endl
	    << "  -X/--maxins <int>  maximum insert size for paired-end alignment (default: 250)" << endl
	    << "  --fr/--rf/--ff     -1, -2 mates align fw/rev, rev/fw, fw/fw (default: --fr)" << endl
	    << "  --nofw/--norc      do not align to forward/reverse-complement reference strand" << endl
	    << "  --maxbts <int>     max # backtracks for -n 2/3 (default: 125, 800 for --best)" << endl
	    << "  --pairtries <int>  max # attempts to find mate for anchor hit (default: 100)" << endl
	    << "  -y/--tryhard       try hard to find valid alignments, at the expense of speed" << endl
	    << "  --chunkmbs <int>   max megabytes of RAM for best-first search frames (def: 64)" << endl
	    << " --reads-per-batch   # of reads to read from input file at once (default: 16)" << endl
	    << "Reporting:" << endl
	    << "  -k <int>           report up to <int> good alignments per read (default: 1)" << endl
	    << "  -a/--all           report all alignments per read (much slower than low -k)" << endl
	    << "  -m <int>           suppress all alignments if > <int> exist (def: no limit)" << endl
	    << "  -M <int>           like -m, but reports 1 random hit (MAPQ=0); requires --best" << endl
	    << "  --best             hits guaranteed best stratum; ties broken by quality" << endl
	    << "  --strata           hits in sub-optimal strata aren't reported (requires --best)" << endl
	    << "Output:" << endl
	    << "  -t/--time          print wall-clock time taken by search phases" << endl
	    << "  -B/--offbase <int> leftmost ref offset = <int> in bowtie output (default: 0)" << endl
	    << "  --quiet            print nothing but the alignments" << endl
	    << "  --refidx           refer to ref. seqs by 0-based index rather than name" << endl
	    << "  --al <fname>       write aligned reads/pairs to file(s) <fname>" << endl
	    << "  --un <fname>       write unaligned reads/pairs to file(s) <fname>" << endl
	    << "  --no-unal          suppress SAM records for unaligned reads" << endl
	    << "  --max <fname>      write reads/pairs over -m limit to file(s) <fname>" << endl
	    << "  --suppress <cols>  suppresses given columns (comma-delim'ed) in default output" << endl
	    << "  --fullref          write entire ref name (default: only up to 1st space)" << endl
	    << "SAM:" << endl
	    << "  -S/--sam           write hits in SAM format" << endl
	    << "  --mapq <int>       default mapping quality (MAPQ) to print for SAM alignments" << endl
	    << "  --sam-nohead       supppress header lines (starting with @) for SAM output" << endl
	    << "  --sam-nosq         supppress @SQ header lines for SAM output" << endl
	    << "  --sam-RG <text>    add <text> (usually \"lab=value\") to @RG line of SAM header" << endl
	    << "Performance:" << endl
	    << "  -o/--offrate <int> override offrate of index; must be >= index's offrate" << endl
	    << "  -p/--threads <int> number of alignment threads to launch (default: 1)" << endl
#ifdef BOWTIE_MM
	    << "  --mm               use memory-mapped I/O for index; many 'bowtie's can share" << endl
#endif
#ifdef BOWTIE_SHARED_MEM
	    << "  --shmem            use shared mem for index; many 'bowtie's can share" << endl
#endif
	    << "Other:" << endl
	    << "  --seed <int>       seed for random number generator" << endl
	    << "  --verbose          verbose output (for debugging)" << endl
	    << "  --version          print version information and quit" << endl
	    << "  -h/--help          print this usage message" << endl
	    ;
	if(wrapper.empty()) {
		cerr << endl
		     << "*** Warning ***" << endl
			 << tool_name << " was run directly.  It is recommended that you run the wrapper script 'bowtie' instead." << endl
			 << endl;
	}
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x5f0, %rsp            # imm = 0x5F0
movq %rdi, -0x8(%rbp)
leaq -0x29(%rbp), %rdi
movq %rdi, -0x88(%rbp)
callq 0xab70
movq -0x88(%rbp), %rdx
leaq 0x765cd(%rip), %rsi     # 0x8af4a
leaq -0x28(%rbp), %rdi
callq 0x24c10
jmp 0x14988
leaq -0x29(%rbp), %rdi
callq 0xa670
leaq 0x96978(%rip), %rdi     # 0xab310
leaq 0x765ba(%rip), %rsi     # 0x8af59
callq 0x28440
movb %al, -0x89(%rbp)
jmp 0x149ac
movb -0x89(%rbp), %al
testb $0x1, %al
jne 0x149b8
jmp 0x149f7
leaq 0x765a2(%rip), %rsi     # 0x8af61
leaq -0x28(%rbp), %rdi
callq 0xa840
jmp 0x149ca
jmp 0x149f7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x29(%rbp), %rdi
callq 0xa670
jmp 0x15dba
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x15db1
movq -0x8(%rbp), %rdi
leaq 0x76566(%rip), %rsi     # 0x8af68
callq 0xa5d0
movq %rax, -0x98(%rbp)
jmp 0x14a10
movq -0x98(%rbp), %rdi
movq 0x9354a(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0xa0(%rbp)
jmp 0x14a2c
movq -0xa0(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0xa540
movq %rax, -0xa8(%rbp)
jmp 0x14a45
movq -0xa8(%rbp), %rdi
leaq 0x7651d(%rip), %rsi     # 0x8af70
callq 0xa5d0
movq %rax, -0xb0(%rbp)
jmp 0x14a61
movq -0xb0(%rbp), %rdi
movq 0x934f9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0xb8(%rbp)
jmp 0x14a7d
movq -0xb8(%rbp), %rdi
movq 0x934dd(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0xc0(%rbp)
jmp 0x14a99
leaq 0x76525(%rip), %rsi     # 0x8afc5
leaq 0x96b09(%rip), %rdx     # 0xab5b0
leaq -0x80(%rbp), %rdi
callq 0x284c0
jmp 0x14ab2
leaq 0x78e45(%rip), %rdx     # 0x8d8fe
leaq -0x60(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x28470
jmp 0x14ac8
movq -0xc0(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0xa540
movq %rax, -0xc8(%rbp)
jmp 0x14ae1
movq -0xc8(%rbp), %rdi
movq 0x93479(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0xd0(%rbp)
jmp 0x14afd
movq -0xd0(%rbp), %rdi
leaq 0x764ee(%rip), %rsi     # 0x8aff9
callq 0xa5d0
movq %rax, -0xd8(%rbp)
jmp 0x14b19
movq -0xd8(%rbp), %rdi
movq 0x93441(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0xe0(%rbp)
jmp 0x14b35
movq -0xe0(%rbp), %rdi
leaq 0x76500(%rip), %rsi     # 0x8b043
callq 0xa5d0
movq %rax, -0xe8(%rbp)
jmp 0x14b51
movq -0xe8(%rbp), %rdi
movq 0x93409(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0xf0(%rbp)
jmp 0x14b6d
movq -0xf0(%rbp), %rdi
leaq 0x76510(%rip), %rsi     # 0x8b08b
callq 0xa5d0
movq %rax, -0xf8(%rbp)
jmp 0x14b89
movq -0xf8(%rbp), %rdi
movq 0x933d1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x100(%rbp)
jmp 0x14ba5
movq -0x100(%rbp), %rdi
leaq 0x76524(%rip), %rsi     # 0x8b0d7
callq 0xa5d0
movq %rax, -0x108(%rbp)
jmp 0x14bc1
movq -0x108(%rbp), %rdi
movq 0x93399(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x110(%rbp)
jmp 0x14bdd
movq -0x110(%rbp), %rdi
leaq 0x76533(%rip), %rsi     # 0x8b11e
callq 0xa5d0
movq %rax, -0x118(%rbp)
jmp 0x14bf9
movq -0x118(%rbp), %rdi
movq 0x93361(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x120(%rbp)
jmp 0x14c15
movq -0x120(%rbp), %rdi
leaq 0x7654c(%rip), %rsi     # 0x8b16f
callq 0xa5d0
movq %rax, -0x128(%rbp)
jmp 0x14c31
movq -0x128(%rbp), %rdi
movq 0x93329(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x130(%rbp)
jmp 0x14c4d
movq -0x130(%rbp), %rdi
leaq 0x76558(%rip), %rsi     # 0x8b1b3
callq 0xa5d0
movq %rax, -0x138(%rbp)
jmp 0x14c69
movq -0x138(%rbp), %rdi
movq 0x932f1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x140(%rbp)
jmp 0x14c85
movq -0x140(%rbp), %rdi
leaq 0x76559(%rip), %rsi     # 0x8b1ec
callq 0xa5d0
movq %rax, -0x148(%rbp)
jmp 0x14ca1
movq -0x148(%rbp), %rdi
movq 0x932b9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x150(%rbp)
jmp 0x14cbd
movq -0x150(%rbp), %rdi
leaq 0x7656b(%rip), %rsi     # 0x8b236
callq 0xa5d0
movq %rax, -0x158(%rbp)
jmp 0x14cd9
movq -0x158(%rbp), %rdi
movq 0x93281(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x160(%rbp)
jmp 0x14cf5
movq -0x160(%rbp), %rdi
leaq 0x76579(%rip), %rsi     # 0x8b27c
callq 0xa5d0
movq %rax, -0x168(%rbp)
jmp 0x14d11
movq -0x168(%rbp), %rdi
movq 0x93249(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x170(%rbp)
jmp 0x14d2d
movq -0x170(%rbp), %rdi
leaq 0x76573(%rip), %rsi     # 0x8b2ae
callq 0xa5d0
movq %rax, -0x178(%rbp)
jmp 0x14d49
movq -0x178(%rbp), %rdi
movq 0x93211(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x180(%rbp)
jmp 0x14d65
movq -0x180(%rbp), %rdi
leaq 0x76542(%rip), %rsi     # 0x8b2b5
callq 0xa5d0
movq %rax, -0x188(%rbp)
jmp 0x14d81
movq -0x188(%rbp), %rdi
movq 0x931d9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x190(%rbp)
jmp 0x14d9d
movq -0x190(%rbp), %rdi
leaq 0x76550(%rip), %rsi     # 0x8b2fb
callq 0xa5d0
movq %rax, -0x198(%rbp)
jmp 0x14db9
movq -0x198(%rbp), %rdi
movq 0x931a1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x1a0(%rbp)
jmp 0x14dd5
movq -0x1a0(%rbp), %rdi
leaq 0x7655a(%rip), %rsi     # 0x8b33d
callq 0xa5d0
movq %rax, -0x1a8(%rbp)
jmp 0x14df1
movq -0x1a8(%rbp), %rdi
movq 0x93169(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x1b0(%rbp)
jmp 0x14e0d
movq -0x1b0(%rbp), %rdi
leaq 0x7656a(%rip), %rsi     # 0x8b385
callq 0xa5d0
movq %rax, -0x1b8(%rbp)
jmp 0x14e29
movq -0x1b8(%rbp), %rdi
movq 0x93131(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x1c0(%rbp)
jmp 0x14e45
movq -0x1c0(%rbp), %rdi
leaq 0x7657f(%rip), %rsi     # 0x8b3d2
callq 0xa5d0
movq %rax, -0x1c8(%rbp)
jmp 0x14e61
movq -0x1c8(%rbp), %rdi
movq 0x930f9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x1d0(%rbp)
jmp 0x14e7d
movq -0x1d0(%rbp), %rdi
leaq 0x76595(%rip), %rsi     # 0x8b420
callq 0xa5d0
movq %rax, -0x1d8(%rbp)
jmp 0x14e99
movq -0x1d8(%rbp), %rdi
movq 0x930c1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x1e0(%rbp)
jmp 0x14eb5
movq -0x1e0(%rbp), %rdi
leaq 0x765a2(%rip), %rsi     # 0x8b465
callq 0xa5d0
movq %rax, -0x1e8(%rbp)
jmp 0x14ed1
movq -0x1e8(%rbp), %rdi
movq 0x93089(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x1f0(%rbp)
jmp 0x14eed
movq -0x1f0(%rbp), %rdi
leaq 0x765b9(%rip), %rsi     # 0x8b4b4
callq 0xa5d0
movq %rax, -0x1f8(%rbp)
jmp 0x14f09
movq -0x1f8(%rbp), %rdi
movq 0x93051(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x200(%rbp)
jmp 0x14f25
movq -0x200(%rbp), %rdi
leaq 0x765d1(%rip), %rsi     # 0x8b504
callq 0xa5d0
movq %rax, -0x208(%rbp)
jmp 0x14f41
movq -0x208(%rbp), %rdi
movq 0x93019(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x210(%rbp)
jmp 0x14f5d
movq -0x210(%rbp), %rdi
leaq 0x765e2(%rip), %rsi     # 0x8b54d
callq 0xa5d0
movq %rax, -0x218(%rbp)
jmp 0x14f79
movq -0x218(%rbp), %rdi
movq 0x92fe1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x220(%rbp)
jmp 0x14f95
movq -0x220(%rbp), %rdi
leaq 0x765ed(%rip), %rsi     # 0x8b590
callq 0xa5d0
movq %rax, -0x228(%rbp)
jmp 0x14fb1
movq -0x228(%rbp), %rdi
movq 0x92fa9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x230(%rbp)
jmp 0x14fcd
movq -0x230(%rbp), %rdi
leaq 0x76603(%rip), %rsi     # 0x8b5de
callq 0xa5d0
movq %rax, -0x238(%rbp)
jmp 0x14fe9
movq -0x238(%rbp), %rdi
movq 0x92f71(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x240(%rbp)
jmp 0x15005
movq -0x240(%rbp), %rdi
leaq 0x7660d(%rip), %rsi     # 0x8b620
callq 0xa5d0
movq %rax, -0x248(%rbp)
jmp 0x15021
movq -0x248(%rbp), %rdi
movq 0x92f39(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x250(%rbp)
jmp 0x1503d
movq -0x250(%rbp), %rdi
leaq 0x76618(%rip), %rsi     # 0x8b663
callq 0xa5d0
movq %rax, -0x258(%rbp)
jmp 0x15059
movq -0x258(%rbp), %rdi
movq 0x92f01(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x260(%rbp)
jmp 0x15075
movq -0x260(%rbp), %rdi
leaq 0x76618(%rip), %rsi     # 0x8b69b
callq 0xa5d0
movq %rax, -0x268(%rbp)
jmp 0x15091
movq -0x268(%rbp), %rdi
movq 0x92ec9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x270(%rbp)
jmp 0x150ad
movq -0x270(%rbp), %rdi
leaq 0x7662a(%rip), %rsi     # 0x8b6e5
callq 0xa5d0
movq %rax, -0x278(%rbp)
jmp 0x150c9
movq -0x278(%rbp), %rdi
movq 0x92e91(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x280(%rbp)
jmp 0x150e5
movq -0x280(%rbp), %rdi
leaq 0x76633(%rip), %rsi     # 0x8b726
callq 0xa5d0
movq %rax, -0x288(%rbp)
jmp 0x15101
movq -0x288(%rbp), %rdi
movq 0x92e59(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x290(%rbp)
jmp 0x1511d
movq -0x290(%rbp), %rdi
leaq 0x7663d(%rip), %rsi     # 0x8b768
callq 0xa5d0
movq %rax, -0x298(%rbp)
jmp 0x15139
movq -0x298(%rbp), %rdi
movq 0x92e21(%rip), %rsi     # 0xa7f68
callq 0xa640
jmp 0x1514e
leaq -0x60(%rbp), %rdi
callq 0xacd8
leaq -0x80(%rbp), %rdi
callq 0xacd8
leaq 0x961a9(%rip), %rdi     # 0xab310
leaq 0x75deb(%rip), %rsi     # 0x8af59
callq 0x28440
movb %al, -0x299(%rbp)
jmp 0x1517b
movb -0x299(%rbp), %al
testb $0x1, %al
jne 0x15187
jmp 0x151e8
movq -0x8(%rbp), %rdi
leaq 0x76627(%rip), %rsi     # 0x8b7b9
callq 0xa5d0
movq %rax, -0x2a8(%rbp)
jmp 0x151a0
movq -0x2a8(%rbp), %rdi
movq 0x92dba(%rip), %rsi     # 0xa7f68
callq 0xa640
jmp 0x151b5
jmp 0x151e8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
jmp 0x151da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x60(%rbp), %rdi
callq 0xacd8
leaq -0x80(%rbp), %rdi
callq 0xacd8
jmp 0x15db1
movq -0x8(%rbp), %rdi
leaq 0x7661a(%rip), %rsi     # 0x8b80d
callq 0xa5d0
movq %rax, -0x2b0(%rbp)
jmp 0x15201
movq -0x2b0(%rbp), %rdi
movq 0x92d59(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x2b8(%rbp)
jmp 0x1521d
movq -0x2b8(%rbp), %rdi
leaq 0x765ed(%rip), %rsi     # 0x8b818
callq 0xa5d0
movq %rax, -0x2c0(%rbp)
jmp 0x15239
movq -0x2c0(%rbp), %rdi
movq 0x92d21(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x2c8(%rbp)
jmp 0x15255
movq -0x2c8(%rbp), %rdi
leaq 0x76605(%rip), %rsi     # 0x8b868
callq 0xa5d0
movq %rax, -0x2d0(%rbp)
jmp 0x15271
movq -0x2d0(%rbp), %rdi
movq 0x92ce9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x2d8(%rbp)
jmp 0x1528d
movq -0x2d8(%rbp), %rdi
leaq 0x765d4(%rip), %rsi     # 0x8b86f
callq 0xa5d0
movq %rax, -0x2e0(%rbp)
jmp 0x152a9
movq -0x2e0(%rbp), %rdi
movq 0x92cb1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x2e8(%rbp)
jmp 0x152c5
movq -0x2e8(%rbp), %rdi
leaq 0x765e4(%rip), %rsi     # 0x8b8b7
callq 0xa5d0
movq %rax, -0x2f0(%rbp)
jmp 0x152e1
movq -0x2f0(%rbp), %rdi
movq 0x92c79(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x2f8(%rbp)
jmp 0x152fd
movq -0x2f8(%rbp), %rdi
leaq 0x765fd(%rip), %rsi     # 0x8b908
callq 0xa5d0
movq %rax, -0x300(%rbp)
jmp 0x15319
movq -0x300(%rbp), %rdi
movq 0x92c41(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x308(%rbp)
jmp 0x15335
movq -0x308(%rbp), %rdi
leaq 0x765fb(%rip), %rsi     # 0x8b93e
callq 0xa5d0
movq %rax, -0x310(%rbp)
jmp 0x15351
movq -0x310(%rbp), %rdi
movq 0x92c09(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x318(%rbp)
jmp 0x1536d
movq -0x318(%rbp), %rdi
leaq 0x76614(%rip), %rsi     # 0x8b98f
callq 0xa5d0
movq %rax, -0x320(%rbp)
jmp 0x15389
movq -0x320(%rbp), %rdi
movq 0x92bd1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x328(%rbp)
jmp 0x153a5
movq -0x328(%rbp), %rdi
leaq 0x7662b(%rip), %rsi     # 0x8b9de
callq 0xa5d0
movq %rax, -0x330(%rbp)
jmp 0x153c1
movq -0x330(%rbp), %rdi
movq 0x92b99(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x338(%rbp)
jmp 0x153dd
movq -0x338(%rbp), %rdi
leaq 0x76644(%rip), %rsi     # 0x8ba2f
callq 0xa5d0
movq %rax, -0x340(%rbp)
jmp 0x153f9
movq -0x340(%rbp), %rdi
movq 0x92b61(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x348(%rbp)
jmp 0x15415
movq -0x348(%rbp), %rdi
leaq 0x7665a(%rip), %rsi     # 0x8ba7d
callq 0xa5d0
movq %rax, -0x350(%rbp)
jmp 0x15431
movq -0x350(%rbp), %rdi
movq 0x92b29(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x358(%rbp)
jmp 0x1544d
movq -0x358(%rbp), %rdi
leaq 0x76673(%rip), %rsi     # 0x8bace
callq 0xa5d0
movq %rax, -0x360(%rbp)
jmp 0x15469
movq -0x360(%rbp), %rdi
movq 0x92af1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x368(%rbp)
jmp 0x15485
movq -0x368(%rbp), %rdi
leaq 0x7668b(%rip), %rsi     # 0x8bb1e
callq 0xa5d0
movq %rax, -0x370(%rbp)
jmp 0x154a1
movq -0x370(%rbp), %rdi
movq 0x92ab9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x378(%rbp)
jmp 0x154bd
movq -0x378(%rbp), %rdi
leaq 0x766a2(%rip), %rsi     # 0x8bb6d
callq 0xa5d0
movq %rax, -0x380(%rbp)
jmp 0x154d9
movq -0x380(%rbp), %rdi
movq 0x92a81(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x388(%rbp)
jmp 0x154f5
movq -0x388(%rbp), %rdi
leaq 0x766ba(%rip), %rsi     # 0x8bbbd
callq 0xa5d0
movq %rax, -0x390(%rbp)
jmp 0x15511
movq -0x390(%rbp), %rdi
movq 0x92a49(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x398(%rbp)
jmp 0x1552d
movq -0x398(%rbp), %rdi
leaq 0x766d3(%rip), %rsi     # 0x8bc0e
callq 0xa5d0
movq %rax, -0x3a0(%rbp)
jmp 0x15549
movq -0x3a0(%rbp), %rdi
movq 0x92a11(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x3a8(%rbp)
jmp 0x15565
movq -0x3a8(%rbp), %rdi
leaq 0x766e9(%rip), %rsi     # 0x8bc5c
callq 0xa5d0
movq %rax, -0x3b0(%rbp)
jmp 0x15581
movq -0x3b0(%rbp), %rdi
movq 0x929d9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x3b8(%rbp)
jmp 0x1559d
movq -0x3b8(%rbp), %rdi
leaq 0x766bc(%rip), %rsi     # 0x8bc67
callq 0xa5d0
movq %rax, -0x3c0(%rbp)
jmp 0x155b9
movq -0x3c0(%rbp), %rdi
movq 0x929a1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x3c8(%rbp)
jmp 0x155d5
movq -0x3c8(%rbp), %rdi
leaq 0x766d2(%rip), %rsi     # 0x8bcb5
callq 0xa5d0
movq %rax, -0x3d0(%rbp)
jmp 0x155f1
movq -0x3d0(%rbp), %rdi
movq 0x92969(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x3d8(%rbp)
jmp 0x1560d
movq -0x3d8(%rbp), %rdi
leaq 0x766e8(%rip), %rsi     # 0x8bd03
callq 0xa5d0
movq %rax, -0x3e0(%rbp)
jmp 0x15629
movq -0x3e0(%rbp), %rdi
movq 0x92931(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x3e8(%rbp)
jmp 0x15645
movq -0x3e8(%rbp), %rdi
leaq 0x766fe(%rip), %rsi     # 0x8bd51
callq 0xa5d0
movq %rax, -0x3f0(%rbp)
jmp 0x15661
movq -0x3f0(%rbp), %rdi
movq 0x928f9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x3f8(%rbp)
jmp 0x1567d
movq -0x3f8(%rbp), %rdi
leaq 0x76717(%rip), %rsi     # 0x8bda2
callq 0xa5d0
movq %rax, -0x400(%rbp)
jmp 0x15699
movq -0x400(%rbp), %rdi
movq 0x928c1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x408(%rbp)
jmp 0x156b5
movq -0x408(%rbp), %rdi
leaq 0x76729(%rip), %rsi     # 0x8bdec
callq 0xa5d0
movq %rax, -0x410(%rbp)
jmp 0x156d1
movq -0x410(%rbp), %rdi
movq 0x92889(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x418(%rbp)
jmp 0x156ed
movq -0x418(%rbp), %rdi
leaq 0x76743(%rip), %rsi     # 0x8be3e
callq 0xa5d0
movq %rax, -0x420(%rbp)
jmp 0x15709
movq -0x420(%rbp), %rdi
movq 0x92851(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x428(%rbp)
jmp 0x15725
movq -0x428(%rbp), %rdi
leaq 0x76713(%rip), %rsi     # 0x8be46
callq 0xa5d0
movq %rax, -0x430(%rbp)
jmp 0x15741
movq -0x430(%rbp), %rdi
movq 0x92819(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x438(%rbp)
jmp 0x1575d
movq -0x438(%rbp), %rdi
leaq 0x7671d(%rip), %rsi     # 0x8be88
callq 0xa5d0
movq %rax, -0x440(%rbp)
jmp 0x15779
movq -0x440(%rbp), %rdi
movq 0x927e1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x448(%rbp)
jmp 0x15795
movq -0x448(%rbp), %rdi
leaq 0x76734(%rip), %rsi     # 0x8bed7
callq 0xa5d0
movq %rax, -0x450(%rbp)
jmp 0x157b1
movq -0x450(%rbp), %rdi
movq 0x927a9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x458(%rbp)
jmp 0x157cd
movq -0x458(%rbp), %rdi
leaq 0x76732(%rip), %rsi     # 0x8bf0d
callq 0xa5d0
movq %rax, -0x460(%rbp)
jmp 0x157e9
movq -0x460(%rbp), %rdi
movq 0x92771(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x468(%rbp)
jmp 0x15805
movq -0x468(%rbp), %rdi
leaq 0x76744(%rip), %rsi     # 0x8bf57
callq 0xa5d0
movq %rax, -0x470(%rbp)
jmp 0x15821
movq -0x470(%rbp), %rdi
movq 0x92739(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x478(%rbp)
jmp 0x1583d
movq -0x478(%rbp), %rdi
leaq 0x7674e(%rip), %rsi     # 0x8bf99
callq 0xa5d0
movq %rax, -0x480(%rbp)
jmp 0x15859
movq -0x480(%rbp), %rdi
movq 0x92701(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x488(%rbp)
jmp 0x15875
movq -0x488(%rbp), %rdi
leaq 0x7675a(%rip), %rsi     # 0x8bfdd
callq 0xa5d0
movq %rax, -0x490(%rbp)
jmp 0x15891
movq -0x490(%rbp), %rdi
movq 0x926c9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x498(%rbp)
jmp 0x158ad
movq -0x498(%rbp), %rdi
leaq 0x76760(%rip), %rsi     # 0x8c01b
callq 0xa5d0
movq %rax, -0x4a0(%rbp)
jmp 0x158c9
movq -0x4a0(%rbp), %rdi
movq 0x92691(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x4a8(%rbp)
jmp 0x158e5
movq -0x4a8(%rbp), %rdi
leaq 0x76770(%rip), %rsi     # 0x8c063
callq 0xa5d0
movq %rax, -0x4b0(%rbp)
jmp 0x15901
movq -0x4b0(%rbp), %rdi
movq 0x92659(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x4b8(%rbp)
jmp 0x1591d
movq -0x4b8(%rbp), %rdi
leaq 0x76789(%rip), %rsi     # 0x8c0b4
callq 0xa5d0
movq %rax, -0x4c0(%rbp)
jmp 0x15939
movq -0x4c0(%rbp), %rdi
movq 0x92621(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x4c8(%rbp)
jmp 0x15955
movq -0x4c8(%rbp), %rdi
leaq 0x7679c(%rip), %rsi     # 0x8c0ff
callq 0xa5d0
movq %rax, -0x4d0(%rbp)
jmp 0x15971
movq -0x4d0(%rbp), %rdi
movq 0x925e9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x4d8(%rbp)
jmp 0x1598d
movq -0x4d8(%rbp), %rdi
leaq 0x76769(%rip), %rsi     # 0x8c104
callq 0xa5d0
movq %rax, -0x4e0(%rbp)
jmp 0x159a9
movq -0x4e0(%rbp), %rdi
movq 0x925b1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x4e8(%rbp)
jmp 0x159c5
movq -0x4e8(%rbp), %rdi
leaq 0x7675f(%rip), %rsi     # 0x8c132
callq 0xa5d0
movq %rax, -0x4f0(%rbp)
jmp 0x159e1
movq -0x4f0(%rbp), %rdi
movq 0x92579(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x4f8(%rbp)
jmp 0x159fd
movq -0x4f8(%rbp), %rdi
leaq 0x76777(%rip), %rsi     # 0x8c182
callq 0xa5d0
movq %rax, -0x500(%rbp)
jmp 0x15a19
movq -0x500(%rbp), %rdi
movq 0x92541(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x508(%rbp)
jmp 0x15a35
movq -0x508(%rbp), %rdi
leaq 0x7678c(%rip), %rsi     # 0x8c1cf
callq 0xa5d0
movq %rax, -0x510(%rbp)
jmp 0x15a51
movq -0x510(%rbp), %rdi
movq 0x92509(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x518(%rbp)
jmp 0x15a6d
movq -0x518(%rbp), %rdi
leaq 0x76793(%rip), %rsi     # 0x8c20e
callq 0xa5d0
movq %rax, -0x520(%rbp)
jmp 0x15a89
movq -0x520(%rbp), %rdi
movq 0x924d1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x528(%rbp)
jmp 0x15aa5
movq -0x528(%rbp), %rdi
leaq 0x767ab(%rip), %rsi     # 0x8c25e
callq 0xa5d0
movq %rax, -0x530(%rbp)
jmp 0x15ac1
movq -0x530(%rbp), %rdi
movq 0x92499(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x538(%rbp)
jmp 0x15add
movq -0x538(%rbp), %rdi
leaq 0x76780(%rip), %rsi     # 0x8c26b
callq 0xa5d0
movq %rax, -0x540(%rbp)
jmp 0x15af9
movq -0x540(%rbp), %rdi
movq 0x92461(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x548(%rbp)
jmp 0x15b15
movq -0x548(%rbp), %rdi
leaq 0x76793(%rip), %rsi     # 0x8c2b6
callq 0xa5d0
movq %rax, -0x550(%rbp)
jmp 0x15b31
movq -0x550(%rbp), %rdi
movq 0x92429(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x558(%rbp)
jmp 0x15b4d
movq -0x558(%rbp), %rdi
leaq 0x767a3(%rip), %rsi     # 0x8c2fe
callq 0xa5d0
movq %rax, -0x560(%rbp)
jmp 0x15b69
movq -0x560(%rbp), %rdi
movq 0x923f1(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x568(%rbp)
jmp 0x15b85
movq -0x568(%rbp), %rdi
leaq 0x767ba(%rip), %rsi     # 0x8c34d
callq 0xa5d0
movq %rax, -0x570(%rbp)
jmp 0x15ba1
movq -0x570(%rbp), %rdi
movq 0x923b9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x578(%rbp)
jmp 0x15bbd
movq -0x578(%rbp), %rdi
leaq 0x767ca(%rip), %rsi     # 0x8c395
callq 0xa5d0
movq %rax, -0x580(%rbp)
jmp 0x15bd9
movq -0x580(%rbp), %rdi
movq 0x92381(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x588(%rbp)
jmp 0x15bf5
movq -0x588(%rbp), %rdi
leaq 0x76799(%rip), %rsi     # 0x8c39c
callq 0xa5d0
movq %rax, -0x590(%rbp)
jmp 0x15c11
movq -0x590(%rbp), %rdi
movq 0x92349(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x598(%rbp)
jmp 0x15c2d
movq -0x598(%rbp), %rdi
leaq 0x76797(%rip), %rsi     # 0x8c3d2
callq 0xa5d0
movq %rax, -0x5a0(%rbp)
jmp 0x15c49
movq -0x5a0(%rbp), %rdi
movq 0x92311(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x5a8(%rbp)
jmp 0x15c65
movq -0x5a8(%rbp), %rdi
leaq 0x76793(%rip), %rsi     # 0x8c406
callq 0xa5d0
movq %rax, -0x5b0(%rbp)
jmp 0x15c81
movq -0x5b0(%rbp), %rdi
movq 0x922d9(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x5b8(%rbp)
jmp 0x15c9d
movq -0x5b8(%rbp), %rdi
leaq 0x76793(%rip), %rsi     # 0x8c43e
callq 0xa5d0
movq %rax, -0x5c0(%rbp)
jmp 0x15cb9
movq -0x5c0(%rbp), %rdi
movq 0x922a1(%rip), %rsi     # 0xa7f68
callq 0xa640
jmp 0x15cce
leaq 0x9563b(%rip), %rdi     # 0xab310
callq 0xaa90
testb $0x1, %al
jne 0x15ce3
jmp 0x15d9f
movq 0x92306(%rip), %rdi     # 0xa7ff0
movq 0x92277(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x5c8(%rbp)
jmp 0x15cff
movq -0x5c8(%rbp), %rdi
leaq 0x7675f(%rip), %rsi     # 0x8c46c
callq 0xa5d0
movq %rax, -0x5d0(%rbp)
jmp 0x15d1b
movq -0x5d0(%rbp), %rdi
movq 0x9223f(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x5d8(%rbp)
jmp 0x15d37
movq -0x5d8(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0xa540
movq %rax, -0x5e0(%rbp)
jmp 0x15d50
movq -0x5e0(%rbp), %rdi
leaq 0x7671e(%rip), %rsi     # 0x8c47c
callq 0xa5d0
movq %rax, -0x5e8(%rbp)
jmp 0x15d6c
movq -0x5e8(%rbp), %rdi
movq 0x921ee(%rip), %rsi     # 0xa7f68
callq 0xa640
movq %rax, -0x5f0(%rbp)
jmp 0x15d88
movq -0x5f0(%rbp), %rdi
movq 0x921d2(%rip), %rsi     # 0xa7f68
callq 0xa640
jmp 0x15d9d
jmp 0x15d9f
leaq -0x28(%rbp), %rdi
callq 0xacd8
addq $0x5f0, %rsp            # imm = 0x5F0
popq %rbp
retq
leaq -0x28(%rbp), %rdi
callq 0xacd8
movq -0x38(%rbp), %rdi
callq 0xab60
nopw %cs:(%rax,%rax)