// File: /workspace/github_cpp_makefile_star2_O2/BenLangmead[P]bowtie/ebwt_search.cpp
// Function: bowtie
int bowtie(int argc, const char **argv) {
	try {
  #if (__cplusplus >= 201103L)
  #ifdef WITH_AFFINITY
    //CWILKS: adjust this depending on # of hyperthreads per core
    pinning_observer pinner( 2 /* the number of hyper threads on each core */ );
          pinner.observe( true );
  #endif
  #endif
		// Reset all global state, including getopt state
		opterr = optind = 1;
		resetOptions();
		for(int i = 0; i < argc; i++) {
			argstr += argv[i];
			if(i < argc-1) argstr += " ";
		}
		string query;   // read query string(s) from this file
		EList<string> queries;
		string outfile; // write query results to this file
		if(startVerbose) { cerr << "Entered main(): "; logTime(cerr, true); }
		parseOptions(argc, argv);
		argv0 = argv[0];
		if(showVersion) {
			cout << argv0 << " version " << BOWTIE_VERSION << endl;
			if(sizeof(void*) == 4) {
				cout << "32-bit" << endl;
			} else if(sizeof(void*) == 8) {
				cout << "64-bit" << endl;
			} else {
				cout << "Neither 32- nor 64-bit: sizeof(void*) = " << sizeof(void*) << endl;
			}
			cout << "Built on " << BUILD_HOST << endl;
			cout << BUILD_TIME << endl;
			cout << "Compiler: " << COMPILER_VERSION << endl;
			cout << "Options: " << COMPILER_OPTIONS << endl;
			cout << "Sizeof {int, long, long long, void*, size_t, off_t}: {"
				 << sizeof(int)
				 << ", " << sizeof(long) << ", " << sizeof(long long)
				 << ", " << sizeof(void *) << ", " << sizeof(size_t)
				 << ", " << sizeof(off_t) << "}" << endl;
			return 0;
		}
	#ifdef CHUD_PROFILING
		chudInitialize();
		chudAcquireRemoteAccess();
	#endif
		{
			Timer _t(cerr, "Overall time: ", timing);
			if(startVerbose) {
				cerr << "Parsing index and read arguments: "; logTime(cerr, true);
			}

			// Get index basename
			if (ebwtFile.empty()) {
				if(optind >= argc) {
					cerr << "No index, query, or output file specified!" << endl;
					printUsage(cerr);
					return 1;
				}
				std::cerr << "Setting the index via positional argument"
					  << " will be deprecated in a future release."
					  << " Please use -x option instead." << std::endl;
				ebwtFile = argv[optind++];
			}

			// Get query filename
			if(optind >= argc) {
				if(mates1.size() > 0 || mates12.size() > 0) {
					query = "";
				} else {
					cerr << "No query or output file specified!" << endl;
					printUsage(cerr);
					return 1;
				}
			} else if (mates1.size() == 0 && mates12.size() == 0) {
				query = argv[optind++];
				// Tokenize the list of query files
				tokenize(query, ",", queries);
				if(queries.size() < 1) {
					cerr << "Tokenized query file list was empty!" << endl;
					printUsage(cerr);
					return 1;
				}
			}

			// Get output filename
			if(optind < argc) {
				outfile = argv[optind++];
			}

			// Extra parametesr?
			if(optind < argc) {
				cerr << "Extra parameter(s) specified: ";
				for(int i = optind; i < argc; i++) {
					cerr << "\"" << argv[i] << "\"";
					if(i < argc-1) cerr << ", ";
				}
				cerr << endl;
				if(mates1.size() > 0) {
					cerr << "Note that if <mates> files are specified using -1/-2, a <singles> file cannot" << endl
						 << "also be specified.  Please run bowtie separately for mates and singles." << endl;
				}
				throw 1;
			}

			// Optionally summarize
			if(verbose) {
				cout << "Input ebwt file: \"" << ebwtFile << "\"" << endl;
				cout << "Query inputs (DNA, " << file_format_names[format] << "):" << endl;
				for(size_t i = 0; i < queries.size(); i++) {
					cout << "  " << queries[i] << endl;
				}
				cout << "Quality inputs:" << endl;
				for(size_t i = 0; i < qualities.size(); i++) {
					cout << "  " << qualities[i] << endl;
				}
				cout << "Output file: \"" << outfile << "\"" << endl;
				cout << "Local endianness: " << (currentlyBigEndian()? "big":"little") << endl;
				cout << "Sanity checking: " << (sanityCheck? "enabled":"disabled") << endl;
			#ifdef NDEBUG
				cout << "Assertions: disabled" << endl;
			#else
				cout << "Assertions: enabled" << endl;
			#endif
			}
			if(ipause) {
				cout << "Press key to continue..." << endl;
				getchar();
			}
			driver("DNA", ebwtFile, query, queries, qualities, outfile);
			CHUD_STOP();
		}
#ifdef CHUD_PROFILING
		chudReleaseRemoteAccess();
#endif
  #if (__cplusplus >= 201103L)
  #ifdef WITH_AFFINITY
    // Always disable observation before observers destruction
        //tracker.observe( false );
        pinner.observe( false );
  #endif
  #endif
		return 0;
	} catch(exception& e) {
		cerr << "Command: ";
		for(int i = 0; i < argc; i++) cerr << argv[i] << " ";
		cerr << endl;
		return 1;
	} catch(int e) {
		if(e != 0) {
			cerr << "Command: ";
			for(int i = 0; i < argc; i++) cerr << argv[i] << " ";
			cerr << endl;
		}
		return e;
	}
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xe8, %rsp
movq %rsi, 0x30(%rsp)
movq %rdi, 0x28(%rsp)
movq 0x54fb9(%rip), %rax     # 0x61fc0
pushq $0x1
popq %rcx
movl %ecx, (%rax)
andq $0x0, 0x57ff4(%rip)     # 0x65008
movq 0x54fad(%rip), %rax     # 0x61fc8
andq $0x0, 0x58005(%rip)     # 0x65028
movl %ecx, (%rax)
andq $0x0, 0x5801b(%rip)     # 0x65048
leaq 0x581b4(%rip), %rdi     # 0x651e8
leaq 0x3f53a(%rip), %rsi     # 0x4c575
callq 0x9a20
leaq 0x58009(%rip), %rdi     # 0x65050
leaq 0x3f527(%rip), %rsi     # 0x4c575
callq 0x9a20
xorl %eax, %eax
movb %al, 0x581f2(%rip)      # 0x6524d
movb %al, 0x581d7(%rip)      # 0x65238
movb %al, 0x58009(%rip)      # 0x65070
movb %al, 0x581e7(%rip)      # 0x65254
movl $0x3, 0x581d9(%rip)     # 0x65250
leaq 0x57ffa(%rip), %rdi     # 0x65078
leaq 0x3f4f0(%rip), %rsi     # 0x4c575
callq 0x9a20
andl $0x0, 0x581cb(%rip)     # 0x6525c
andl $0x0, 0x581b0(%rip)     # 0x65248
andl $0x0, 0x581b9(%rip)     # 0x65258
orl $-0x1, 0x581be(%rip)    # 0x65264
andl $0x0, 0x581bb(%rip)     # 0x65268
andl $0x0, 0x581b8(%rip)     # 0x6526c
andl $0x0, 0x581b5(%rip)     # 0x65270
orl $-0x1, 0x581b2(%rip)    # 0x65274
xorl %eax, %eax
orl $-0x1, 0x581ad(%rip)    # 0x65278
movb %al, 0x5817b(%rip)      # 0x6524c
andl $0x0, 0x581a4(%rip)     # 0x6527c
movb %al, 0x58182(%rip)      # 0x65260
movb %al, 0x5817d(%rip)      # 0x65261
movb %al, 0x58196(%rip)      # 0x65280
movb %al, 0x58191(%rip)      # 0x65281
movb %al, 0x5818c(%rip)      # 0x65282
movb $0x1, 0x58187(%rip)     # 0x65284
movl $0x1c, 0x58181(%rip)    # 0x65288
movl $0x2, 0x5817b(%rip)     # 0x6528c
movl $0x46, 0x58175(%rip)    # 0x65290
movl $0x7d, 0x5816f(%rip)    # 0x65294
movl $0x320, 0x58169(%rip)   # imm = 0x320
movl $0x1, 0x58163(%rip)     # 0x6529c
movb %al, 0x58161(%rip)      # 0x652a0
andl $0x0, 0x5815e(%rip)     # 0x652a4
leaq 0x57f4b(%rip), %rdi     # 0x65098
leaq 0x3f421(%rip), %rsi     # 0x4c575
callq 0x9a20
xorl %eax, %eax
movb %al, 0x58147(%rip)      # 0x652a8
movb $0x1, 0x580a8(%rip)     # 0x65210
movl $0x1, 0x5813a(%rip)     # 0x652ac
movb %al, 0x58138(%rip)      # 0x652b0
leaq 0x57f39(%rip), %rdi     # 0x650b8
leaq 0x3f3ef(%rip), %rsi     # 0x4c575
callq 0x9a20
leaq 0x57f46(%rip), %rdi     # 0x650d8
leaq 0x3f3dc(%rip), %rsi     # 0x4c575
callq 0x9a20
leaq 0x57f53(%rip), %rdi     # 0x650f8
leaq 0x3f3c9(%rip), %rsi     # 0x4c575
callq 0x9a20
orl $-0x1, 0x58100(%rip)    # 0x652b8
pushq $0x1
popq %rax
movl %eax, 0x580f3(%rip)     # 0x652b4
xorl %r12d, %r12d
movb %r12b, 0x580f1(%rip)    # 0x652bc
movb %r12b, 0x580eb(%rip)    # 0x652bd
andl $0x0, 0x580e7(%rip)     # 0x652c0
movl $0x10, 0x580e1(%rip)    # 0x652c4
movq $0x10, 0x580da(%rip) # 0x652c8
movb %r12b, 0x580db(%rip)    # 0x652d0
movb %r12b, 0x580d5(%rip)    # 0x652d1
movb %r12b, 0x580cf(%rip)    # 0x652d2
movb %r12b, 0x580c9(%rip)    # 0x652d3
movb %r12b, 0x580c3(%rip)    # 0x652d4
movb %r12b, 0x580bd(%rip)    # 0x652d5
movl %eax, 0x580ba(%rip)     # 0x652d8
andl $0x0, 0x580b7(%rip)     # 0x652dc
movl $0xfa, 0x580b1(%rip)    # 0x652e0
movb $0x1, %al
movb %al, 0x580ad(%rip)      # 0x652e4
movb %r12b, 0x580a7(%rip)    # 0x652e5
movb %r12b, 0x580a1(%rip)    # 0x652e6
movl $0x4, 0x58099(%rip)     # 0x652e8
movl $0x64, 0x58093(%rip)    # 0x652ec
movb %al, 0x58091(%rip)      # 0x652f0
movl $0x5, 0x5808b(%rip)     # 0x652f4
andl $0x0, 0x58088(%rip)     # 0x652f8
movb %r12b, 0x58085(%rip)    # 0x652fc
andl $0x0, 0x58082(%rip)     # 0x65300
movb %r12b, 0x5807f(%rip)    # 0x65304
movb %r12b, 0x58079(%rip)    # 0x65305
movb %al, 0x58074(%rip)      # 0x65306
movb %r12b, 0x5806e(%rip)    # 0x65307
movl $0x40, 0x58065(%rip)    # 0x65308
movl $0x100, 0x5805f(%rip)   # imm = 0x100
movb %r12b, 0x5805c(%rip)    # 0x65310
movb %al, 0x58057(%rip)      # 0x65311
movb %r12b, 0x58051(%rip)    # 0x65312
andq $0x0, 0x5804f(%rip)     # 0x65318
andq $0x0, 0x5804f(%rip)     # 0x65320
movb %r12b, 0x58050(%rip)    # 0x65328
movb %r12b, 0x5804a(%rip)    # 0x65329
movb %r12b, 0x58044(%rip)    # 0x6532a
movb %r12b, 0x5803e(%rip)    # 0x6532b
movb %r12b, 0x58038(%rip)    # 0x6532c
leaq 0x57e1d(%rip), %rdi     # 0x65118
leaq 0x3f273(%rip), %rsi     # 0x4c575
callq 0x9a20
leaq 0x57e2a(%rip), %rdi     # 0x65138
callq 0x177d0
movb %r12b, 0x58013(%rip)    # 0x6532d
andq $0x0, 0x57e56(%rip)     # 0x65178
movl $0xff, 0x58004(%rip)    # 0x65330
andq $0x0, 0x57e64(%rip)     # 0x65198
movb %r12b, 0x57ff9(%rip)    # 0x65334
andq $0x0, 0x57e75(%rip)     # 0x651b8
movb %r12b, 0x57e0e(%rip)    # 0x65158
andq $0x0, 0x57e76(%rip)     # 0x651c8
movq 0x57e67(%rip), %rax     # 0x651c0
movb %r12b, (%rax)
movb %r12b, 0x57e7d(%rip)    # 0x651e0
movb %r12b, 0x57e77(%rip)    # 0x651e1
movq 0x28(%rsp), %rcx
leal -0x1(%rcx), %eax
cltq
movq %rax, 0x60(%rsp)
testl %ecx, %ecx
movl $0x0, %r14d
cmovgl %ecx, %r14d
leaq 0x57e8c(%rip), %rbx     # 0x65218
leaq 0x3da75(%rip), %r15     # 0x4ae08
cmpq %r12, %r14
je 0xd3c0
movq 0x30(%rsp), %rax
movq (%rax,%r12,8), %rsi
movq %rbx, %rdi
callq 0x9a10
cmpq 0x60(%rsp), %r12
jge 0xd3bb
movq %rbx, %rdi
movq %r15, %rsi
callq 0x9a10
incq %r12
jmp 0xd393
leaq 0xd8(%rsp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
xorl %ecx, %ecx
movabsq $-0x100000000, %rbp     # imm = 0xFFFFFFFF00000000
movq %rbp, 0x88(%rsp)
andq $0x0, 0x90(%rsp)
movq $0x80, 0x98(%rsp)
andq $0x0, 0xa0(%rsp)
leaq 0xb8(%rsp), %rdx
movq %rdx, -0x10(%rdx)
andq $0x0, -0x8(%rdx)
movb %cl, (%rax)
movb %cl, (%rdx)
cmpb %cl, 0x57e1a(%rip)      # 0x65238
je 0xd461
movq 0x54bc9(%rip), %rdi     # 0x61ff0
leaq 0x3a7fc(%rip), %rsi     # 0x47c2a
callq 0x94e0
callq 0xcaaa
movb 0x57dfa(%rip), %al      # 0x65238
andl $0x0, 0x58(%rsp)
cmpb $0x1, %al
jne 0xd466
movq 0x54ba2(%rip), %rdi     # 0x61ff0
leaq 0x3adff(%rip), %rsi     # 0x48254
callq 0x94e0
callq 0xcaaa
jmp 0xd466
andl $0x0, 0x58(%rsp)
leaq 0x550d3(%rip), %r12     # 0x62540
leaq 0x39cbc(%rip), %r13     # 0x47130
movq 0x28(%rsp), %rdi
movq 0x30(%rsp), %rsi
leaq 0x3b4d7(%rip), %rdx     # 0x4895c
movq %r12, %rcx
leaq 0x58(%rsp), %r8
callq 0x9890
movl %eax, %ebx
leal -0x100(%rbx), %eax
cmpl $0x45, %eax
ja 0xd4e4
movslq (%r13,%rax,4), %rax
addq %r13, %rax
leaq 0x57d12(%rip), %rdi     # 0x651c0
jmpq *%rax
movq 0x54ac1(%rip), %rax     # 0x61f78
movq (%rax), %rsi
leaq 0x3b15f(%rip), %r15     # 0x48620
testq %rsi, %rsi
je 0xe768
cmpb $0x0, (%rsi)
je 0xe768
leaq 0x57b9e(%rip), %rdi     # 0x65078
callq 0x9a20
jmp 0xde61
leal -0x31(%rbx), %eax
cmpl $0x49, %eax
ja 0xd549
leaq 0x39b15(%rip), %rcx     # 0x47008
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x54a75(%rip), %rax     # 0x61f78
movq (%rax), %rsi
leaq 0x8(%rsp), %rdi
leaq 0x68(%rsp), %rdx
callq 0x15df2
leaq 0x3df23(%rip), %rsi     # 0x4b43f
leaq 0x38(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x15df2
leaq 0x57abe(%rip), %rdx     # 0x64ff0
leaq 0x8(%rsp), %rdi
leaq 0x38(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0xf44a
jmp 0xdc74
testl %ebx, %ebx
jne 0xde8e
movslq 0x58(%rsp), %rax
shlq $0x5, %rax
cmpq $0x0, 0x10(%rax,%r12)
jne 0xde61
jmp 0xe77f
movb $0x1, 0x57db6(%rip)     # 0x65328
jmp 0xde61
movb $0x1, 0x57d92(%rip)     # 0x65310
jmp 0xde61
xorl %eax, %eax
movb %al, 0x57cf5(%rip)      # 0x65280
movb %al, 0x57cf0(%rip)      # 0x65281
jmp 0xde61
movq 0x549db(%rip), %rax     # 0x61f78
movq (%rax), %rsi
leaq 0x8(%rsp), %rdi
leaq 0x68(%rsp), %rdx
callq 0x15df2
leaq 0x3de89(%rip), %rsi     # 0x4b43f
leaq 0x38(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x15df2
leaq 0x57a64(%rip), %rdx     # 0x65030
leaq 0x8(%rsp), %rdi
leaq 0x38(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0xf44a
leaq 0x38(%rsp), %rdi
callq 0x9a68
leaq 0x8(%rsp), %rdi
callq 0x9a68
movl $0x5, 0x57c54(%rip)     # 0x65250
jmp 0xde61
movb $0x1, 0x57cff(%rip)     # 0x65307
jmp 0xde61
movb $0x1, 0x57cdc(%rip)     # 0x652f0
jmp 0xde61
movb $0x1, 0x57ce5(%rip)     # 0x65305
jmp 0xde61
movb $0x1, 0x57cfd(%rip)     # 0x65329
jmp 0xde61
movq %rbp, 0x8(%rsp)
andq $0x0, 0x10(%rsp)
movq $0x80, 0x18(%rsp)
andq $0x0, 0x20(%rsp)
movq 0x54926(%rip), %rax     # 0x61f78
movq (%rax), %rsi
leaq 0x38(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x15df2
leaq 0x3ddd4(%rip), %rsi     # 0x4b43f
leaq 0x68(%rsp), %rdi
leaq 0x5f(%rsp), %rdx
callq 0x15df2
leaq 0x38(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x8(%rsp), %rdx
pushq $-0x1
popq %rcx
callq 0xf44a
leaq 0x68(%rsp), %rdi
callq 0x9a68
leaq 0x38(%rsp), %rdi
callq 0x9a68
xorl %r14d, %r14d
xorl %r15d, %r15d
cmpq 0x20(%rsp), %r15
jae 0xde82
movq 0x10(%rsp), %rax
movq (%rax,%r14), %rcx
leaq 0x3abea(%rip), %rdx     # 0x482b0
pushq $0x1
popq %rdi
movl $0x7fffffff, %esi       # imm = 0x7FFFFFFF
callq 0x12861
decl %eax
leaq 0x57a5c(%rip), %rdi     # 0x65138
movl %eax, %esi
callq 0x17930
incq %r15
addq $0x20, %r14
jmp 0xd6ab
leaq 0x3ae8f(%rip), %rsi     # 0x48582
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x57c07(%rip)     # 0x65308
jmp 0xde61
movb $0x1, 0x57bc3(%rip)     # 0x652d0
jmp 0xde61
movb $0x1, 0x57bed(%rip)     # 0x65306
jmp 0xde61
movb $0x1, 0x57bae(%rip)     # 0x652d3
jmp 0xde61
movb $0x1, 0x57ba4(%rip)     # 0x652d5
jmp 0xde61
movb $0x1, 0x57b95(%rip)     # 0x652d2
jmp 0xde61
movb $0x1, 0x57b74(%rip)     # 0x652bd
jmp 0xde61
movb $0x1, 0x57bd5(%rip)     # 0x6532a
jmp 0xde61
movb $0x1, %al
movb %al, 0x57b73(%rip)      # 0x652d5
movb %al, 0x57b54(%rip)      # 0x652bc
jmp 0xde61
movb $0x1, 0x579e4(%rip)     # 0x65158
jmp 0xde61
movb $0x1, 0x57b30(%rip)     # 0x652b0
jmp 0xde61
movq 0x547ec(%rip), %rax     # 0x61f78
movq (%rax), %rdi
callq 0x17965
movl %eax, 0x57b26(%rip)     # 0x652c0
jmp 0xde61
leaq 0x3ad45(%rip), %rsi     # 0x484eb
xorl %edi, %edi
callq 0x12839
movl %eax, 0x57ac5(%rip)     # 0x65278
jmp 0xde61
movb $0x1, 0x57a95(%rip)     # 0x65254
jmp 0xde61
movb $0x1, 0x57b0a(%rip)     # 0x652d5
movb $0x0, 0x57b3f(%rip)     # 0x65311
jmp 0xde61
movb $0x1, 0x57af6(%rip)     # 0x652d4
jmp 0xde61
leaq 0x3adf3(%rip), %rsi     # 0x485dd
xorl %edi, %edi
callq 0x12839
movl %eax, 0x57aa1(%rip)     # 0x65298
movl %eax, 0x57a97(%rip)     # 0x65294
jmp 0xde61
movb $0x1, 0x57a58(%rip)     # 0x65261
jmp 0xde61
movq 0x54763(%rip), %rax     # 0x61f78
movq (%rax), %rdi
leaq 0x3add8(%rip), %r15     # 0x485f7
testq %rdi, %rdi
je 0xe768
callq 0x17965
testl %eax, %eax
jle 0xe768
movq 0x5473c(%rip), %rax     # 0x61f78
movq (%rax), %rdi
callq 0x17965
movslq %eax, %rcx
movq %rcx, 0x57a7a(%rip)     # 0x652c8
movl %eax, 0x57a70(%rip)     # 0x652c4
jmp 0xde61
leaq 0x3aabf(%rip), %rsi     # 0x4831f
xorl %edi, %edi
callq 0x12839
movl %eax, 0x579ef(%rip)     # 0x6525c
jmp 0xde61
movb $0x1, 0x57a07(%rip)     # 0x65280
jmp 0xde61
movb $0x1, %al
movb %al, 0x57a5e(%rip)      # 0x652e4
jmp 0xd978
leaq 0x57866(%rip), %rdi     # 0x650f8
jmp 0xde52
movb $0x1, 0x577d2(%rip)     # 0x65070
jmp 0xde61
leaq 0x5780e(%rip), %rdi     # 0x650b8
jmp 0xde52
movb $0x1, 0x57a46(%rip)     # 0x652fc
jmp 0xde61
leaq 0x57816(%rip), %rdi     # 0x650d8
jmp 0xde52
movb $0x1, 0x5797f(%rip)     # 0x6524d
jmp 0xde61
movb $0x1, 0x5795e(%rip)     # 0x65238
jmp 0xde61
leaq 0x3a9ec(%rip), %rsi     # 0x482d2
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x579e4(%rip)     # 0x652d8
jmp 0xde61
leaq 0x3aa3d(%rip), %rsi     # 0x4833d
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x57956(%rip)     # 0x65264
jmp 0xde61
movb $0x1, 0x579b7(%rip)     # 0x652d1
jmp 0xde61
leaq 0x578c2(%rip), %rdi     # 0x651e8
jmp 0xde52
leaq 0x3ac72(%rip), %rsi     # 0x485a4
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x579cc(%rip)     # 0x6530c
jmp 0xde61
leaq 0x3aa47(%rip), %rsi     # 0x48393
xorl %edi, %edi
callq 0x12839
movl %eax, 0x5798f(%rip)     # 0x652e8
jmp 0xde61
movb $0x1, %al
movb %al, 0x5797e(%rip)      # 0x652e4
movb $0x0, 0x57978(%rip)     # 0x652e5
jmp 0xd97e
movb $0x0, 0x5796e(%rip)     # 0x652e4
movb $0x1, %al
movb %al, 0x57967(%rip)      # 0x652e5
movb %al, 0x57962(%rip)      # 0x652e6
jmp 0xde61
leaq 0x3ab37(%rip), %rsi     # 0x484c7
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x578d6(%rip)     # 0x65274
jmp 0xde61
leaq 0x3a9b5(%rip), %rsi     # 0x4835f
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x578fc(%rip)     # 0x652b4
jmp 0xde61
movb $0x1, 0x5794e(%rip)     # 0x65312
jmp 0xde61
movq 0x545a8(%rip), %rax     # 0x61f78
movq (%rax), %rsi
leaq 0x8(%rsp), %rdi
leaq 0x68(%rsp), %rdx
callq 0x15df2
leaq 0x3da56(%rip), %rsi     # 0x4b43f
leaq 0x38(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x15df2
leaq 0x577a1(%rip), %rdx     # 0x651a0
leaq 0x8(%rsp), %rdi
leaq 0x38(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0xf44a
jmp 0xdd10
leaq 0x3a990(%rip), %rsi     # 0x483ad
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x578c1(%rip)     # 0x652ec
jmp 0xde61
leaq 0x3aaf5(%rip), %rdi     # 0x4852c
callq 0x1284d
movl %eax, 0x5784a(%rip)     # 0x6528c
movb $0x1, 0x5783b(%rip)     # 0x65284
jmp 0xde61
movl $0x7, 0x577f8(%rip)     # 0x65250
jmp 0xde61
leaq 0x3a81a(%rip), %rsi     # 0x4827e
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x5786e(%rip)     # 0x652e0
jmp 0xde61
leaq 0x3a995(%rip), %rsi     # 0x48413
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x57810(%rip)     # 0x6529c
jmp 0xde61
movl $0x6, 0x577b5(%rip)     # 0x65250
jmp 0xde61
movb $0x1, 0x577da(%rip)     # 0x65281
jmp 0xde61
leaq 0x3a91d(%rip), %rsi     # 0x483d0
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x57833(%rip)     # 0x652f4
jmp 0xde61
movb $0x1, 0x57860(%rip)     # 0x6532d
leaq 0x3a8a5(%rip), %rsi     # 0x48379
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x577d6(%rip)     # 0x652b8
jmp 0xde61
movl $0x1, 0x5775f(%rip)     # 0x65250
jmp 0xde61
movl $0x4, 0x577ac(%rip)     # 0x652ac
jmp 0xde61
movq 0x5446c(%rip), %rax     # 0x61f78
movq (%rax), %rsi
leaq 0x8(%rsp), %rdi
leaq 0x68(%rsp), %rdx
callq 0x15df2
leaq 0x3d91a(%rip), %rsi     # 0x4b43f
leaq 0x38(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x15df2
leaq 0x574f5(%rip), %rdx     # 0x65030
leaq 0x8(%rsp), %rdi
leaq 0x38(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0xf44a
leaq 0x38(%rsp), %rdi
callq 0x9a68
leaq 0x8(%rsp), %rdi
callq 0x9a68
movl $0x4, 0x576e5(%rip)     # 0x65250
jmp 0xde61
leaq 0x3a87b(%rip), %rsi     # 0x483f2
pushq $0x1
popq %rdi
callq 0x12839
jmp 0xde61
leaq 0x3a9d3(%rip), %rsi     # 0x4855e
pushq $0x5
popq %rdi
callq 0x12839
movl %eax, 0x576ef(%rip)     # 0x65288
jmp 0xde61
movq 0x543d3(%rip), %rax     # 0x61f78
movq (%rax), %rsi
leaq 0x8(%rsp), %rdi
leaq 0x68(%rsp), %rdx
callq 0x15df2
leaq 0x3d881(%rip), %rsi     # 0x4b43f
leaq 0x38(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x15df2
leaq 0x5758c(%rip), %rdx     # 0x65160
leaq 0x8(%rsp), %rdi
leaq 0x38(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0xf44a
jmp 0xdd10
leaq 0x3a6fe(%rip), %rsi     # 0x482f0
movl $0xfff0bdc1, %edi       # imm = 0xFFF0BDC1
callq 0x12839
movl %eax, 0x576f6(%rip)     # 0x652f8
jmp 0xde61
movb $0x1, 0x576f6(%rip)     # 0x65304
jmp 0xde61
leaq 0x3a9ab(%rip), %rsi     # 0x485c5
xorl %edi, %edi
callq 0x12839
movl %eax, 0x57709(%rip)     # 0x65330
jmp 0xde61
movq 0x54345(%rip), %rax     # 0x61f78
movq (%rax), %rsi
leaq 0x8(%rsp), %rdi
leaq 0x68(%rsp), %rdx
callq 0x15df2
leaq 0x3d7f3(%rip), %rsi     # 0x4b43f
leaq 0x38(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x15df2
leaq 0x573ae(%rip), %rdx     # 0x65010
leaq 0x8(%rsp), %rdi
leaq 0x38(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0xf44a
leaq 0x38(%rsp), %rdi
callq 0x9a68
leaq 0x8(%rsp), %rdi
callq 0x9a68
jmp 0xde61
movl $0x2, 0x575b9(%rip)     # 0x65250
movq 0x542da(%rip), %rax     # 0x61f78
movq (%rax), %rdi
pushq $0x2c
popq %rsi
callq 0x177f1
movq %rax, 0x57668(%rip)     # 0x65318
movq %rdx, 0x57669(%rip)     # 0x65320
jmp 0xde61
movb $0x1, 0x5759d(%rip)     # 0x65260
jmp 0xde61
movq 0x542a9(%rip), %rax     # 0x61f78
movq (%rax), %rsi
leaq 0x8(%rsp), %rdi
leaq 0x68(%rsp), %rdx
callq 0x15df2
leaq 0x3d757(%rip), %rsi     # 0x4b43f
leaq 0x38(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x15df2
leaq 0x57482(%rip), %rdx     # 0x65180
leaq 0x8(%rsp), %rdi
leaq 0x38(%rsp), %rsi
pushq $-0x1
popq %rcx
callq 0xf44a
leaq 0x38(%rsp), %rdi
callq 0x9a68
leaq 0x8(%rsp), %rdi
callq 0x9a68
movb $0x1, 0x57557(%rip)     # 0x65282
jmp 0xde61
leaq 0x3a74c(%rip), %rsi     # 0x48483
xorl %edi, %edi
callq 0x12839
movl %eax, 0x57528(%rip)     # 0x6526c
jmp 0xde61
leaq 0x3a516(%rip), %rsi     # 0x48266
xorl %edi, %edi
callq 0x12839
movl %eax, 0x5757f(%rip)     # 0x652dc
jmp 0xde61
leaq 0x3a73c(%rip), %rsi     # 0x484a5
xorl %edi, %edi
callq 0x12839
movl %eax, 0x574f2(%rip)     # 0x65268
jmp 0xde61
leaq 0x3a78a(%rip), %rsi     # 0x4850c
pushq $0x1
popq %rdi
callq 0x12839
movl %eax, 0x57500(%rip)     # 0x65290
jmp 0xde61
movb $0x1, 0x57445(%rip)     # 0x651e1
jmp 0xde61
cmpq $0x0, 0x57377(%rip)     # 0x65120
je 0xddba
leaq 0x57366(%rip), %rdi     # 0x65118
pushq $0x9
popq %rsi
callq 0x9440
movq 0x541b7(%rip), %rax     # 0x61f78
movq (%rax), %rsi
leaq 0x5734d(%rip), %rdi     # 0x65118
callq 0x9a10
jmp 0xde61
movb $0x1, 0x5754f(%rip)     # 0x6532b
jmp 0xde61
movb $0x1, 0x57464(%rip)     # 0x6524c
jmp 0xde61
movb $0x1, 0x5753b(%rip)     # 0x6532c
jmp 0xde61
movb $0x0, 0x5748a(%rip)     # 0x65284
leaq 0x3a65a(%rip), %rdi     # 0x4845b
callq 0x1284d
movl %eax, 0x57470(%rip)     # 0x6527c
jmp 0xde61
movl $0x3, 0x57438(%rip)     # 0x65250
jmp 0xde61
movb $0x1, 0x573bf(%rip)     # 0x651e0
jmp 0xde61
movb $0x1, 0x5750a(%rip)     # 0x65334
jmp 0xde61
leaq 0x3a604(%rip), %rsi     # 0x48437
xorl %edi, %edi
callq 0x12839
movl %eax, 0x57464(%rip)     # 0x652a4
jmp 0xde61
movb $0x1, 0x57457(%rip)     # 0x652a0
jmp 0xde61
leaq 0x57246(%rip), %rdi     # 0x65098
movq 0x5411f(%rip), %rax     # 0x61f78
movq (%rax), %rsi
callq 0x9a20
cmpl $-0x1, %ebx
jne 0xd474
jmp 0xde97
leaq 0x3a425(%rip), %rsi     # 0x48298
xorl %edi, %edi
callq 0x12839
movl %eax, 0x57480(%rip)     # 0x65300
jmp 0xde61
leaq 0x8(%rsp), %rdi
callq 0x197f0
jmp 0xde61
cmpl $-0x1, %ebx
jne 0xe77f
cmpl $0x1, 0x573fe(%rip)     # 0x6529c
jne 0xdeb0
cmpb $0x0, 0x57401(%rip)     # 0x652a8
jne 0xdeb0
movb $0x0, 0x573f0(%rip)     # 0x652a0
cmpb $0x1, 0x573e9(%rip)     # 0x652a0
jne 0xdec6
cmpl $0x4, 0x573ec(%rip)     # 0x652ac
jne 0xe790
cmpb $0x1, 0x57394(%rip)     # 0x65261
jne 0xded9
movl $0x20, 0x5739b(%rip)    # 0x65274
cmpb $0x0, 0x573a4(%rip)     # 0x65284
jne 0xdef2
cmpl $0x3, 0x57393(%rip)     # 0x6527c
jne 0xdef2
movb $0x1, 0x573e3(%rip)     # 0x652d5
movq 0x5710f(%rip), %rax     # 0x65008
cmpq 0x57128(%rip), %rax     # 0x65028
jne 0xe7ba
cmpl $0x7, 0x57343(%rip)     # 0x65250
jne 0xdfb8
cmpb $0x1, 0x573e2(%rip)     # 0x652fc
jne 0xdf34
movl $0x7fffffff, %eax       # imm = 0x7FFFFFFF
movl %eax, 0x5736d(%rip)     # 0x65294
movl %eax, 0x5736b(%rip)     # 0x65298
orl $-0x1, 0x573b8(%rip)    # 0x652ec
cmpb $0x0, 0x5739a(%rip)     # 0x652d5
pushq $0x1
popq %rbp
jne 0xdf78
cmpb $0x1, 0x573e6(%rip)     # 0x6532d
jne 0xe05e
cmpb $0x0, 0x5711c(%rip)     # 0x65070
jne 0xdf71
movq 0x54093(%rip), %rdi     # 0x61ff0
leaq 0x3a859(%rip), %rsi     # 0x487bd
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movb $0x1, 0x5735d(%rip)     # 0x652d5
cmpb $0x0, 0x5733e(%rip)     # 0x652bd
je 0xe06b
cmpb $0x0, 0x572d4(%rip)     # 0x65260
jne 0xe06b
cmpl $0x1, 0x5731b(%rip)     # 0x652b4
jne 0xe06b
cmpl $-0x1, 0x57312(%rip)    # 0x652b8
jne 0xe06b
leaq 0x3a874(%rip), %rsi     # 0x48827
jmp 0xe845
xorl %ebp, %ebp
leaq 0x3a7ba(%rip), %r12     # 0x4877b
leaq 0x3a7cd(%rip), %r13     # 0x48795
movq %rax, %rcx
cmpq %rcx, %rbp
jae 0xdf13
movq %rbp, %r15
shlq $0x5, %r15
xorl %r14d, %r14d
xorl %ebx, %ebx
cmpq %rax, %rbx
jae 0xe04f
movq 0x5700c(%rip), %rdi     # 0x64ff8
addq %r15, %rdi
movq 0x57022(%rip), %rsi     # 0x65018
addq %r14, %rsi
callq 0x179ec
testb %al, %al
je 0xe03f
cmpb $0x0, 0x57067(%rip)     # 0x65070
jne 0xe03f
movq 0x53fde(%rip), %rdi     # 0x61ff0
movq %r12, %rsi
callq 0x94e0
movq 0x56fd7(%rip), %rsi     # 0x64ff8
addq %r15, %rsi
movq %rax, %rdi
callq 0x9460
movq %rax, %rdi
movq %r13, %rsi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
incq %rbx
movq 0x56fdf(%rip), %rax     # 0x65028
addq $0x20, %r14
jmp 0xdfe0
incq %rbp
movq 0x56faf(%rip), %rcx     # 0x65008
jmp 0xdfcb
cmpb $0x0, 0x57258(%rip)     # 0x652bd
jne 0xe83e
movl 0x571f3(%rip), %ecx     # 0x65264
movl 0x57289(%rip), %eax     # 0x65300
addl %ecx, %eax
cmpl %ecx, %eax
jbe 0xe083
movl %eax, 0x571e1(%rip)     # 0x65264
cmpb $0x1, 0x57248(%rip)     # 0x652d2
jne 0xe0c0
cmpb $0x1, 0x57240(%rip)     # 0x652d3
jne 0xe0c0
cmpb $0x0, 0x56fd4(%rip)     # 0x65070
jne 0xe0c0
movq 0x53f4b(%rip), %rdi     # 0x61ff0
leaq 0x3a7c3(%rip), %rsi     # 0x4886f
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movb $0x0, 0x57213(%rip)     # 0x652d3
cmpb $0x0, 0x5721f(%rip)     # 0x652e6
jne 0xe0d7
movb $0x1, 0x57214(%rip)     # 0x652e4
movb $0x0, 0x5720e(%rip)     # 0x652e5
cmpl $0x1, 0x571ce(%rip)     # 0x652ac
je 0xe134
cmpl $0x0, 0x57051(%rip)     # 0x65138
je 0xe134
cmpb $0x0, 0x56f80(%rip)     # 0x65070
jne 0xe134
movq 0x53ef7(%rip), %rdi     # 0x61ff0
leaq 0x3a792(%rip), %rsi     # 0x48892
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x53edc(%rip), %rdi     # 0x61ff0
leaq 0x3a7b8(%rip), %rsi     # 0x488d3
callq 0x94e0
movq %rax, %rdi
callq 0x9210
leaq 0x57009(%rip), %rdi     # 0x65138
callq 0x177d0
movl 0x5716a(%rip), %eax     # 0x652a4
cmpl 0x5715c(%rip), %eax     # 0x6529c
setg 0x57161(%rip)           # 0x652a8
jle 0xe157
cmpq $0x0, 0x56f4f(%rip)     # 0x650a0
je 0xe825
movq 0x30(%rsp), %rax
movq (%rax), %rsi
movq %rsi, 0x570da(%rip)     # 0x65240
cmpl $0x0, 0x570db(%rip)     # 0x65248
je 0xe317
movq 0x53e36(%rip), %rdi     # 0x61fb0
callq 0x94e0
leaq 0x39ab5(%rip), %rsi     # 0x47c3b
movq %rax, %rdi
callq 0x94e0
leaq 0x39ab0(%rip), %rsi     # 0x47c45
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x53e04(%rip), %rdi     # 0x61fb0
leaq 0x39a98(%rip), %rsi     # 0x47c4b
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x53de9(%rip), %rdi     # 0x61fb0
leaq 0x39a84(%rip), %rsi     # 0x47c52
callq 0x94e0
leaq 0x39a82(%rip), %rsi     # 0x47c5c
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x53dbf(%rip), %rdi     # 0x61fb0
leaq 0x39a71(%rip), %rsi     # 0x47c69
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x53da4(%rip), %rdi     # 0x61fb0
leaq 0x39a6a(%rip), %rsi     # 0x47c7d
callq 0x94e0
leaq 0x39a69(%rip), %rsi     # 0x47c88
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x53d7a(%rip), %rdi     # 0x61fb0
leaq 0x39aa7(%rip), %rsi     # 0x47ce4
callq 0x94e0
leaq 0x39aa5(%rip), %rsi     # 0x47cee
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x53d50(%rip), %rdi     # 0x61fb0
leaq 0x39ac3(%rip), %rsi     # 0x47d2a
callq 0x94e0
pushq $0x4
popq %rsi
movq %rax, %rdi
callq 0x9310
leaq 0x39cd3(%rip), %rsi     # 0x47f51
movq %rax, %rdi
callq 0x94e0
pushq $0x8
popq %rsi
movq %rax, %rdi
callq 0x9310
leaq 0x39cb9(%rip), %rsi     # 0x47f51
movq %rax, %rdi
callq 0x94e0
pushq $0x8
popq %rsi
movq %rax, %rdi
callq 0x9310
leaq 0x39c9f(%rip), %rsi     # 0x47f51
movq %rax, %rdi
callq 0x94e0
pushq $0x8
popq %rsi
movq %rax, %rdi
callq 0x9310
leaq 0x39c85(%rip), %rsi     # 0x47f51
movq %rax, %rdi
callq 0x94e0
pushq $0x8
popq %rsi
movq %rax, %rdi
callq 0x9310
leaq 0x39c6b(%rip), %rsi     # 0x47f51
movq %rax, %rdi
callq 0x94e0
pushq $0x8
popq %rsi
movq %rax, %rdi
callq 0x9310
leaq 0x391c8(%rip), %rsi     # 0x474c8
movq %rax, %rdi
callq 0x94e0
xorl %ebp, %ebp
movq %rax, %rdi
callq 0x9210
jmp 0xe72d
movb 0x56f2f(%rip), %bl      # 0x6524c
xorl %edi, %edi
callq 0x9490
movq %rax, 0x8(%rsp)
movq 0x53cc0(%rip), %rax     # 0x61ff0
movq %rax, 0x10(%rsp)
leaq 0x39a25(%rip), %rax     # 0x47d61
movq %rax, 0x18(%rsp)
movb %bl, 0x20(%rsp)
cmpb $0x1, 0x56eec(%rip)     # 0x65238
movq 0x53c6d(%rip), %rbx     # 0x61fc0
jne 0xe36d
movq 0x53c94(%rip), %rdi     # 0x61ff0
leaq 0x39a0d(%rip), %rsi     # 0x47d70
callq 0x94e0
callq 0xcaaa
cmpq $0x0, 0x56e7b(%rip)     # 0x651f0
jne 0xe3da
movq 0x28(%rsp), %rax
cmpl %eax, (%rbx)
jge 0xe6fc
movq 0x53c65(%rip), %rdi     # 0x61ff0
leaq 0x39a2c(%rip), %rsi     # 0x47dbe
callq 0x94e0
leaq 0x39a4a(%rip), %rsi     # 0x47de8
movq %rax, %rdi
callq 0x94e0
leaq 0x39a64(%rip), %rsi     # 0x47e11
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movslq (%rbx), %rax
leal 0x1(%rax), %ecx
movl %ecx, (%rbx)
movq 0x30(%rsp), %rcx
movq (%rcx,%rax,8), %rsi
leaq 0x56e13(%rip), %rdi     # 0x651e8
callq 0x9a20
movslq (%rbx), %rax
movq 0x56c64(%rip), %rcx     # 0x65048
orq 0x56c1d(%rip), %rcx     # 0x65008
sete %cl
cmpl 0x28(%rsp), %eax
jge 0xe46b
testb %cl, %cl
je 0xe48f
leal 0x1(%rax), %ecx
movl %ecx, (%rbx)
movq 0x30(%rsp), %rcx
movq (%rcx,%rax,8), %rsi
leaq 0xc8(%rsp), %rdi
callq 0x9a20
leaq 0x3d021(%rip), %rsi     # 0x4b43f
leaq 0x38(%rsp), %rdi
leaq 0x68(%rsp), %rdx
callq 0x15df2
leaq 0xc8(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x88(%rsp), %rdx
pushq $-0x1
popq %rcx
callq 0xf44a
leaq 0x38(%rsp), %rdi
callq 0x9a68
cmpq $0x0, 0xa0(%rsp)
jne 0xe48f
leaq 0x399ed(%rip), %rsi     # 0x47e53
jmp 0xe703
testb %cl, %cl
je 0xe47b
leaq 0x399ba(%rip), %rsi     # 0x47e30
jmp 0xe703
leaq 0x3e0f3(%rip), %rsi     # 0x4c575
leaq 0xc8(%rsp), %rdi
callq 0x9a20
movl (%rbx), %eax
cmpl 0x28(%rsp), %eax
jge 0xe4b6
movslq %eax, %rcx
incl %eax
movl %eax, (%rbx)
movq 0x30(%rsp), %rax
movq (%rax,%rcx,8), %rsi
leaq 0xa8(%rsp), %rdi
callq 0x9a20
movl (%rbx), %eax
cmpl 0x28(%rsp), %eax
jl 0xe877
cmpb $0x1, 0x56d86(%rip)     # 0x6524d
jne 0xe6ba
movq 0x53adc(%rip), %rdi     # 0x61fb0
leaq 0x39a52(%rip), %rsi     # 0x47f2d
callq 0x94e0
leaq 0x56d01(%rip), %rsi     # 0x651e8
movq %rax, %rdi
callq 0x9460
leaq 0x3cb62(%rip), %rsi     # 0x4b058
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x53aa3(%rip), %rdi     # 0x61fb0
leaq 0x39a2c(%rip), %rsi     # 0x47f40
callq 0x94e0
movl 0x56d31(%rip), %ecx     # 0x65250
shlq $0x5, %rcx
leaq 0x56926(%rip), %rsi     # 0x64e50
addq %rcx, %rsi
movq %rax, %rdi
callq 0x9460
leaq 0x39a18(%rip), %rsi     # 0x47f54
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
xorl %r14d, %r14d
movq 0x53a5a(%rip), %rbx     # 0x61fb0
leaq 0x3c8aa(%rip), %r12     # 0x4ae07
xorl %r15d, %r15d
cmpq 0xa0(%rsp), %r15
jae 0xe599
movq %rbx, %rdi
movq %r12, %rsi
callq 0x94e0
movq 0x90(%rsp), %rsi
addq %r14, %rsi
movq %rax, %rdi
callq 0x9460
movq %rax, %rdi
callq 0x9210
incq %r15
addq $0x20, %r14
jmp 0xe560
movq 0x53a10(%rip), %rdi     # 0x61fb0
leaq 0x399b0(%rip), %rsi     # 0x47f57
callq 0x94e0
movq %rax, %rdi
callq 0x9210
xorl %r14d, %r14d
movq 0x539f2(%rip), %rbx     # 0x61fb0
leaq 0x3c842(%rip), %r12     # 0x4ae07
xorl %r15d, %r15d
cmpq 0x56ba9(%rip), %r15     # 0x65178
jae 0xe5ff
movq %rbx, %rdi
movq %r12, %rsi
callq 0x94e0
movq 0x56b85(%rip), %rsi     # 0x65168
addq %r14, %rsi
movq %rax, %rdi
callq 0x9460
movq %rax, %rdi
callq 0x9210
incq %r15
addq $0x20, %r14
jmp 0xe5c8
movq 0x539aa(%rip), %rdi     # 0x61fb0
leaq 0x3995a(%rip), %rsi     # 0x47f67
callq 0x94e0
leaq 0xa8(%rsp), %rsi
movq %rax, %rdi
callq 0x9460
leaq 0x3ca2f(%rip), %rsi     # 0x4b058
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x53970(%rip), %rdi     # 0x61fb0
leaq 0x3992f(%rip), %rsi     # 0x47f76
callq 0x94e0
leaq 0x39936(%rip), %rsi     # 0x47f89
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x53946(%rip), %rdi     # 0x61fb0
leaq 0x3991f(%rip), %rsi     # 0x47f90
callq 0x94e0
leaq 0x39925(%rip), %rcx     # 0x47fa2
leaq 0x39932(%rip), %rsi     # 0x47fb6
cmpb $0x0, 0x56bc9(%rip)     # 0x65254
cmovneq %rcx, %rsi
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x5390a(%rip), %rdi     # 0x61fb0
leaq 0x398fd(%rip), %rsi     # 0x47faa
callq 0x94e0
movq %rax, %rdi
callq 0x9210
cmpl $0x0, 0x56b97(%rip)     # 0x65258
je 0xe6e3
movq 0x538e6(%rip), %rdi     # 0x61fb0
leaq 0x398ee(%rip), %rsi     # 0x47fbf
callq 0x94e0
movq %rax, %rdi
callq 0x9210
callq 0x9690
xorl %ebp, %ebp
leaq 0x88(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0xf515
jmp 0xe723
leaq 0x39690(%rip), %rsi     # 0x47d93
movq 0x538e6(%rip), %rdi     # 0x61ff0
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x538d2(%rip), %rdi     # 0x61ff0
callq 0xeb7e
leaq 0x8(%rsp), %rdi
callq 0x174a8
leaq 0xa8(%rsp), %rdi
callq 0x9a68
leaq 0x88(%rsp), %rdi
callq 0x197f0
leaq 0xc8(%rsp), %rdi
callq 0x9a68
movl %ebp, %eax
addq $0xe8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x53881(%rip), %rdi     # 0x61ff0
movq %r15, %rsi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq 0x5386a(%rip), %rdi     # 0x61ff0
callq 0xeb7e
jmp 0xe859
movq 0x53859(%rip), %rdi     # 0x61ff0
leaq 0x39eaa(%rip), %rsi     # 0x48648
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq %rax, %rdi
leaq 0x39ecc(%rip), %rsi     # 0x48681
jmp 0xe84c
movq 0x5382f(%rip), %rdi     # 0x61ff0
leaq 0x39eff(%rip), %rsi     # 0x486c7
callq 0x94e0
movq 0x56834(%rip), %rsi     # 0x65008
movq %rax, %rdi
callq 0x9310
leaq 0x39eec(%rip), %rsi     # 0x486cf
movq %rax, %rdi
callq 0x94e0
movq 0x56836(%rip), %rsi     # 0x65028
movq %rax, %rdi
callq 0x9310
movq %rax, %rdi
callq 0x9210
leaq 0x39ef9(%rip), %rsi     # 0x48702
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
movq %rax, %rdi
leaq 0x39f2c(%rip), %rsi     # 0x4874f
jmp 0xe84c
leaq 0x3a0ea(%rip), %rsi     # 0x48916
jmp 0xe845
xorl %ebx, %ebx
movq 0x53779(%rip), %rdi     # 0x61fb0
callq 0xeb7e
jmp 0xe85c
leaq 0x39fbc(%rip), %rsi     # 0x48801
movq 0x537a4(%rip), %rdi     # 0x61ff0
callq 0x94e0
movq %rax, %rdi
callq 0x9210
pushq $0x1
popq %rbx
pushq $0x4
popq %rdi
callq 0x9220
movl %ebx, (%rax)
movq 0x536eb(%rip), %rsi     # 0x61f58
movq %rax, %rdi
xorl %edx, %edx
callq 0x9910
movq 0x53772(%rip), %rdi     # 0x61ff0
leaq 0x395f3(%rip), %rsi     # 0x47e78
callq 0x94e0
movslq (%rbx), %r14
movslq 0x28(%rsp), %r15
movq 0x53757(%rip), %rbx     # 0x61ff0
leaq 0x3c7b8(%rip), %r12     # 0x4b058
leaq 0x396aa(%rip), %r13     # 0x47f51
cmpq %r15, %r14
jge 0xe8ea
movq %rbx, %rdi
movq %r12, %rsi
callq 0x94e0
movq 0x30(%rsp), %rcx
movq (%rcx,%r14,8), %rsi
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
movq %r12, %rsi
callq 0x94e0
cmpq 0x60(%rsp), %r14
jge 0xe8e5
movq %rbx, %rdi
movq %r13, %rsi
callq 0x94e0
incq %r14
jmp 0xe8a7
movq 0x536ff(%rip), %rdi     # 0x61ff0
callq 0x9210
cmpq $0x0, 0x5670a(%rip)     # 0x65008
jne 0xe91f
pushq $0x4
popq %rdi
callq 0x9220
movl $0x1, (%rax)
movq 0x53643(%rip), %rsi     # 0x61f58
movq %rax, %rdi
xorl %edx, %edx
callq 0x9910
movq 0x536ca(%rip), %rdi     # 0x61ff0
leaq 0x3956a(%rip), %rsi     # 0x47e97
callq 0x94e0
movq %rax, %rdi
callq 0x9210
leaq 0x395a4(%rip), %rsi     # 0x47ee5
movq %rax, %rdi
callq 0x94e0
movq %rax, %rdi
callq 0x9210
jmp 0xe900
movq %rdx, %r12
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x9a68
jmp 0xe9fa
jmp 0xe9f4
jmp 0xe9f4
jmp 0xe9c8
jmp 0xe9da
jmp 0xea24
jmp 0xe9c8
jmp 0xe9da
jmp 0xea24
jmp 0xe9c8
jmp 0xe9da
jmp 0xea24
jmp 0xe9c8
jmp 0xe9da
jmp 0xea24
movq %rdx, %r12
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
callq 0x9a68
jmp 0xe9ae
movq %rdx, %r12
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x9a68
jmp 0xea0e
jmp 0xea08
jmp 0xe9c8
jmp 0xe9da
jmp 0xea24
jmp 0xe9c8
jmp 0xe9da
jmp 0xea24
movq %rdx, %r12
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x9a68
jmp 0xe9e0
movq %rdx, %r12
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x9a68
jmp 0xea2a
jmp 0xea24
jmp 0xe9f4
jmp 0xea1c
jmp 0xe9f4
movq %rdx, %r12
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x174a8
jmp 0xea2a
jmp 0xea24
movq %rdx, %r12
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x197f0
jmp 0xea2a
jmp 0xea24
movq %rdx, %r12
movq %rax, %rbx
jmp 0xea51
movq %rdx, %r12
movq %rax, %rbx
leaq 0xa8(%rsp), %rdi
callq 0x9a68
leaq 0x88(%rsp), %rdi
callq 0x197f0
leaq 0xc8(%rsp), %rdi
callq 0x9a68
cmpl $0x2, %r12d
jne 0xeab9
movq %rbx, %rdi
callq 0x91a0
movq 0x5358a(%rip), %rdi     # 0x61ff0
leaq 0x3956b(%rip), %rsi     # 0x47fd8
callq 0x94e0
xorl %r14d, %r14d
movq 0x28(%rsp), %r12
testl %r12d, %r12d
cmovlel %r14d, %r12d
movq 0x53568(%rip), %rbx     # 0x61ff0
leaq 0x3c379(%rip), %r15     # 0x4ae08
cmpq %r14, %r12
je 0xeb29
movq 0x30(%rsp), %rax
movq (%rax,%r14,8), %rsi
movq %rbx, %rdi
callq 0x94e0
movq %rax, %rdi
movq %r15, %rsi
callq 0x94e0
incq %r14
jmp 0xea8f
cmpl $0x1, %r12d
jne 0xeb6e
movq %rbx, %rdi
callq 0x91a0
movl (%rax), %eax
movl %eax, %ebp
testl %eax, %eax
je 0xeb4e
movq 0x53516(%rip), %rdi     # 0x61ff0
leaq 0x394f7(%rip), %rsi     # 0x47fd8
callq 0x94e0
xorl %r14d, %r14d
movq 0x28(%rsp), %r12
testl %r12d, %r12d
cmovlel %r14d, %r12d
movq 0x534f4(%rip), %rbx     # 0x61ff0
leaq 0x3c305(%rip), %r15     # 0x4ae08
cmpq %r14, %r12
je 0xeb42
movq 0x30(%rsp), %rax
movq (%rax,%r14,8), %rsi
movq %rbx, %rdi
callq 0x94e0
movq %rax, %rdi
movq %r15, %rsi
callq 0x94e0
incq %r14
jmp 0xeb03
movq 0x534c0(%rip), %rdi     # 0x61ff0
callq 0x9210
callq 0x9860
pushq $0x1
popq %rax
jmp 0xe756
movq 0x534a7(%rip), %rdi     # 0x61ff0
callq 0x9210
callq 0x9860
jmp 0xe754
jmp 0xeb5c
jmp 0xeb66
movq %rax, %rbx
callq 0x9860
jmp 0xeb6e
movq %rax, %rbx
callq 0x9860
movq %rbx, %rdi
callq 0x9950
movq %rax, %rdi
callq 0x15e2d