// File: /workspace/github_cpp_makefile_star2_O2/tewalds[P]morat/gomoku/gtpagent.cpp
// Function: Morat::Gomoku::GTP::gtp_mcts_params(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>)
GTPResponse GTP::gtp_mcts_params(vecstr args){
	AgentMCTS * mcts =  dynamic_cast<AgentMCTS *>(agent);

	if(args.size() == 0)
		return GTPResponse(true, string("\n") +
			"Set player parameters, eg: player_params -e 1 -f 0 -t 2 -o 1 -p 0\n" +
			"Processing:\n" +
#ifndef SINGLE_THREAD
			"  -t --threads     Number of MCTS threads                            [" + to_str(mcts->numthreads) + "]\n" +
#endif
			"  -o --ponder      Continue to ponder during the opponents time      [" + to_str(mcts->ponder) + "]\n" +
			"  -M --maxmem      Max memory in Mb to use for the tree              [" + to_str(mcts->maxmem/(1024*1024)) + "]\n" +
			"     --profile     Output the time used by each phase of MCTS        [" + to_str(mcts->profile) + "]\n" +
			"Final move selection:\n" +
			"  -E --msexplore   Lower bound constant in final move selection      [" + to_str(mcts->msexplore) + "]\n" +
			"  -F --msrave      Rave factor, 0 for pure exp, -1 # sims, -2 # wins [" + to_str(mcts->msrave) + "]\n" +
			"Tree traversal:\n" +
			"  -e --explore     Exploration rate for UCT                          [" + to_str(mcts->explore) + "]\n" +
			"  -A --parexplore  Multiply the explore rate by parents experience   [" + to_str(mcts->parentexplore) + "]\n" +
			"  -f --ravefactor  The rave factor: alpha = rf/(rf + visits)         [" + to_str(mcts->ravefactor) + "]\n" +
			"  -d --decrrave    Decrease the rave factor over time: rf += d*empty [" + to_str(mcts->decrrave) + "]\n" +
			"  -a --knowledge   Use knowledge: 0.01*know/sqrt(visits+1)           [" + to_str(mcts->knowledge) + "]\n" +
			"  -r --userave     Use rave with this probability [0-1]              [" + to_str(mcts->userave) + "]\n" +
			"  -X --useexplore  Use exploration with this probability [0-1]       [" + to_str(mcts->useexplore) + "]\n" +
			"  -u --fpurgency   Value to assign to an unplayed move               [" + to_str(mcts->fpurgency) + "]\n" +
			"  -O --rollouts    Number of rollouts to run per simulation          [" + to_str(mcts->rollouts) + "]\n" +
			"  -I --dynwiden    Dynamic widening, consider log_wid(exp) children  [" + to_str(mcts->dynwiden) + "]\n" +
			"Tree building:\n" +
			"  -s --shortrave   Only use moves from short rollouts for rave       [" + to_str(mcts->shortrave) + "]\n" +
			"  -k --keeptree    Keep the tree from the previous move              [" + to_str(mcts->keeptree) + "]\n" +
			"  -m --minimax     Backup the minimax proof in the UCT tree          [" + to_str(mcts->minimax) + "]\n" +
			"  -x --visitexpand Number of visits before expanding a node          [" + to_str(mcts->visitexpand) + "]\n" +
			"     --gcsolved    Garbage collect solved nodes with fewer sims than [" + to_str(mcts->gcsolved) + "]\n" +
			"  -L --longestloss For known losses take longest over hardest solve  [" + to_str(mcts->longestloss) + "]\n"+
			"Node initialization knowledge, Give a bonus:\n" +
			"  -l --localreply  based on the distance to the previous move        [" + to_str(mcts->localreply) + "]\n" +
			"  -y --locality    to stones near other stones of the same color     [" + to_str(mcts->locality) + "]\n" +
			"Rollout policy:\n" +
			"  -h --weightrand  Weight the moves according to computed gammas     [" + to_str(mcts->weightedrandom) + "]\n" +
			"  -g --goodreply   Reuse the last good reply (1), remove losses (2)  [" + to_str(mcts->lastgoodreply) + "]\n"
			);

	string errs;
	for(unsigned int i = 0; i < args.size(); i++) {
		string arg = args[i];

		if((arg == "-t" || arg == "--threads") && i+1 < args.size()){
			mcts->pool.pause();
			mcts->numthreads = from_str<int>(args[++i]);
			mcts->pool.set_num_threads(mcts->numthreads);
			if(mcts->ponder)
				mcts->pool.resume();
		}else if((arg == "-o" || arg == "--ponder") && i+1 < args.size()){
			mcts->set_ponder(from_str<bool>(args[++i]));
		}else if((arg == "--profile") && i+1 < args.size()){
			mcts->profile = from_str<bool>(args[++i]);
		}else if((arg == "-M" || arg == "--maxmem") && i+1 < args.size()){
			mcts->maxmem = from_str<uint64_t>(args[++i])*1024*1024;
		}else if((arg == "-E" || arg == "--msexplore") && i+1 < args.size()){
			mcts->msexplore = from_str<float>(args[++i]);
		}else if((arg == "-F" || arg == "--msrave") && i+1 < args.size()){
			mcts->msrave = from_str<float>(args[++i]);
		}else if((arg == "-e" || arg == "--explore") && i+1 < args.size()){
			mcts->explore = from_str<float>(args[++i]);
		}else if((arg == "-A" || arg == "--parexplore") && i+1 < args.size()){
			mcts->parentexplore = from_str<bool>(args[++i]);
		}else if((arg == "-f" || arg == "--ravefactor") && i+1 < args.size()){
			mcts->ravefactor = from_str<float>(args[++i]);
		}else if((arg == "-d" || arg == "--decrrave") && i+1 < args.size()){
			mcts->decrrave = from_str<float>(args[++i]);
		}else if((arg == "-a" || arg == "--knowledge") && i+1 < args.size()){
			mcts->knowledge = from_str<bool>(args[++i]);
		}else if((arg == "-s" || arg == "--shortrave") && i+1 < args.size()){
			mcts->shortrave = from_str<bool>(args[++i]);
		}else if((arg == "-k" || arg == "--keeptree") && i+1 < args.size()){
			mcts->keeptree = from_str<bool>(args[++i]);
		}else if((arg == "-m" || arg == "--minimax") && i+1 < args.size()){
			mcts->minimax = from_str<int>(args[++i]);
		}else if((arg == "-L" || arg == "--longestloss") && i+1 < args.size()){
			mcts->longestloss = from_str<bool>(args[++i]);
		}else if((               arg == "--gcsolved") && i+1 < args.size()){
			mcts->gcsolved = from_str<uint>(args[++i]);
		}else if((arg == "-r" || arg == "--userave") && i+1 < args.size()){
			mcts->userave = from_str<float>(args[++i]);
		}else if((arg == "-X" || arg == "--useexplore") && i+1 < args.size()){
			mcts->useexplore = from_str<float>(args[++i]);
		}else if((arg == "-u" || arg == "--fpurgency") && i+1 < args.size()){
			mcts->fpurgency = from_str<float>(args[++i]);
		}else if((arg == "-O" || arg == "--rollouts") && i+1 < args.size()){
			mcts->rollouts = from_str<int>(args[++i]);
			if(mcts->gclimit < mcts->rollouts*5)
				mcts->gclimit = mcts->rollouts*5;
		}else if((arg == "-I" || arg == "--dynwiden") && i+1 < args.size()){
			mcts->dynwiden = from_str<float>(args[++i]);
			mcts->logdynwiden = std::log(mcts->dynwiden);
		}else if((arg == "-x" || arg == "--visitexpand") && i+1 < args.size()){
			mcts->visitexpand = from_str<uint>(args[++i]);
		}else if((arg == "-l" || arg == "--localreply") && i+1 < args.size()){
			mcts->localreply = from_str<int>(args[++i]);
		}else if((arg == "-y" || arg == "--locality") && i+1 < args.size()){
			mcts->locality = from_str<int>(args[++i]);
		}else if((arg == "-h" || arg == "--weightrand") && i+1 < args.size()){
			mcts->weightedrandom = from_str<int>(args[++i]);
		}else if((arg == "-g" || arg == "--goodreply") && i+1 < args.size()){
			mcts->lastgoodreply = from_str<int>(args[++i]);
		}else{
			return GTPResponse(false, "Missing or unknown parameter");
		}
	}
	return GTPResponse(true, errs);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xe58, %rsp            # imm = 0xE58
movq %rdi, %rbx
movq 0xd0(%rsi), %rdi
movq %rdx, %r15
testq %rdi, %rdi
je 0x1aafd
leaq 0x1de66(%rip), %rdx     # 0x38950
leaq 0x1de77(%rip), %rsi     # 0x38968
xorl %ecx, %ecx
callq 0x53a0
movq %rax, %r14
jmp 0x1ab00
xorl %r14d, %r14d
movq 0x8(%r15), %rax
cmpq (%r15), %rax
je 0x1b4ba
leaq 0x28(%rsp), %rax
leaq 0x38(%rsp), %r13
leaq 0xe38(%rsp), %r12
movq %rbx, 0x8(%rsp)
xorl %ebp, %ebp
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
leaq 0x54d0(%r14), %rax
movq %rax, 0x10(%rsp)
movq (%r15), %rsi
movq 0x8(%r15), %rcx
movl %ebp, %eax
subq %rsi, %rcx
sarq $0x5, %rcx
cmpq %rax, %rcx
jbe 0x1c5e7
shlq $0x5, %rax
addq %rax, %rsi
movq %r13, %rdi
callq 0x5490
leaq 0x9845(%rip), %rsi      # 0x243b2
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1ab8c
leaq 0x9835(%rip), %rsi      # 0x243b5
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1abe5
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq (%r15), %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1abe5
movq 0x10(%rsp), %rdi
callq 0xd2ba
movq %rbx, %rdi
shlq $0x5, %rdi
addq (%r15), %rdi
callq 0x93db
movl %eax, 0x54(%r14)
movq 0x10(%rsp), %rdi
movl %eax, %esi
callq 0xd95a
cmpb $0x1, 0x50(%r14)
movb $0x1, %r12b
jne 0x1b466
movq 0x10(%rsp), %rdi
callq 0xd408
jmp 0x1b466
leaq 0x97d3(%rip), %rsi      # 0x243bf
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1ac0b
leaq 0x97c3(%rip), %rsi      # 0x243c2
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1ac43
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1ac43
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x19642
movb $0x1, %r12b
movzbl %al, %esi
movq %r14, %rdi
callq 0xbc20
jmp 0x1b466
leaq 0x9781(%rip), %rsi      # 0x243cb
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1ac84
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1ac84
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x19642
movb %al, 0x60(%r14)
jmp 0x1b463
leaq 0x974a(%rip), %rsi      # 0x243d5
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1acaa
leaq 0x973a(%rip), %rsi      # 0x243d8
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1acdf
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1acdf
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0xe938
shlq $0x14, %rax
movb $0x1, %r12b
movq %rax, 0x58(%r14)
jmp 0x1b466
leaq 0x96fb(%rip), %rsi      # 0x243e1
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1ad05
leaq 0x96eb(%rip), %rsi      # 0x243e4
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1ad35
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1ad35
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0xe990
vmovss %xmm0, 0x68(%r14)
jmp 0x1b463
leaq 0x96b4(%rip), %rsi      # 0x243f0
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1ad5b
leaq 0x96a4(%rip), %rsi      # 0x243f3
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1ad8b
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1ad8b
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0xe990
vmovss %xmm0, 0x64(%r14)
jmp 0x1b463
leaq 0x966a(%rip), %rsi      # 0x243fc
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1adb1
leaq 0x965a(%rip), %rsi      # 0x243ff
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1ade1
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1ade1
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0xe990
vmovss %xmm0, 0x70(%r14)
jmp 0x1b463
leaq 0x9621(%rip), %rsi      # 0x24409
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1ae07
leaq 0x9611(%rip), %rsi      # 0x2440c
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1ae35
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1ae35
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x19642
movb %al, 0x6c(%r14)
jmp 0x1b463
leaq 0x5365(%rip), %rsi      # 0x201a1
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1ae5b
leaq 0x95ca(%rip), %rsi      # 0x24419
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1ae8b
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1ae8b
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0xe990
vmovss %xmm0, 0x74(%r14)
jmp 0x1b463
leaq 0x9594(%rip), %rsi      # 0x24426
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1aeb1
leaq 0x9584(%rip), %rsi      # 0x24429
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1aee1
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1aee1
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0xe990
vmovss %xmm0, 0x78(%r14)
jmp 0x1b463
leaq 0x954c(%rip), %rsi      # 0x24434
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1af07
leaq 0x953c(%rip), %rsi      # 0x24437
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1af35
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1af35
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x19642
movb %al, 0x7c(%r14)
jmp 0x1b463
leaq 0x9507(%rip), %rsi      # 0x24443
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1af5b
leaq 0x94f7(%rip), %rsi      # 0x24446
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1af8c
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1af8c
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x19642
movb %al, 0x98(%r14)
jmp 0x1b463
leaq 0x94bf(%rip), %rsi      # 0x24452
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1afb2
leaq 0x94af(%rip), %rsi      # 0x24455
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1afe3
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1afe3
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x19642
movb %al, 0x99(%r14)
jmp 0x1b463
leaq 0x9476(%rip), %rsi      # 0x24460
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b009
leaq 0x9466(%rip), %rsi      # 0x24463
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b03a
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b03a
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x93db
movl %eax, 0x9c(%r14)
jmp 0x1b463
leaq 0x942c(%rip), %rsi      # 0x2446d
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b060
leaq 0x941c(%rip), %rsi      # 0x24470
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b091
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b091
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x19642
movb %al, 0xa8(%r14)
jmp 0x1b463
leaq 0x93e6(%rip), %rsi      # 0x2447e
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b0d5
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b0d5
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x147a4
movl %eax, 0xa4(%r14)
jmp 0x1b463
leaq 0x93ad(%rip), %rsi      # 0x24489
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b0fb
leaq 0x939d(%rip), %rsi      # 0x2448c
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b12e
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b12e
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0xe990
vmovss %xmm0, 0x80(%r14)
jmp 0x1b463
leaq 0x9361(%rip), %rsi      # 0x24496
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b154
leaq 0x9351(%rip), %rsi      # 0x24499
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b187
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b187
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0xe990
vmovss %xmm0, 0x84(%r14)
jmp 0x1b463
leaq 0x9318(%rip), %rsi      # 0x244a6
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b1ad
leaq 0x9308(%rip), %rsi      # 0x244a9
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b1e0
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b1e0
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0xe990
vmovss %xmm0, 0x88(%r14)
jmp 0x1b463
leaq 0x92ce(%rip), %rsi      # 0x244b5
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b206
leaq 0x92be(%rip), %rsi      # 0x244b8
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b251
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b251
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x93db
movl %eax, 0x8c(%r14)
leal (%rax,%rax,4), %eax
movb $0x1, %r12b
cmpl %eax, 0x40f8(%r14)
jge 0x1b466
movl %eax, 0x40f8(%r14)
jmp 0x1b466
leaq 0x926b(%rip), %rsi      # 0x244c3
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b277
leaq 0x925b(%rip), %rsi      # 0x244c6
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b2b8
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b2b8
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0xe990
vmovss %xmm0, 0x90(%r14)
callq 0x56a0
vmovss %xmm0, 0x94(%r14)
jmp 0x1b463
leaq 0x9212(%rip), %rsi      # 0x244d1
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b2de
leaq 0x9202(%rip), %rsi      # 0x244d4
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b30f
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b30f
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x147a4
movl %eax, 0xa0(%r14)
jmp 0x1b463
leaq 0x91cc(%rip), %rsi      # 0x244e2
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b335
leaq 0x91bc(%rip), %rsi      # 0x244e5
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b366
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b366
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x93db
movl %eax, 0xac(%r14)
jmp 0x1b463
leaq 0x9185(%rip), %rsi      # 0x244f2
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b38c
leaq 0x9175(%rip), %rsi      # 0x244f5
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b3bd
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b3bd
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x93db
movl %eax, 0xb0(%r14)
jmp 0x1b463
leaq 0x4cb4(%rip), %rsi      # 0x20078
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b3e3
leaq 0x9129(%rip), %rsi      # 0x24500
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b411
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b411
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x93db
movl %eax, 0xb4(%r14)
jmp 0x1b463
leaq 0x90f5(%rip), %rsi      # 0x2450d
movq %r13, %rdi
callq 0x7bca
testb %al, %al
jne 0x1b437
leaq 0x90e5(%rip), %rsi      # 0x24510
movq %r13, %rdi
callq 0x7bca
testb %al, %al
je 0x1b488
movq (%r15), %rdi
movq 0x8(%r15), %rax
leal 0x1(%rbp), %ebx
subq %rdi, %rax
sarq $0x5, %rax
cmpq %rbx, %rax
jbe 0x1b488
movq %rbx, %rax
shlq $0x5, %rax
addq %rax, %rdi
callq 0x93db
movl %eax, 0xb8(%r14)
movb $0x1, %r12b
movq %r13, %rdi
callq 0x5150
incl %ebx
movl %ebx, %ebp
testb %r12b, %r12b
leaq 0xe38(%rsp), %r12
jne 0x1ab3e
jmp 0x1c612
leaq 0x908d(%rip), %rsi      # 0x2451c
leaq 0x58(%rsp), %rdx
movq %r12, %rdi
callq 0x5110
movq 0x8(%rsp), %rdi
xorl %esi, %esi
movq %r12, %rdx
callq 0x8c3a
movq %r12, %rdi
callq 0x5150
xorl %r12d, %r12d
movl %ebp, %ebx
jmp 0x1b466
leaq 0x53ea(%rip), %rsi      # 0x208ab
leaq 0x3d8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x5110
leaq 0x86db(%rip), %rdx      # 0x23bb5
leaq 0x3f8(%rsp), %rdi
leaq 0x3d8(%rsp), %rsi
callq 0x7f8b
leaq 0x8702(%rip), %rdx      # 0x23bf8
leaq 0x418(%rsp), %rdi
leaq 0x3f8(%rsp), %rsi
callq 0x7f8b
leaq 0x86f3(%rip), %rdx      # 0x23c05
leaq 0x438(%rsp), %rdi
leaq 0x418(%rsp), %rsi
callq 0x7f8b
movl 0x54(%r14), %esi
leaq 0x3b8(%rsp), %rdi
callq 0xd092
leaq 0x458(%rsp), %rdi
leaq 0x438(%rsp), %rsi
leaq 0x3b8(%rsp), %rdx
callq 0xcdf8
leaq 0x92fd(%rip), %rdx      # 0x24859
leaq 0x478(%rsp), %rdi
leaq 0x458(%rsp), %rsi
callq 0x7f8b
leaq 0x86d4(%rip), %rdx      # 0x23c4c
leaq 0x498(%rsp), %rdi
leaq 0x478(%rsp), %rsi
callq 0x7f8b
movzbl 0x50(%r14), %esi
leaq 0x398(%rsp), %rdi
callq 0x195eb
leaq 0x4b8(%rsp), %rdi
leaq 0x498(%rsp), %rsi
leaq 0x398(%rsp), %rdx
callq 0xcdf8
leaq 0x9296(%rip), %rdx      # 0x24859
leaq 0x4d8(%rsp), %rdi
leaq 0x4b8(%rsp), %rsi
callq 0x7f8b
leaq 0x86b4(%rip), %rdx      # 0x23c93
leaq 0x4f8(%rsp), %rdi
leaq 0x4d8(%rsp), %rsi
callq 0x7f8b
movq 0x58(%r14), %rsi
shrq $0x14, %rsi
leaq 0x378(%rsp), %rdi
callq 0xd337
leaq 0x518(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
leaq 0x378(%rsp), %rdx
callq 0xcdf8
leaq 0x922c(%rip), %rdx      # 0x24859
leaq 0x538(%rsp), %rdi
leaq 0x518(%rsp), %rsi
callq 0x7f8b
leaq 0x8691(%rip), %rdx      # 0x23cda
leaq 0x558(%rsp), %rdi
leaq 0x538(%rsp), %rsi
callq 0x7f8b
movzbl 0x60(%r14), %esi
leaq 0x358(%rsp), %rdi
callq 0x195eb
leaq 0x578(%rsp), %rdi
leaq 0x558(%rsp), %rsi
leaq 0x358(%rsp), %rdx
callq 0xcdf8
leaq 0x91c5(%rip), %rdx      # 0x24859
leaq 0x598(%rsp), %rdi
leaq 0x578(%rsp), %rsi
callq 0x7f8b
leaq 0x8671(%rip), %rdx      # 0x23d21
leaq 0x5b8(%rsp), %rdi
leaq 0x598(%rsp), %rsi
callq 0x7f8b
leaq 0x866c(%rip), %rdx      # 0x23d38
leaq 0x5d8(%rsp), %rdi
leaq 0x5b8(%rsp), %rsi
callq 0x7f8b
vmovss 0x68(%r14), %xmm0
leaq 0x338(%rsp), %rdi
callq 0x1d9ae
leaq 0x5f8(%rsp), %rdi
leaq 0x5d8(%rsp), %rsi
leaq 0x338(%rsp), %rdx
callq 0xcdf8
leaq 0x9141(%rip), %rdx      # 0x24859
leaq 0x618(%rsp), %rdi
leaq 0x5f8(%rsp), %rsi
callq 0x7f8b
leaq 0x864b(%rip), %rdx      # 0x23d7f
leaq 0x638(%rsp), %rdi
leaq 0x618(%rsp), %rsi
callq 0x7f8b
vmovss 0x64(%r14), %xmm0
leaq 0x318(%rsp), %rdi
callq 0x1d9ae
leaq 0x658(%rsp), %rdi
leaq 0x638(%rsp), %rsi
leaq 0x318(%rsp), %rdx
callq 0xcdf8
leaq 0x90d9(%rip), %rdx      # 0x24859
leaq 0x678(%rsp), %rdi
leaq 0x658(%rsp), %rsi
callq 0x7f8b
leaq 0x862a(%rip), %rdx      # 0x23dc6
leaq 0x698(%rsp), %rdi
leaq 0x678(%rsp), %rsi
callq 0x7f8b
leaq 0x861f(%rip), %rdx      # 0x23dd7
leaq 0x6b8(%rsp), %rdi
leaq 0x698(%rsp), %rsi
callq 0x7f8b
vmovss 0x70(%r14), %xmm0
leaq 0x2f8(%rsp), %rdi
callq 0x1d9ae
leaq 0x6d8(%rsp), %rdi
leaq 0x6b8(%rsp), %rsi
leaq 0x2f8(%rsp), %rdx
callq 0xcdf8
leaq 0x9055(%rip), %rdx      # 0x24859
leaq 0x6f8(%rsp), %rdi
leaq 0x6d8(%rsp), %rsi
callq 0x7f8b
leaq 0x85fe(%rip), %rdx      # 0x23e1e
leaq 0x718(%rsp), %rdi
leaq 0x6f8(%rsp), %rsi
callq 0x7f8b
movzbl 0x6c(%r14), %esi
leaq 0x2d8(%rsp), %rdi
callq 0x195eb
leaq 0x738(%rsp), %rdi
leaq 0x718(%rsp), %rsi
leaq 0x2d8(%rsp), %rdx
callq 0xcdf8
leaq 0x8fee(%rip), %rdx      # 0x24859
leaq 0x758(%rsp), %rdi
leaq 0x738(%rsp), %rsi
callq 0x7f8b
leaq 0x85de(%rip), %rdx      # 0x23e65
leaq 0x778(%rsp), %rdi
leaq 0x758(%rsp), %rsi
callq 0x7f8b
vmovss 0x74(%r14), %xmm0
leaq 0x2b8(%rsp), %rdi
callq 0x1d9ae
leaq 0x798(%rsp), %rdi
leaq 0x778(%rsp), %rsi
leaq 0x2b8(%rsp), %rdx
callq 0xcdf8
leaq 0x8f86(%rip), %rdx      # 0x24859
leaq 0x7b8(%rsp), %rdi
leaq 0x798(%rsp), %rsi
callq 0x7f8b
leaq 0x85bd(%rip), %rdx      # 0x23eac
leaq 0x7d8(%rsp), %rdi
leaq 0x7b8(%rsp), %rsi
callq 0x7f8b
vmovss 0x78(%r14), %xmm0
leaq 0x298(%rsp), %rdi
callq 0x1d9ae
leaq 0x7f8(%rsp), %rdi
leaq 0x7d8(%rsp), %rsi
leaq 0x298(%rsp), %rdx
callq 0xcdf8
leaq 0x8f1e(%rip), %rdx      # 0x24859
leaq 0x818(%rsp), %rdi
leaq 0x7f8(%rsp), %rsi
callq 0x7f8b
leaq 0x859c(%rip), %rdx      # 0x23ef3
leaq 0x838(%rsp), %rdi
leaq 0x818(%rsp), %rsi
callq 0x7f8b
movzbl 0x7c(%r14), %esi
leaq 0x278(%rsp), %rdi
callq 0x195eb
leaq 0x858(%rsp), %rdi
leaq 0x838(%rsp), %rsi
leaq 0x278(%rsp), %rdx
callq 0xcdf8
leaq 0x8eb7(%rip), %rdx      # 0x24859
leaq 0x878(%rsp), %rdi
leaq 0x858(%rsp), %rsi
callq 0x7f8b
leaq 0x857c(%rip), %rdx      # 0x23f3a
leaq 0x898(%rsp), %rdi
leaq 0x878(%rsp), %rsi
callq 0x7f8b
vmovss 0x80(%r14), %xmm0
leaq 0x258(%rsp), %rdi
callq 0x1d9ae
leaq 0x8b8(%rsp), %rdi
leaq 0x898(%rsp), %rsi
leaq 0x258(%rsp), %rdx
callq 0xcdf8
leaq 0x8e4c(%rip), %rdx      # 0x24859
leaq 0x8d8(%rsp), %rdi
leaq 0x8b8(%rsp), %rsi
callq 0x7f8b
leaq 0x8558(%rip), %rdx      # 0x23f81
leaq 0x8f8(%rsp), %rdi
leaq 0x8d8(%rsp), %rsi
callq 0x7f8b
vmovss 0x84(%r14), %xmm0
leaq 0x238(%rsp), %rdi
callq 0x1d9ae
leaq 0x918(%rsp), %rdi
leaq 0x8f8(%rsp), %rsi
leaq 0x238(%rsp), %rdx
callq 0xcdf8
leaq 0x8de1(%rip), %rdx      # 0x24859
leaq 0x938(%rsp), %rdi
leaq 0x918(%rsp), %rsi
callq 0x7f8b
leaq 0x8534(%rip), %rdx      # 0x23fc8
leaq 0x958(%rsp), %rdi
leaq 0x938(%rsp), %rsi
callq 0x7f8b
vmovss 0x88(%r14), %xmm0
leaq 0x218(%rsp), %rdi
callq 0x1d9ae
leaq 0x978(%rsp), %rdi
leaq 0x958(%rsp), %rsi
leaq 0x218(%rsp), %rdx
callq 0xcdf8
leaq 0x8d76(%rip), %rdx      # 0x24859
leaq 0x998(%rsp), %rdi
leaq 0x978(%rsp), %rsi
callq 0x7f8b
leaq 0x8510(%rip), %rdx      # 0x2400f
leaq 0x9b8(%rsp), %rdi
leaq 0x998(%rsp), %rsi
callq 0x7f8b
movl 0x8c(%r14), %esi
leaq 0x1f8(%rsp), %rdi
callq 0xd092
leaq 0x9d8(%rsp), %rdi
leaq 0x9b8(%rsp), %rsi
leaq 0x1f8(%rsp), %rdx
callq 0xcdf8
leaq 0x8d0d(%rip), %rdx      # 0x24859
leaq 0x9f8(%rsp), %rdi
leaq 0x9d8(%rsp), %rsi
callq 0x7f8b
leaq 0x84ee(%rip), %rdx      # 0x24056
leaq 0xa18(%rsp), %rdi
leaq 0x9f8(%rsp), %rsi
callq 0x7f8b
vmovss 0x90(%r14), %xmm0
leaq 0x1d8(%rsp), %rdi
callq 0x1d9ae
leaq 0xa38(%rsp), %rdi
leaq 0xa18(%rsp), %rsi
leaq 0x1d8(%rsp), %rdx
callq 0xcdf8
leaq 0x8ca2(%rip), %rdx      # 0x24859
leaq 0xa58(%rsp), %rdi
leaq 0xa38(%rsp), %rsi
callq 0x7f8b
leaq 0x84ca(%rip), %rdx      # 0x2409d
leaq 0xa78(%rsp), %rdi
leaq 0xa58(%rsp), %rsi
callq 0x7f8b
leaq 0x84be(%rip), %rdx      # 0x240ad
leaq 0xa98(%rsp), %rdi
leaq 0xa78(%rsp), %rsi
callq 0x7f8b
movzbl 0x98(%r14), %esi
leaq 0x1b8(%rsp), %rdi
callq 0x195eb
leaq 0xab8(%rsp), %rdi
leaq 0xa98(%rsp), %rsi
leaq 0x1b8(%rsp), %rdx
callq 0xcdf8
leaq 0x8c1c(%rip), %rdx      # 0x24859
leaq 0xad8(%rsp), %rdi
leaq 0xab8(%rsp), %rsi
callq 0x7f8b
leaq 0x849b(%rip), %rdx      # 0x240f4
leaq 0xaf8(%rsp), %rdi
leaq 0xad8(%rsp), %rsi
callq 0x7f8b
movzbl 0x99(%r14), %esi
leaq 0x198(%rsp), %rdi
callq 0x195eb
leaq 0xb18(%rsp), %rdi
leaq 0xaf8(%rsp), %rsi
leaq 0x198(%rsp), %rdx
callq 0xcdf8
leaq 0x8bb2(%rip), %rdx      # 0x24859
leaq 0xb38(%rsp), %rdi
leaq 0xb18(%rsp), %rsi
callq 0x7f8b
leaq 0x8478(%rip), %rdx      # 0x2413b
leaq 0xb58(%rsp), %rdi
leaq 0xb38(%rsp), %rsi
callq 0x7f8b
movl 0x9c(%r14), %esi
leaq 0x178(%rsp), %rdi
callq 0xd092
leaq 0xb78(%rsp), %rdi
leaq 0xb58(%rsp), %rsi
leaq 0x178(%rsp), %rdx
callq 0xcdf8
leaq 0x8b49(%rip), %rdx      # 0x24859
leaq 0xb98(%rsp), %rdi
leaq 0xb78(%rsp), %rsi
callq 0x7f8b
leaq 0x8456(%rip), %rdx      # 0x24182
leaq 0xbb8(%rsp), %rdi
leaq 0xb98(%rsp), %rsi
callq 0x7f8b
movl 0xa0(%r14), %esi
leaq 0x158(%rsp), %rdi
callq 0xd0e9
leaq 0xbd8(%rsp), %rdi
leaq 0xbb8(%rsp), %rsi
leaq 0x158(%rsp), %rdx
callq 0xcdf8
leaq 0x8ae0(%rip), %rdx      # 0x24859
leaq 0xbf8(%rsp), %rdi
leaq 0xbd8(%rsp), %rsi
callq 0x7f8b
leaq 0x8434(%rip), %rdx      # 0x241c9
leaq 0xc18(%rsp), %rdi
leaq 0xbf8(%rsp), %rsi
callq 0x7f8b
movl 0xa4(%r14), %esi
leaq 0x138(%rsp), %rdi
callq 0xd0e9
leaq 0xc38(%rsp), %rdi
leaq 0xc18(%rsp), %rsi
leaq 0x138(%rsp), %rdx
callq 0xcdf8
leaq 0x8a77(%rip), %rdx      # 0x24859
leaq 0xc58(%rsp), %rdi
leaq 0xc38(%rsp), %rsi
callq 0x7f8b
leaq 0x8412(%rip), %rdx      # 0x24210
leaq 0xc78(%rsp), %rdi
leaq 0xc58(%rsp), %rsi
callq 0x7f8b
movzbl 0xa8(%r14), %esi
leaq 0x118(%rsp), %rdi
callq 0x195eb
leaq 0xc98(%rsp), %rdi
leaq 0xc78(%rsp), %rsi
leaq 0x118(%rsp), %rdx
callq 0xcdf8
leaq 0x8a0d(%rip), %rdx      # 0x24859
leaq 0xcb8(%rsp), %rdi
leaq 0xc98(%rsp), %rsi
callq 0x7f8b
leaq 0x83ef(%rip), %rdx      # 0x24257
leaq 0xcd8(%rsp), %rdi
leaq 0xcb8(%rsp), %rsi
callq 0x7f8b
leaq 0x8401(%rip), %rdx      # 0x24285
leaq 0xcf8(%rsp), %rdi
leaq 0xcd8(%rsp), %rsi
callq 0x7f8b
movl 0xac(%r14), %esi
leaq 0xf8(%rsp), %rdi
callq 0xd092
leaq 0xd18(%rsp), %rdi
leaq 0xcf8(%rsp), %rsi
leaq 0xf8(%rsp), %rdx
callq 0xcdf8
leaq 0x8988(%rip), %rdx      # 0x24859
leaq 0xd38(%rsp), %rdi
leaq 0xd18(%rsp), %rsi
callq 0x7f8b
leaq 0x83df(%rip), %rdx      # 0x242cc
leaq 0xd58(%rsp), %rdi
leaq 0xd38(%rsp), %rsi
callq 0x7f8b
movl 0xb0(%r14), %esi
leaq 0xd8(%rsp), %rdi
callq 0xd092
leaq 0xd78(%rsp), %rdi
leaq 0xd58(%rsp), %rsi
leaq 0xd8(%rsp), %rdx
callq 0xcdf8
leaq 0x891f(%rip), %rdx      # 0x24859
leaq 0xd98(%rsp), %rdi
leaq 0xd78(%rsp), %rsi
callq 0x7f8b
leaq 0x83bd(%rip), %rdx      # 0x24313
leaq 0xdb8(%rsp), %rdi
leaq 0xd98(%rsp), %rsi
callq 0x7f8b
leaq 0x83b2(%rip), %rdx      # 0x24324
leaq 0xdd8(%rsp), %rdi
leaq 0xdb8(%rsp), %rsi
callq 0x7f8b
movl 0xb4(%r14), %esi
leaq 0xb8(%rsp), %rdi
callq 0xd092
leaq 0xdf8(%rsp), %rdi
leaq 0xdd8(%rsp), %rsi
leaq 0xb8(%rsp), %rdx
callq 0xcdf8
leaq 0x889a(%rip), %rdx      # 0x24859
leaq 0x58(%rsp), %rdi
leaq 0xdf8(%rsp), %rsi
callq 0x7f8b
leaq 0x8393(%rip), %rdx      # 0x2436b
leaq 0x38(%rsp), %rdi
leaq 0x58(%rsp), %rsi
callq 0x7f8b
movl 0xb8(%r14), %esi
leaq 0x98(%rsp), %rdi
callq 0xd092
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x98(%rsp), %rdx
callq 0xcdf8
leaq 0x8840(%rip), %rdx      # 0x24859
leaq 0xe18(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x7f8b
pushq $0x1
popq %rsi
leaq 0xe18(%rsp), %rdx
movq %rbx, %rdi
callq 0x8c3a
leaq 0xe18(%rsp), %rdi
callq 0x5150
leaq 0x18(%rsp), %rdi
callq 0x5150
leaq 0x98(%rsp), %rdi
callq 0x5150
leaq 0x38(%rsp), %rdi
callq 0x5150
leaq 0x58(%rsp), %rdi
callq 0x5150
leaq 0xdf8(%rsp), %rdi
callq 0x5150
leaq 0xb8(%rsp), %rdi
callq 0x5150
leaq 0xdd8(%rsp), %rdi
callq 0x5150
leaq 0xdb8(%rsp), %rdi
callq 0x5150
leaq 0xd98(%rsp), %rdi
callq 0x5150
leaq 0xd78(%rsp), %rdi
callq 0x5150
leaq 0xd8(%rsp), %rdi
callq 0x5150
leaq 0xd58(%rsp), %rdi
callq 0x5150
leaq 0xd38(%rsp), %rdi
callq 0x5150
leaq 0xd18(%rsp), %rdi
callq 0x5150
leaq 0xf8(%rsp), %rdi
callq 0x5150
leaq 0xcf8(%rsp), %rdi
callq 0x5150
leaq 0xcd8(%rsp), %rdi
callq 0x5150
leaq 0xcb8(%rsp), %rdi
callq 0x5150
leaq 0xc98(%rsp), %rdi
callq 0x5150
leaq 0x118(%rsp), %rdi
callq 0x5150
leaq 0xc78(%rsp), %rdi
callq 0x5150
leaq 0xc58(%rsp), %rdi
callq 0x5150
leaq 0xc38(%rsp), %rdi
callq 0x5150
leaq 0x138(%rsp), %rdi
callq 0x5150
leaq 0xc18(%rsp), %rdi
callq 0x5150
leaq 0xbf8(%rsp), %rdi
callq 0x5150
leaq 0xbd8(%rsp), %rdi
callq 0x5150
leaq 0x158(%rsp), %rdi
callq 0x5150
leaq 0xbb8(%rsp), %rdi
callq 0x5150
leaq 0xb98(%rsp), %rdi
callq 0x5150
leaq 0xb78(%rsp), %rdi
callq 0x5150
leaq 0x178(%rsp), %rdi
callq 0x5150
leaq 0xb58(%rsp), %rdi
callq 0x5150
leaq 0xb38(%rsp), %rdi
callq 0x5150
leaq 0xb18(%rsp), %rdi
callq 0x5150
leaq 0x198(%rsp), %rdi
callq 0x5150
leaq 0xaf8(%rsp), %rdi
callq 0x5150
leaq 0xad8(%rsp), %rdi
callq 0x5150
leaq 0xab8(%rsp), %rdi
callq 0x5150
leaq 0x1b8(%rsp), %rdi
callq 0x5150
leaq 0xa98(%rsp), %rdi
callq 0x5150
leaq 0xa78(%rsp), %rdi
callq 0x5150
leaq 0xa58(%rsp), %rdi
callq 0x5150
leaq 0xa38(%rsp), %rdi
callq 0x5150
leaq 0x1d8(%rsp), %rdi
callq 0x5150
leaq 0xa18(%rsp), %rdi
callq 0x5150
leaq 0x9f8(%rsp), %rdi
callq 0x5150
leaq 0x9d8(%rsp), %rdi
callq 0x5150
leaq 0x1f8(%rsp), %rdi
callq 0x5150
leaq 0x9b8(%rsp), %rdi
callq 0x5150
leaq 0x998(%rsp), %rdi
callq 0x5150
leaq 0x978(%rsp), %rdi
callq 0x5150
leaq 0x218(%rsp), %rdi
callq 0x5150
leaq 0x958(%rsp), %rdi
callq 0x5150
leaq 0x938(%rsp), %rdi
callq 0x5150
leaq 0x918(%rsp), %rdi
callq 0x5150
leaq 0x238(%rsp), %rdi
callq 0x5150
leaq 0x8f8(%rsp), %rdi
callq 0x5150
leaq 0x8d8(%rsp), %rdi
callq 0x5150
leaq 0x8b8(%rsp), %rdi
callq 0x5150
leaq 0x258(%rsp), %rdi
callq 0x5150
leaq 0x898(%rsp), %rdi
callq 0x5150
leaq 0x878(%rsp), %rdi
callq 0x5150
leaq 0x858(%rsp), %rdi
callq 0x5150
leaq 0x278(%rsp), %rdi
callq 0x5150
leaq 0x838(%rsp), %rdi
callq 0x5150
leaq 0x818(%rsp), %rdi
callq 0x5150
leaq 0x7f8(%rsp), %rdi
callq 0x5150
leaq 0x298(%rsp), %rdi
callq 0x5150
leaq 0x7d8(%rsp), %rdi
callq 0x5150
leaq 0x7b8(%rsp), %rdi
callq 0x5150
leaq 0x798(%rsp), %rdi
callq 0x5150
leaq 0x2b8(%rsp), %rdi
callq 0x5150
leaq 0x778(%rsp), %rdi
callq 0x5150
leaq 0x758(%rsp), %rdi
callq 0x5150
leaq 0x738(%rsp), %rdi
callq 0x5150
leaq 0x2d8(%rsp), %rdi
callq 0x5150
leaq 0x718(%rsp), %rdi
callq 0x5150
leaq 0x6f8(%rsp), %rdi
callq 0x5150
leaq 0x6d8(%rsp), %rdi
callq 0x5150
leaq 0x2f8(%rsp), %rdi
callq 0x5150
leaq 0x6b8(%rsp), %rdi
callq 0x5150
leaq 0x698(%rsp), %rdi
callq 0x5150
leaq 0x678(%rsp), %rdi
callq 0x5150
leaq 0x658(%rsp), %rdi
callq 0x5150
leaq 0x318(%rsp), %rdi
callq 0x5150
leaq 0x638(%rsp), %rdi
callq 0x5150
leaq 0x618(%rsp), %rdi
callq 0x5150
leaq 0x5f8(%rsp), %rdi
callq 0x5150
leaq 0x338(%rsp), %rdi
callq 0x5150
leaq 0x5d8(%rsp), %rdi
callq 0x5150
leaq 0x5b8(%rsp), %rdi
callq 0x5150
leaq 0x598(%rsp), %rdi
callq 0x5150
leaq 0x578(%rsp), %rdi
callq 0x5150
leaq 0x358(%rsp), %rdi
callq 0x5150
leaq 0x558(%rsp), %rdi
callq 0x5150
leaq 0x538(%rsp), %rdi
callq 0x5150
leaq 0x518(%rsp), %rdi
callq 0x5150
leaq 0x378(%rsp), %rdi
callq 0x5150
leaq 0x4f8(%rsp), %rdi
callq 0x5150
leaq 0x4d8(%rsp), %rdi
callq 0x5150
leaq 0x4b8(%rsp), %rdi
callq 0x5150
leaq 0x398(%rsp), %rdi
callq 0x5150
leaq 0x498(%rsp), %rdi
callq 0x5150
leaq 0x478(%rsp), %rdi
callq 0x5150
leaq 0x458(%rsp), %rdi
callq 0x5150
leaq 0x3b8(%rsp), %rdi
callq 0x5150
leaq 0x438(%rsp), %rdi
callq 0x5150
leaq 0x418(%rsp), %rdi
callq 0x5150
leaq 0x3f8(%rsp), %rdi
callq 0x5150
leaq 0x3d8(%rsp), %rdi
callq 0x5150
jmp 0x1c621
leaq 0x78(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x5490
pushq $0x1
popq %rsi
movq 0x8(%rsp), %rdi
leaq 0x78(%rsp), %rdx
callq 0x8c3a
leaq 0x78(%rsp), %rdi
callq 0x5150
leaq 0x18(%rsp), %rdi
callq 0x5150
movq 0x8(%rsp), %rbx
movq %rbx, %rax
addq $0xe58, %rsp            # imm = 0xE58
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0xe38(%rsp), %rdi
movq %rax, %rbx
callq 0x5150
jmp 0x1cf85
jmp 0x1cf82
leaq 0x78(%rsp), %rdi
movq %rax, %rbx
jmp 0x1cf8a
jmp 0x1cf7d
leaq 0xe18(%rsp), %rdi
movq %rax, %rbx
callq 0x5150
jmp 0x1c677
movq %rax, %rbx
leaq 0x18(%rsp), %rdi
callq 0x5150
jmp 0x1c686
movq %rax, %rbx
leaq 0x98(%rsp), %rdi
callq 0x5150
jmp 0x1c698
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x5150
jmp 0x1c6a7
movq %rax, %rbx
leaq 0x58(%rsp), %rdi
callq 0x5150
leaq 0xdf8(%rsp), %rdi
callq 0x5150
leaq 0xb8(%rsp), %rdi
callq 0x5150
leaq 0xdd8(%rsp), %rdi
callq 0x5150
leaq 0xdb8(%rsp), %rdi
callq 0x5150
leaq 0xd98(%rsp), %rdi
callq 0x5150
leaq 0xd78(%rsp), %rdi
callq 0x5150
leaq 0xd8(%rsp), %rdi
callq 0x5150
leaq 0xd58(%rsp), %rdi
callq 0x5150
leaq 0xd38(%rsp), %rdi
callq 0x5150
leaq 0xd18(%rsp), %rdi
callq 0x5150
leaq 0xf8(%rsp), %rdi
callq 0x5150
leaq 0xcf8(%rsp), %rdi
callq 0x5150
leaq 0xcd8(%rsp), %rdi
callq 0x5150
leaq 0xcb8(%rsp), %rdi
callq 0x5150
leaq 0xc98(%rsp), %rdi
callq 0x5150
leaq 0x118(%rsp), %rdi
callq 0x5150
leaq 0xc78(%rsp), %rdi
callq 0x5150
leaq 0xc58(%rsp), %rdi
callq 0x5150
leaq 0xc38(%rsp), %rdi
callq 0x5150
leaq 0x138(%rsp), %rdi
callq 0x5150
leaq 0xc18(%rsp), %rdi
callq 0x5150
leaq 0xbf8(%rsp), %rdi
callq 0x5150
leaq 0xbd8(%rsp), %rdi
callq 0x5150
leaq 0x158(%rsp), %rdi
callq 0x5150
leaq 0xbb8(%rsp), %rdi
callq 0x5150
leaq 0xb98(%rsp), %rdi
callq 0x5150
leaq 0xb78(%rsp), %rdi
callq 0x5150
leaq 0x178(%rsp), %rdi
callq 0x5150
leaq 0xb58(%rsp), %rdi
callq 0x5150
leaq 0xb38(%rsp), %rdi
callq 0x5150
leaq 0xb18(%rsp), %rdi
callq 0x5150
leaq 0x198(%rsp), %rdi
callq 0x5150
leaq 0xaf8(%rsp), %rdi
callq 0x5150
leaq 0xad8(%rsp), %rdi
callq 0x5150
leaq 0xab8(%rsp), %rdi
callq 0x5150
leaq 0x1b8(%rsp), %rdi
callq 0x5150
leaq 0xa98(%rsp), %rdi
callq 0x5150
leaq 0xa78(%rsp), %rdi
callq 0x5150
leaq 0xa58(%rsp), %rdi
callq 0x5150
leaq 0xa38(%rsp), %rdi
callq 0x5150
leaq 0x1d8(%rsp), %rdi
callq 0x5150
leaq 0xa18(%rsp), %rdi
callq 0x5150
leaq 0x9f8(%rsp), %rdi
callq 0x5150
leaq 0x9d8(%rsp), %rdi
callq 0x5150
leaq 0x1f8(%rsp), %rdi
callq 0x5150
leaq 0x9b8(%rsp), %rdi
callq 0x5150
leaq 0x998(%rsp), %rdi
callq 0x5150
leaq 0x978(%rsp), %rdi
callq 0x5150
leaq 0x218(%rsp), %rdi
callq 0x5150
leaq 0x958(%rsp), %rdi
callq 0x5150
leaq 0x938(%rsp), %rdi
callq 0x5150
leaq 0x918(%rsp), %rdi
callq 0x5150
leaq 0x238(%rsp), %rdi
callq 0x5150
leaq 0x8f8(%rsp), %rdi
callq 0x5150
leaq 0x8d8(%rsp), %rdi
callq 0x5150
leaq 0x8b8(%rsp), %rdi
callq 0x5150
leaq 0x258(%rsp), %rdi
callq 0x5150
leaq 0x898(%rsp), %rdi
callq 0x5150
leaq 0x878(%rsp), %rdi
callq 0x5150
leaq 0x858(%rsp), %rdi
callq 0x5150
leaq 0x278(%rsp), %rdi
callq 0x5150
leaq 0x838(%rsp), %rdi
callq 0x5150
leaq 0x818(%rsp), %rdi
callq 0x5150
leaq 0x7f8(%rsp), %rdi
callq 0x5150
leaq 0x298(%rsp), %rdi
callq 0x5150
leaq 0x7d8(%rsp), %rdi
callq 0x5150
leaq 0x7b8(%rsp), %rdi
callq 0x5150
leaq 0x798(%rsp), %rdi
callq 0x5150
leaq 0x2b8(%rsp), %rdi
callq 0x5150
leaq 0x778(%rsp), %rdi
callq 0x5150
leaq 0x758(%rsp), %rdi
callq 0x5150
leaq 0x738(%rsp), %rdi
callq 0x5150
leaq 0x2d8(%rsp), %rdi
callq 0x5150
leaq 0x718(%rsp), %rdi
callq 0x5150
leaq 0x6f8(%rsp), %rdi
callq 0x5150
leaq 0x6d8(%rsp), %rdi
callq 0x5150
leaq 0x2f8(%rsp), %rdi
callq 0x5150
leaq 0x6b8(%rsp), %rdi
callq 0x5150
leaq 0x698(%rsp), %rdi
callq 0x5150
leaq 0x678(%rsp), %rdi
callq 0x5150
leaq 0x658(%rsp), %rdi
callq 0x5150
leaq 0x318(%rsp), %rdi
callq 0x5150
leaq 0x638(%rsp), %rdi
callq 0x5150
leaq 0x618(%rsp), %rdi
callq 0x5150
leaq 0x5f8(%rsp), %rdi
callq 0x5150
leaq 0x338(%rsp), %rdi
callq 0x5150
leaq 0x5d8(%rsp), %rdi
callq 0x5150
leaq 0x5b8(%rsp), %rdi
callq 0x5150
leaq 0x598(%rsp), %rdi
callq 0x5150
leaq 0x578(%rsp), %rdi
callq 0x5150
leaq 0x358(%rsp), %rdi
callq 0x5150
leaq 0x558(%rsp), %rdi
callq 0x5150
leaq 0x538(%rsp), %rdi
callq 0x5150
leaq 0x518(%rsp), %rdi
callq 0x5150
leaq 0x378(%rsp), %rdi
callq 0x5150
leaq 0x4f8(%rsp), %rdi
callq 0x5150
leaq 0x4d8(%rsp), %rdi
callq 0x5150
leaq 0x4b8(%rsp), %rdi
callq 0x5150
leaq 0x398(%rsp), %rdi
callq 0x5150
leaq 0x498(%rsp), %rdi
callq 0x5150
leaq 0x478(%rsp), %rdi
callq 0x5150
leaq 0x458(%rsp), %rdi
callq 0x5150
leaq 0x3b8(%rsp), %rdi
callq 0x5150
leaq 0x438(%rsp), %rdi
callq 0x5150
leaq 0x418(%rsp), %rdi
callq 0x5150
leaq 0x3f8(%rsp), %rdi
callq 0x5150
leaq 0x3d8(%rsp), %rdi
jmp 0x1cf94
movq %rax, %rbx
jmp 0x1c6b1
movq %rax, %rbx
jmp 0x1c6be
movq %rax, %rbx
jmp 0x1c6cb
movq %rax, %rbx
jmp 0x1c6d8
movq %rax, %rbx
jmp 0x1c6e5
movq %rax, %rbx
jmp 0x1c6f2
movq %rax, %rbx
jmp 0x1c6ff
movq %rax, %rbx
jmp 0x1c70c
movq %rax, %rbx
jmp 0x1c719
movq %rax, %rbx
jmp 0x1c726
movq %rax, %rbx
jmp 0x1c733
movq %rax, %rbx
jmp 0x1c740
movq %rax, %rbx
jmp 0x1c74d
movq %rax, %rbx
jmp 0x1c75a
movq %rax, %rbx
jmp 0x1c767
movq %rax, %rbx
jmp 0x1c774
movq %rax, %rbx
jmp 0x1c781
movq %rax, %rbx
jmp 0x1c78e
movq %rax, %rbx
jmp 0x1c79b
movq %rax, %rbx
jmp 0x1c7a8
movq %rax, %rbx
jmp 0x1c7b5
movq %rax, %rbx
jmp 0x1c7c2
movq %rax, %rbx
jmp 0x1c7cf
movq %rax, %rbx
jmp 0x1c7dc
movq %rax, %rbx
jmp 0x1c7e9
movq %rax, %rbx
jmp 0x1c7f6
movq %rax, %rbx
jmp 0x1c803
movq %rax, %rbx
jmp 0x1c810
movq %rax, %rbx
jmp 0x1c81d
movq %rax, %rbx
jmp 0x1c82a
movq %rax, %rbx
jmp 0x1c837
movq %rax, %rbx
jmp 0x1c844
movq %rax, %rbx
jmp 0x1c851
movq %rax, %rbx
jmp 0x1c85e
movq %rax, %rbx
jmp 0x1c86b
movq %rax, %rbx
jmp 0x1c878
movq %rax, %rbx
jmp 0x1c885
movq %rax, %rbx
jmp 0x1c892
movq %rax, %rbx
jmp 0x1c89f
movq %rax, %rbx
jmp 0x1c8ac
movq %rax, %rbx
jmp 0x1c8b9
movq %rax, %rbx
jmp 0x1c8c6
movq %rax, %rbx
jmp 0x1c8d3
movq %rax, %rbx
jmp 0x1c8e0
movq %rax, %rbx
jmp 0x1c8ed
movq %rax, %rbx
jmp 0x1c8fa
movq %rax, %rbx
jmp 0x1c907
movq %rax, %rbx
jmp 0x1c914
movq %rax, %rbx
jmp 0x1c921
movq %rax, %rbx
jmp 0x1c92e
movq %rax, %rbx
jmp 0x1c93b
movq %rax, %rbx
jmp 0x1c948
movq %rax, %rbx
jmp 0x1c955
movq %rax, %rbx
jmp 0x1c962
movq %rax, %rbx
jmp 0x1c96f
movq %rax, %rbx
jmp 0x1c97c
movq %rax, %rbx
jmp 0x1c989
movq %rax, %rbx
jmp 0x1c996
movq %rax, %rbx
jmp 0x1c9a3
movq %rax, %rbx
jmp 0x1c9b0
movq %rax, %rbx
jmp 0x1c9bd
movq %rax, %rbx
jmp 0x1c9ca
movq %rax, %rbx
jmp 0x1c9d7
movq %rax, %rbx
jmp 0x1c9e4
movq %rax, %rbx
jmp 0x1c9f1
movq %rax, %rbx
jmp 0x1c9fe
movq %rax, %rbx
jmp 0x1ca0b
movq %rax, %rbx
jmp 0x1ca18
movq %rax, %rbx
jmp 0x1ca25
movq %rax, %rbx
jmp 0x1ca32
movq %rax, %rbx
jmp 0x1ca3f
movq %rax, %rbx
jmp 0x1ca4c
movq %rax, %rbx
jmp 0x1ca59
movq %rax, %rbx
jmp 0x1ca66
movq %rax, %rbx
jmp 0x1ca73
movq %rax, %rbx
jmp 0x1ca80
movq %rax, %rbx
jmp 0x1ca8d
movq %rax, %rbx
jmp 0x1ca9a
movq %rax, %rbx
jmp 0x1caa7
movq %rax, %rbx
jmp 0x1cab4
movq %rax, %rbx
jmp 0x1cac1
movq %rax, %rbx
jmp 0x1cace
movq %rax, %rbx
jmp 0x1cadb
movq %rax, %rbx
jmp 0x1cae8
movq %rax, %rbx
jmp 0x1caf5
movq %rax, %rbx
jmp 0x1cb02
movq %rax, %rbx
jmp 0x1cb0f
movq %rax, %rbx
jmp 0x1cb1c
movq %rax, %rbx
jmp 0x1cb29
movq %rax, %rbx
jmp 0x1cb36
movq %rax, %rbx
jmp 0x1cb43
movq %rax, %rbx
jmp 0x1cb50
movq %rax, %rbx
jmp 0x1cb5d
movq %rax, %rbx
jmp 0x1cb6a
movq %rax, %rbx
jmp 0x1cb77
movq %rax, %rbx
jmp 0x1cb84
movq %rax, %rbx
jmp 0x1cb91
movq %rax, %rbx
jmp 0x1cb9e
movq %rax, %rbx
jmp 0x1cbab
movq %rax, %rbx
jmp 0x1cbb8
movq %rax, %rbx
jmp 0x1cbc5
movq %rax, %rbx
jmp 0x1cbd2
movq %rax, %rbx
jmp 0x1cbdf
movq %rax, %rbx
jmp 0x1cbec
movq %rax, %rbx
jmp 0x1cbf9
movq %rax, %rbx
jmp 0x1cc06
movq %rax, %rbx
jmp 0x1cc13
movq %rax, %rbx
jmp 0x1cf99
movq %rax, %rbx
jmp 0x1cf8f
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x5150
leaq 0x18(%rsp), %rdi
callq 0x5150
movq %rbx, %rdi
callq 0x5650
nop