// File: /workspace/github_cpp_makefile_star2_O1/neubig[P]egret/Egret/src/Main.cpp
// Function: main
int main(int argc, char *argv[])
{
	JKArgs args(argc,argv);
	//seconds=time(NULL);
	bitime=0;
	unatime=0;
	setutime=0;
	qutime=0;
	inbitime=0;
	initime=0;
	alltime=0;

	alltime=clock();
	if(args.is_set("debug"))dlevel=atoi(args.value("debug").c_str());
	if(!(args.is_set("pcfg")||args.is_set("io")||args.is_set("lapcfg")))
		usage();

	if(args.is_set("unary_fine"))unary_fine=atoi(args.value("unary_fine").c_str());
	if(args.is_set("pcfg"))
	{
		if(!(args.is_set("g")&&args.is_set("i")))usage();
		ifstream ruleStream(args.value("g").c_str());
		cerr<<"load rule"<<endl;
		RuleSet ruleSet(ruleStream);
		cerr<<"done"<<endl;
		ruleSet.print(cout);
		ifstream textStream(args.value("i").c_str());
		if(!textStream.good())usage();
		int nbest=1;
		if(args.is_set("n")) 
			nbest=atoi(args.value("n").c_str());
		int dlevel=0;
		if(args.is_set("debug"))
			dlevel=atoi(args.value("debug").c_str());

		int count=0;
		while(!textStream.eof())
		{
			++count;
			string curline;
			getline(textStream, curline);
			if(curline=="")continue;
			
			vector<Tree*> trees;
			Forest forest(curline);
			forest.viterbi(ruleSet);
			if(nbest>1)
			{
				cout<<"sentence "<<count<<": \n"<<curline<<endl;
				cout<<nbest<<" best:"<<endl;
			}
			//forest.print_hyperedges(cout);
			forest.genTrees(nbest,trees);
			for(int i=0;(size_t)i<trees.size();i++)
			{
				//if(!args.is_set("interNode"))
				//	trees[i]->delInterNode();
				if(dlevel>0)
					trees[i]->print(cout);
				else
					trees[i]->tinyPrint(cout);
				trees[i]->destroy();
			}
		}
	}
	else if(args.is_set("io"))
	{
		//alltime=clock();
		if(!(args.is_set("g")&&args.is_set("i")))usage();
		ifstream ruleStream(args.value("g").c_str());
		RuleSet ruleSet(ruleStream);
		//ruleSet.print(cout);

		int nbest=1;

		int dlevel=0;
		if(args.is_set("debug"))
			dlevel=atoi(args.value("debug").c_str());
		int pass=1;
		if(args.is_set("pass"))
			pass=atoi(args.value("pass").c_str());
		double threshold=0;
		if(args.is_set("threshold"))
			threshold=atof(args.value("threshold").c_str());

		ERSet erSet;
		for(int i=0;i<pass;i++)
		{
			if(dlevel)
			{
				cout<<"pass:"<<i<<endl;
				ruleSet.print(cout);
				cout<<endl;
			}
			erSet.clear();
			int count=0;
			ifstream textStream(args.value("i").c_str());
			if((!textStream.good())||textStream.eof())usage();
			while(!textStream.eof())
			{
				string curline;
				getline(textStream, curline);
				if(curline=="")continue;
				//cerr<<count++<<":"<<curline<<endl;
				vector<Tree*> trees;
				Forest forest(curline);
				forest.io(ruleSet,erSet);
			}
			ruleSet.clear();
			erSet.thresholding(threshold);
			erSet.makeRuleSet(ruleSet);

			textStream.close();
		}
		cerr<<"new grammar generated!"<<endl;
		erSet.print(cout);
	}
	else if(args.is_set("lapcfg"))
	{
		if(!args.is_set("i"))usage();

		string grammar_directory="chn_grammar";
		if(args.is_set("data"))
			grammar_directory=args.value("data");
#ifdef WIN32
		grammar_directory+="\\level";
#else
		grammar_directory+="/level";
#endif
		int level=6;
		if(args.is_set("grammarLevel"))
			level=atoi(args.value("grammarLevel").c_str())+1;
		BerkeleyRuleSets ruleSets;
		ruleSets.init(grammar_directory,level);
		loading_time+=clock()-alltime;
		ifstream textStream(args.value("i").c_str());
		if(!textStream.good())usage();
		int nbest=1;
		if(args.is_set("n")) 
			nbest=atoi(args.value("n").c_str());
		int dlevel=0;
		if(args.is_set("debug"))
			dlevel=atoi(args.value("debug").c_str());

		ObjectFunctionType oft=MAX_RULE_PRODUCT;
		if(args.is_set("oft"))
			oft=string2oft(args.value("oft"));

		//cerr<<"rule loaded!"<<endl;
		for(int i=0;(size_t)i<ruleSets.size();i++)
		{
		//	ruleSets[i].save(intToString(i)+".temp");
		}		

		int start=0;
		double stop=1E10;
		if(args.is_set("range"))
		{
			string range=args.value("range");
			start=atoi(range.substr(0,range.find("-")).c_str());
			stop=atof(range.substr(range.find("-")+1).c_str());
			cerr<<"start:"<<start<<",stop:"<<stop<<endl;
		}

		int count=0;
		while(!textStream.eof())
		{
			cerr<<++count<<endl;
			//getchar();
			string curline;
			getline(textStream, curline);
			if(curline=="")continue;
			if(count<start)continue;
			if(count>stop)break;

			vector<Tree*> trees;
			Forest forest(curline);
			forest.berkeley_viterbi_coarse2fine(ruleSets,oft);

			string rootSymbol="ROOT";
			
			if(args.is_set("printForest"))
			{

				if(forest.topS(rootSymbol)==NULL)
				{
					cerr<<"parse failed!"<<endl;
					cout<<"sentence "<<count<<" :"<<endl;
					cout<<curline<<endl;
					cout<<"\n"<<endl;
					continue;
				}

				forest.io_afterParse(rootSymbol,MAX);
				//cerr<<"finished viterbi io"<<endl;
				double threshold=10;
				int nbest4threshold=100;

				if(args.is_set("threshold"))
					threshold=atof(args.value("threshold").c_str());
				else 
				{	
					if(args.is_set("nbest4threshold"))
						nbest4threshold=atoi(args.value("nbest4threshold").c_str());
					//cerr<<"computing threshold:"<<endl;
					double bestscore,lastscore;
					bestscore=lastscore=0;
					if(forest.topS(rootSymbol)!=NULL)
					{
						forest.topS(rootSymbol)->getNthBest(1,bestscore);
						lastscore=bestscore;
						forest.topS(rootSymbol)->getNthBest(nbest4threshold,lastscore);		
						threshold=bestscore-lastscore;
					}
				}
				if(threshold>0)
				{
					cerr<<"threshold : "<<threshold<<endl;
					forest.prune(rootSymbol,threshold);
					//cerr<<"finished prune"<<endl;
				}
				forest.replace_interLabel(Berkeley);
				
				cout<<"sentence "<<count<<" :"<<endl;
				cout<<curline<<endl;
				forest.print_hyperedges(cout);
				cout<<endl;
				continue;
			}

			if(nbest>1)
			{
				cout<<"sentence "<<count<<": \n"<<curline<<endl;
				cout<<nbest<<" best:"<<endl;
			}
			if(oft==NONE)
				forest.genTrees(nbest,trees,"ROOT_0");
			else
				forest.genTrees(nbest,trees,"ROOT");

			if(trees.size()==0)
				cout<<"(())"<<endl;
			else
			for(int i=0;(size_t)i<trees.size();i++)
			{
				//trees[i]->tinyPrint(cout);
				//	cout<<endl;
				if(!args.is_set("interNode"))
					trees[i]->delInterNode();
				if(dlevel>0)
				{
					trees[i]->print(cout);
					cout<<endl;
				}
				else
				{
					trees[i]->tinyPrint(cout);
					cout<<endl;
				}
				trees[i]->destroy();
			}
			
		}	
		alltime=clock()-alltime;
		//seconds=time(NULL)-seconds;
		cerr<<"all time:"<<(double)alltime/CLOCKS_PER_SEC<<"s"<<endl;
		cerr<<"rule loading time:"<<(double)loading_time/CLOCKS_PER_SEC<<"s"<<endl<<endl;

		cerr<<"init binary rule time:"<<(double)init_bitime/CLOCKS_PER_SEC<<"s"<<endl;
		cerr<<"init unary rule time:"<<(double)init_unatime/CLOCKS_PER_SEC<<"s"<<endl<<endl;

		cerr<<"middle binary rule time:"<<(double)bitime/CLOCKS_PER_SEC<<"s"<<endl;
		cerr<<"middle unary rule time"<<(double)unatime/CLOCKS_PER_SEC<<"s"<<endl<<endl;

		cerr<<"final binary rule time:"<<(double)final_bitime/CLOCKS_PER_SEC<<"s"<<endl;
		cerr<<"final unary rule time"<<(double)final_unatime/CLOCKS_PER_SEC<<"s"<<endl<<endl;
		
		cerr<<"set unary node time:"<<(double)setutime/CLOCKS_PER_SEC<<"s"<<endl;
		cerr<<"query time:"<<(double)qutime/CLOCKS_PER_SEC<<"s"<<endl;
		cerr<<"inside binart rule time:"<<(double)inbitime/CLOCKS_PER_SEC<<"s"<<endl;
		cerr<<"init time:"<<(double)initime/CLOCKS_PER_SEC<<"s"<<endl;
	}
	
	return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xd58, %rsp            # imm = 0xD58
movq %rsi, %rdx
movl %edi, %esi
leaq 0x68(%rsp), %rdi
callq 0x2c9e0
xorl %eax, %eax
movq %rax, 0x24b94(%rip)     # 0x56320
movq %rax, 0x24bbd(%rip)     # 0x56350
movq %rax, 0x24bbe(%rip)     # 0x56358
movq %rax, 0x24bbf(%rip)     # 0x56360
movq %rax, 0x24bc0(%rip)     # 0x56368
movq %rax, 0x24bc1(%rip)     # 0x56370
movq %rax, 0x24b72(%rip)     # 0x56328
callq 0x31c0
movq %rax, 0x24b66(%rip)     # 0x56328
leaq 0x910(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10478(%rip), %rsi     # 0x41c4d
leaq 0x10476(%rip), %rdx     # 0x41c52
leaq 0x900(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x900(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x900(%rsp), %rdi
cmpq %r15, %rdi
je 0x3181a
movq 0x910(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x318b5
leaq 0x8f0(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10418(%rip), %rsi     # 0x41c4d
leaq 0x10416(%rip), %rdx     # 0x41c52
leaq 0x8e0(%rsp), %rdi
callq 0xb8a2
leaq 0xb50(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x8e0(%rsp), %rdx
callq 0x2cdf2
leaq 0xb60(%rsp), %r14
movq -0x10(%r14), %rbx
movq %rbx, %rdi
callq 0x3450
leaq 0x24a92(%rip), %rcx     # 0x56310
movl %eax, (%rcx)
cmpq %r14, %rbx
je 0x31898
movq 0xb60(%rsp), %rsi
incq %rsi
movq %rbx, %rdi
callq 0x32e0
movq 0x8e0(%rsp), %rdi
cmpq %r15, %rdi
je 0x318b5
movq 0x8f0(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x8d0(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x101a2(%rip), %rsi     # 0x41a6a
leaq 0x1019f(%rip), %rdx     # 0x41a6e
leaq 0x8c0(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x8c0(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebp
movb $0x1, %bl
testb %al, %al
jne 0x31934
leaq 0x8b0(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x10349(%rip), %rsi     # 0x41c53
leaq 0x10344(%rip), %rdx     # 0x41c55
leaq 0x8a0(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x8a0(%rsp), %rsi
callq 0x2cddc
testb %al, %al
je 0x31938
xorl %eax, %eax
jmp 0x31975
leaq 0x890(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x1030b(%rip), %rsi     # 0x41c56
leaq 0x1030a(%rip), %rdx     # 0x41c5c
leaq 0x880(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x880(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movb $0x1, %al
testb %al, %al
je 0x3199a
leaq 0x890(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x3199a
movq 0x890(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bpl, %bpl
jne 0x319c0
leaq 0x8b0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x319c0
movq 0x8b0(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x8c0(%rsp), %rdi
cmpq %r15, %rdi
je 0x319dd
movq 0x8d0(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x34958
leaq 0x870(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10265(%rip), %rsi     # 0x41c5d
leaq 0x10268(%rip), %rdx     # 0x41c67
leaq 0x860(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x860(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x860(%rsp), %rdi
cmpq %r15, %rdi
je 0x31a3d
movq 0x870(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x31ad8
leaq 0x850(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10205(%rip), %rsi     # 0x41c5d
leaq 0x10208(%rip), %rdx     # 0x41c67
leaq 0x840(%rsp), %rdi
callq 0xb8a2
leaq 0xb50(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x840(%rsp), %rdx
callq 0x2cdf2
leaq 0xb60(%rsp), %r14
movq -0x10(%r14), %rbx
movq %rbx, %rdi
callq 0x3450
leaq 0x2483b(%rip), %rcx     # 0x562dc
movl %eax, (%rcx)
cmpq %r14, %rbx
je 0x31abb
movq 0xb60(%rsp), %rsi
incq %rsi
movq %rbx, %rdi
callq 0x32e0
movq 0x840(%rsp), %rdi
cmpq %r15, %rdi
je 0x31ad8
movq 0x850(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x830(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xff7f(%rip), %rsi      # 0x41a6a
leaq 0xff7c(%rip), %rdx      # 0x41a6e
leaq 0x820(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x820(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x820(%rsp), %rdi
cmpq %r15, %rdi
je 0x31b30
movq 0x830(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x31bbc
leaq 0x810(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10369(%rip), %rsi     # 0x41eb4
leaq 0x10363(%rip), %rdx     # 0x41eb5
leaq 0x800(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x800(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebp
testb %al, %al
je 0x31ca0
leaq 0x7f0(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x100bc(%rip), %rsi     # 0x41c4b
leaq 0x100b6(%rip), %rdx     # 0x41c4c
leaq 0x7e0(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x7e0(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
jmp 0x31ca2
leaq 0x710(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10084(%rip), %rsi     # 0x41c53
leaq 0x1007f(%rip), %rdx     # 0x41c55
leaq 0x700(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x700(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x700(%rsp), %rdi
cmpq %r15, %rdi
je 0x31c14
movq 0x710(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x320d5
leaq 0x6f0(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x10285(%rip), %rsi     # 0x41eb4
leaq 0x1027f(%rip), %rdx     # 0x41eb5
leaq 0x6e0(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x6e0(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebp
testb %al, %al
je 0x32a9b
leaq 0x6d0(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xffd8(%rip), %rsi      # 0x41c4b
leaq 0xffd2(%rip), %rdx      # 0x41c4c
leaq 0x6c0(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x6c0(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
jmp 0x32a9d
xorl %ebx, %ebx
testb %bpl, %bpl
je 0x31cc8
leaq 0x7f0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x31cc8
movq 0x7f0(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x800(%rsp), %rdi
cmpq %r15, %rdi
je 0x31ce5
movq 0x810(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x34958
leaq 0x7d0(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0x101b4(%rip), %rsi     # 0x41eb4
leaq 0x101ae(%rip), %rdx     # 0x41eb5
leaq 0x7c0(%rsp), %rdi
callq 0xb8a2
leaq 0x940(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x7c0(%rsp), %rdx
callq 0x2cdf2
movq 0x940(%rsp), %rsi
leaq 0xb50(%rsp), %rdi
movl $0x8, %edx
callq 0x3550
leaq 0x950(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x31d69
movq 0x950(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x7c0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x31d86
movq 0x7d0(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x24263(%rip), %rbx     # 0x55ff0
leaq 0xfed4(%rip), %rsi      # 0x41c68
movl $0x9, %edx
movq %rbx, %rdi
callq 0x3350
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq 0x24231(%rip), %rdi     # 0x55ff0
callq 0x3030
movq %rax, %rdi
callq 0x31e0
leaq 0xf8(%rsp), %rdi
leaq 0xb50(%rsp), %rsi
callq 0x3d976
movq 0x24208(%rip), %rbx     # 0x55ff0
leaq 0xfe83(%rip), %rsi      # 0x41c72
movl $0x4, %edx
movq %rbx, %rdi
callq 0x3350
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq 0x241d6(%rip), %rdi     # 0x55ff0
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x241a2(%rip), %rsi     # 0x55fd0
leaq 0xf8(%rsp), %rdi
callq 0x35626
leaq 0x7b0(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0xfdfd(%rip), %rsi      # 0x41c4b
leaq 0xfdf7(%rip), %rdx      # 0x41c4c
leaq 0x7a0(%rsp), %rdi
callq 0xb8a2
leaq 0xa8(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x7a0(%rsp), %rdx
callq 0x2cdf2
movq 0xa8(%rsp), %rsi
leaq 0x940(%rsp), %rdi
movl $0x8, %edx
callq 0x3550
leaq 0xb8(%rsp), %r15
movq -0x10(%r15), %rdi
cmpq %r15, %rdi
je 0x31eb7
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x7a0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x31ed4
movq 0x7b0(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x940(%rsp), %rax
movq -0x18(%rax), %rax
cmpl $0x0, 0x960(%rsp,%rax)
jne 0x3495d
leaq 0x790(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xf249(%rip), %rsi      # 0x4114b
leaq 0xf243(%rip), %rdx      # 0x4114c
leaq 0x780(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x780(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x780(%rsp), %rdi
cmpq %r12, %rdi
je 0x31f47
movq 0x790(%rsp), %rsi
incq %rsi
callq 0x32e0
movl $0x1, (%rsp)
testb %bl, %bl
je 0x31fe0
leaq 0x770(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xf1e1(%rip), %rsi      # 0x4114b
leaq 0xf1db(%rip), %rdx      # 0x4114c
leaq 0x760(%rsp), %rdi
callq 0xb8a2
leaq 0xa8(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x760(%rsp), %rdx
callq 0x2cdf2
movq 0xa8(%rsp), %rbx
movq %rbx, %rdi
callq 0x3450
movl %eax, (%rsp)
cmpq %r15, %rbx
je 0x31fc3
movq 0xb8(%rsp), %rsi
incq %rsi
movq %rbx, %rdi
callq 0x32e0
movq 0x760(%rsp), %rdi
cmpq %r12, %rdi
je 0x31fe0
movq 0x770(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x750(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xfc59(%rip), %rsi      # 0x41c4d
leaq 0xfc57(%rip), %rdx      # 0x41c52
leaq 0x740(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x740(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x740(%rsp), %rdi
cmpq %r12, %rdi
je 0x32039
movq 0x750(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x32764
leaq 0x730(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xfbf8(%rip), %rsi      # 0x41c4d
leaq 0xfbf6(%rip), %rdx      # 0x41c52
leaq 0x720(%rsp), %rdi
callq 0xb8a2
leaq 0xa8(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x720(%rsp), %rdx
callq 0x2cdf2
movq 0xa8(%rsp), %r14
movq %r14, %rdi
callq 0x3450
movl %eax, %ebx
cmpq %r15, %r14
je 0x320ad
movq 0xb8(%rsp), %rsi
incq %rsi
movq %r14, %rdi
callq 0x32e0
movq 0x720(%rsp), %rdi
cmpq %r12, %rdi
je 0x320ca
movq 0x730(%rsp), %rsi
incq %rsi
callq 0x32e0
testl %ebx, %ebx
setg %r12b
jmp 0x32767
leaq 0x5d0(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xfb6e(%rip), %rsi      # 0x41c56
leaq 0xfb6d(%rip), %rdx      # 0x41c5c
leaq 0x5c0(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x5c0(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x5c0(%rsp), %rdi
cmpq %r15, %rdi
je 0x3212d
movq 0x5d0(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x33291
leaq 0x5b0(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xfb03(%rip), %rsi      # 0x41c4b
leaq 0xfafd(%rip), %rdx      # 0x41c4c
leaq 0x5a0(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x5a0(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x5a0(%rsp), %rdi
cmpq %r15, %rdi
je 0x3218d
movq 0x5b0(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x34958
leaq 0xb8(%rsp), %rax
movq %rax, -0x10(%rax)
leaq 0xfb06(%rip), %rsi      # 0x41cae
leaq 0xfb0a(%rip), %rdx      # 0x41cb9
leaq 0xa8(%rsp), %rdi
callq 0xb8a2
leaq 0x590(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xfaeb(%rip), %rsi      # 0x41cba
leaq 0xfae8(%rip), %rdx      # 0x41cbe
leaq 0x580(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x580(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x580(%rsp), %rdi
cmpq %r15, %rdi
je 0x32214
movq 0x590(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x322b2
leaq 0x570(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xfa8b(%rip), %rsi      # 0x41cba
leaq 0xfa88(%rip), %rdx      # 0x41cbe
leaq 0x560(%rsp), %rdi
callq 0xb8a2
leaq 0xb50(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x560(%rsp), %rdx
callq 0x2cdf2
leaq 0xa8(%rsp), %rdi
leaq 0xb50(%rsp), %rbx
movq %rbx, %rsi
callq 0x3380
movq (%rbx), %rdi
leaq 0xb60(%rsp), %rax
cmpq %rax, %rdi
je 0x32295
movq 0xb60(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x560(%rsp), %rdi
cmpq %r15, %rdi
je 0x322b2
movq 0x570(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0xfa06(%rip), %rsi      # 0x41cbf
leaq 0xa8(%rsp), %rdi
callq 0x3570
leaq 0x550(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0xf9ed(%rip), %rsi      # 0x41cc6
leaq 0xf9f2(%rip), %rdx      # 0x41cd2
leaq 0x540(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x540(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebp
movq 0x540(%rsp), %rdi
cmpq %rbx, %rdi
je 0x3231e
movq 0x550(%rsp), %rsi
incq %rsi
callq 0x32e0
movl $0x6, %ebx
testb %bpl, %bpl
je 0x323bb
leaq 0x530(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xf987(%rip), %rsi      # 0x41cc6
leaq 0xf98c(%rip), %rdx      # 0x41cd2
leaq 0x520(%rsp), %rdi
callq 0xb8a2
leaq 0xb50(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x520(%rsp), %rdx
callq 0x2cdf2
leaq 0xb60(%rsp), %r12
movq -0x10(%r12), %r14
movq %r14, %rdi
callq 0x3450
movl %eax, %ebx
cmpq %r12, %r14
je 0x3239c
movq 0xb60(%rsp), %rsi
incq %rsi
movq %r14, %rdi
callq 0x32e0
movq 0x520(%rsp), %rdi
cmpq %r15, %rdi
je 0x323b9
movq 0x530(%rsp), %rsi
incq %rsi
callq 0x32e0
incl %ebx
xorpd %xmm0, %xmm0
leaq 0x960(%rsp), %rax
movapd %xmm0, -0x20(%rax)
xorl %ecx, %ecx
movq %rcx, -0x10(%rax)
movl %ecx, (%rax)
movq %rcx, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
movq %rcx, 0x20(%rax)
leaq 0x990(%rsp), %rax
movl %ecx, (%rax)
movq %rcx, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
movq %rcx, 0x20(%rax)
leaq 0x9c0(%rsp), %rax
movl %ecx, (%rax)
movq %rcx, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
movq %rcx, 0x20(%rax)
leaq 0x9f0(%rsp), %rax
movl %ecx, (%rax)
movq %rcx, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
movq %rcx, 0x20(%rax)
leaq 0xa20(%rsp), %rax
movl %ecx, (%rax)
movq %rcx, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
movapd %xmm0, 0x30(%rax)
movapd %xmm0, 0x20(%rax)
leaq 0x510(%rsp), %r15
movq %r15, -0x10(%r15)
movq 0xa8(%rsp), %rsi
movq 0xb0(%rsp), %rdx
addq %rsi, %rdx
leaq 0x500(%rsp), %rdi
callq 0x6a88
leaq 0x940(%rsp), %rdi
leaq 0x500(%rsp), %rsi
movl %ebx, %edx
callq 0xfbc8
movq 0x500(%rsp), %rdi
cmpq %r15, %rdi
je 0x324b2
movq 0x510(%rsp), %rsi
incq %rsi
callq 0x32e0
callq 0x31c0
subq 0x23e6a(%rip), %rax     # 0x56328
addq %rax, 0x23eb3(%rip)     # 0x56378
leaq 0x4f0(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0xf773(%rip), %rsi      # 0x41c4b
leaq 0xf76d(%rip), %rdx      # 0x41c4c
leaq 0x4e0(%rsp), %rdi
callq 0xb8a2
leaq 0xf8(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x4e0(%rsp), %rdx
callq 0x2cdf2
movq 0xf8(%rsp), %rsi
leaq 0xb50(%rsp), %rdi
movl $0x8, %edx
callq 0x3550
leaq 0x108(%rsp), %r15
movq -0x10(%r15), %rdi
cmpq %r15, %rdi
je 0x32541
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x4e0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x3255e
movq 0x4f0(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0xb50(%rsp), %rax
movq -0x18(%rax), %rax
cmpl $0x0, 0xb70(%rsp,%rax)
jne 0x34962
leaq 0x4d0(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xebbf(%rip), %rsi      # 0x4114b
leaq 0xebb9(%rip), %rdx      # 0x4114c
leaq 0x4c0(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x4c0(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x4c0(%rsp), %rdi
cmpq %r12, %rdi
je 0x325d1
movq 0x4d0(%rsp), %rsi
incq %rsi
callq 0x32e0
movl $0x1, 0x4(%rsp)
testb %bl, %bl
je 0x3266c
leaq 0x4b0(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xeb56(%rip), %rsi      # 0x4114b
leaq 0xeb50(%rip), %rdx      # 0x4114c
leaq 0x4a0(%rsp), %rdi
callq 0xb8a2
leaq 0xf8(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x4a0(%rsp), %rdx
callq 0x2cdf2
movq 0xf8(%rsp), %rbx
movq %rbx, %rdi
callq 0x3450
movl %eax, 0x4(%rsp)
cmpq %r15, %rbx
je 0x3264f
movq 0x108(%rsp), %rsi
incq %rsi
movq %rbx, %rdi
callq 0x32e0
movq 0x4a0(%rsp), %rdi
cmpq %r12, %rdi
je 0x3266c
movq 0x4b0(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x490(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xf5cd(%rip), %rsi      # 0x41c4d
leaq 0xf5cb(%rip), %rdx      # 0x41c52
leaq 0x480(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x480(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x480(%rsp), %rdi
cmpq %r12, %rdi
je 0x326c5
movq 0x490(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x332af
leaq 0x470(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xf56c(%rip), %rsi      # 0x41c4d
leaq 0xf56a(%rip), %rdx      # 0x41c52
leaq 0x460(%rsp), %rdi
callq 0xb8a2
leaq 0xf8(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x460(%rsp), %rdx
callq 0x2cdf2
movq 0xf8(%rsp), %r14
movq %r14, %rdi
callq 0x3450
movl %eax, %ebx
cmpq %r15, %r14
je 0x32739
movq 0x108(%rsp), %rsi
incq %rsi
movq %r14, %rdi
callq 0x32e0
movq 0x460(%rsp), %rdi
cmpq %r12, %rdi
je 0x32756
movq 0x470(%rsp), %rsi
incq %rsi
callq 0x32e0
testl %ebx, %ebx
setg %al
movl %eax, 0x8(%rsp)
jmp 0x332b7
xorl %r12d, %r12d
movq 0x940(%rsp), %rax
movq -0x18(%rax), %rcx
testb $0x2, 0x960(%rsp,%rcx)
jne 0x32a89
addq $-0x18, %rax
movq $0x0, 0x8(%rsp)
leaq 0x320(%rsp), %rbp
leaq 0xa8(%rsp), %r13
movq 0x2382b(%rip), %rbx     # 0x55fd0
leaq 0x300(%rsp), %r14
movl %r12d, 0x30(%rsp)
movq %rbx, %r12
movq %r14, %rbx
movq %r13, %r14
movq %rbp, %r13
leaq 0x48(%rsp), %rcx
movq %rcx, 0x38(%rsp)
movq $0x0, 0x40(%rsp)
movb $0x0, 0x48(%rsp)
movq (%rax), %rdi
leaq 0x940(%rsp), %r15
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
leaq 0x38(%rsp), %rbp
movsbl %al, %edx
movq %r15, %rdi
movq %rbp, %rsi
callq 0x3560
movq 0x8(%rsp), %rax
incl %eax
movq %rax, 0x8(%rsp)
movq %rbp, %rdi
leaq 0xf67f(%rip), %rsi      # 0x41e96
callq 0x30c0
testl %eax, %eax
movq %r13, %rbp
movq %r14, %r13
movq %rbx, %r14
movq %r12, %rbx
movl 0x30(%rsp), %r12d
je 0x32a4f
xorpd %xmm0, %xmm0
movapd %xmm0, 0x10(%rsp)
movq $0x0, 0x20(%rsp)
leaq 0x330(%rsp), %rax
movq %rax, 0x320(%rsp)
movq 0x38(%rsp), %rsi
movq 0x40(%rsp), %rdx
addq %rsi, %rdx
movq %rbp, %rdi
callq 0x6a88
movq %r13, %rdi
movq %rbp, %rsi
callq 0x2659c
movq 0x320(%rsp), %rdi
leaq 0x330(%rsp), %rax
cmpq %rax, %rdi
je 0x3289d
movq 0x330(%rsp), %rsi
incq %rsi
callq 0x32e0
movq %r13, %rdi
leaq 0xf8(%rsp), %rsi
callq 0x29f32
cmpl $0x2, (%rsp)
jl 0x32974
movl $0x9, %edx
movq %rbx, %rdi
leaq 0xf3b1(%rip), %rsi      # 0x41c77
callq 0x3350
movq %rbx, %rdi
movq 0x8(%rsp), %rsi
callq 0x3500
movq %rax, %r15
movl $0x3, %edx
movq %rax, %rdi
leaq 0xf397(%rip), %rsi      # 0x41c81
callq 0x3350
movq 0x38(%rsp), %rsi
movq 0x40(%rsp), %rdx
movq %r15, %rdi
callq 0x3350
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq %rbx, %rdi
movl (%rsp), %esi
callq 0x3500
movq %rax, %r15
movl $0x6, %edx
movq %rax, %rdi
leaq 0xf33d(%rip), %rsi      # 0x41c85
callq 0x3350
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
leaq 0x310(%rsp), %rax
movq %rax, 0x300(%rsp)
movq %r14, %rdi
leaq 0xeb1c(%rip), %rsi      # 0x414aa
leaq 0xeb19(%rip), %rdx      # 0x414ae
callq 0xb8a2
movq %r13, %rdi
movl (%rsp), %esi
leaq 0x10(%rsp), %rdx
movq %r14, %rcx
callq 0x2a600
movq 0x300(%rsp), %rdi
leaq 0x310(%rsp), %rax
cmpq %rax, %rdi
je 0x329d2
movq 0x310(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x10(%rsp), %rax
cmpq %rax, 0x18(%rsp)
je 0x32a23
xorl %r15d, %r15d
movq (%rax,%r15,8), %rdi
testb %r12b, %r12b
je 0x329f4
movq %rbx, %rsi
callq 0x3e644
jmp 0x329fc
movq %rbx, %rsi
callq 0x3f55a
movq 0x10(%rsp), %rax
movq (%rax,%r15,8), %rdi
callq 0x3fa86
incq %r15
movq 0x10(%rsp), %rax
movq 0x18(%rsp), %rcx
subq %rax, %rcx
sarq $0x3, %rcx
cmpq %r15, %rcx
ja 0x329e1
leaq 0xc0(%rsp), %rdi
callq 0x611e
movq %r13, %rdi
callq 0x2ac8a
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x32a4f
movq 0x20(%rsp), %rsi
subq %rdi, %rsi
callq 0x32e0
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x32a6b
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x940(%rsp), %rax
movq -0x18(%rax), %rcx
addq $-0x18, %rax
testb $0x2, 0x960(%rsp,%rcx)
je 0x327b2
leaq 0x940(%rsp), %rdi
callq 0x30a0
jmp 0x3326a
xorl %ebx, %ebx
testb %bpl, %bpl
je 0x32ac3
leaq 0x6d0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x32ac3
movq 0x6d0(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x6e0(%rsp), %rdi
cmpq %r15, %rdi
je 0x32ae0
movq 0x6f0(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
je 0x34958
leaq 0x6b0(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xf3b9(%rip), %rsi      # 0x41eb4
leaq 0xf3b3(%rip), %rdx      # 0x41eb5
leaq 0x6a0(%rsp), %rdi
callq 0xb8a2
leaq 0x940(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x6a0(%rsp), %rdx
callq 0x2cdf2
movq 0x940(%rsp), %rsi
leaq 0xb50(%rsp), %rdi
movl $0x8, %edx
callq 0x3550
leaq 0x950(%rsp), %rbx
movq -0x10(%rbx), %rdi
cmpq %rbx, %rdi
je 0x32b64
movq 0x950(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x6a0(%rsp), %rdi
cmpq %r15, %rdi
je 0x32b81
movq 0x6b0(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0xf8(%rsp), %rdi
leaq 0xb50(%rsp), %rsi
callq 0x3d976
leaq 0x690(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xf0a4(%rip), %rsi      # 0x41c4d
leaq 0xf0a2(%rip), %rdx      # 0x41c52
leaq 0x680(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x680(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebp
movq 0x680(%rsp), %rdi
cmpq %r15, %rdi
je 0x32bee
movq 0x690(%rsp), %rsi
incq %rsi
callq 0x32e0
movb $0x1, 0x30(%rsp)
testb %bpl, %bpl
je 0x32c8b
leaq 0x670(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xf03e(%rip), %rsi      # 0x41c4d
leaq 0xf03c(%rip), %rdx      # 0x41c52
leaq 0x660(%rsp), %rdi
callq 0xb8a2
leaq 0x940(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x660(%rsp), %rdx
callq 0x2cdf2
movq 0x940(%rsp), %r14
movq %r14, %rdi
callq 0x3450
movl %eax, %ebp
cmpq %rbx, %r14
je 0x32c67
movq 0x950(%rsp), %rsi
incq %rsi
movq %r14, %rdi
callq 0x32e0
movq 0x660(%rsp), %rdi
cmpq %r15, %rdi
je 0x32c84
movq 0x670(%rsp), %rsi
incq %rsi
callq 0x32e0
testl %ebp, %ebp
sete 0x30(%rsp)
leaq 0x650(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xefee(%rip), %rsi      # 0x41c8c
leaq 0xefeb(%rip), %rdx      # 0x41c90
leaq 0x640(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x640(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebp
movq 0x640(%rsp), %rdi
cmpq %r15, %rdi
je 0x32ce3
movq 0x650(%rsp), %rsi
incq %rsi
callq 0x32e0
movl $0x1, (%rsp)
testb %bpl, %bpl
je 0x32d7c
leaq 0x630(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xef86(%rip), %rsi      # 0x41c8c
leaq 0xef83(%rip), %rdx      # 0x41c90
leaq 0x620(%rsp), %rdi
callq 0xb8a2
leaq 0x940(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x620(%rsp), %rdx
callq 0x2cdf2
movq 0x940(%rsp), %r14
movq %r14, %rdi
callq 0x3450
movl %eax, (%rsp)
cmpq %rbx, %r14
je 0x32d5f
movq 0x950(%rsp), %rsi
incq %rsi
movq %r14, %rdi
callq 0x32e0
movq 0x620(%rsp), %rdi
cmpq %r15, %rdi
je 0x32d7c
movq 0x630(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x610(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xef81(%rip), %rsi      # 0x41d10
leaq 0xef83(%rip), %rdx      # 0x41d19
leaq 0x600(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x600(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebp
movq 0x600(%rsp), %rdi
cmpq %r15, %rdi
je 0x32dd4
movq 0x610(%rsp), %rsi
incq %rsi
callq 0x32e0
xorpd %xmm0, %xmm0
movsd %xmm0, 0x98(%rsp)
testb %bpl, %bpl
je 0x32e79
leaq 0x5f0(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0xef13(%rip), %rsi      # 0x41d10
leaq 0xef15(%rip), %rdx      # 0x41d19
leaq 0x5e0(%rsp), %rdi
callq 0xb8a2
leaq 0x940(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x5e0(%rsp), %rdx
callq 0x2cdf2
movq 0x940(%rsp), %r14
movq %r14, %rdi
callq 0x3390
movsd %xmm0, 0x98(%rsp)
cmpq %rbx, %r14
je 0x32e5c
movq 0x950(%rsp), %rsi
incq %rsi
movq %r14, %rdi
callq 0x32e0
movq 0x5e0(%rsp), %rdi
cmpq %r15, %rdi
je 0x32e79
movq 0x5f0(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0xb0(%rsp), %rax
movl $0x0, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
movq $0x0, 0x8(%rsp)
movq %rcx, 0x20(%rax)
cmpl $0x0, (%rsp)
jle 0x33203
leaq 0x20(%rsp), %rbx
leaq 0x38(%rsp), %rbp
leaq 0x10(%rsp), %r13
leaq 0x2c0(%rsp), %r12
leaq 0x2a0(%rsp), %r14
cmpb $0x0, 0x30(%rsp)
jne 0x32f6f
movl $0x5, %edx
movq 0x230ee(%rip), %rdi     # 0x55fd0
leaq 0xeda8(%rip), %rsi      # 0x41c91
callq 0x3350
movq 0x230db(%rip), %rdi     # 0x55fd0
movq 0x8(%rsp), %rsi
callq 0x3500
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
leaq 0xf8(%rsp), %rdi
movq 0x23098(%rip), %rsi     # 0x55fd0
callq 0x35626
movq 0x2308c(%rip), %rcx     # 0x55fd0
movq (%rcx), %rax
movq -0x18(%rax), %rdi
addq %rcx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq 0x2306e(%rip), %rdi     # 0x55fd0
callq 0x3030
movq %rax, %rdi
callq 0x31e0
leaq 0xa8(%rsp), %rdi
callq 0x358a8
leaq 0x2f0(%rsp), %rax
movq %rax, 0x2e0(%rsp)
leaq 0x2e0(%rsp), %r15
movq %r15, %rdi
leaq 0xecad(%rip), %rsi      # 0x41c4b
leaq 0xeca7(%rip), %rdx      # 0x41c4c
callq 0xb8a2
movq %rbp, %rdi
leaq 0x68(%rsp), %rsi
movq %r15, %rdx
callq 0x2cdf2
movq 0x38(%rsp), %rsi
leaq 0x940(%rsp), %rdi
movl $0x8, %edx
callq 0x3550
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x32fed
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x2e0(%rsp), %rdi
leaq 0x2f0(%rsp), %rax
cmpq %rax, %rdi
je 0x33012
movq 0x2f0(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x940(%rsp), %rax
movq -0x18(%rax), %rax
cmpl $0x0, 0x960(%rsp,%rax)
jne 0x34953
movq 0x940(%rsp), %rax
movq -0x18(%rax), %rcx
testb $0x2, 0x960(%rsp,%rcx)
jne 0x3319c
addq $-0x18, %rax
movq %rbx, 0x10(%rsp)
movq $0x0, 0x18(%rsp)
movb $0x0, 0x20(%rsp)
movq (%rax), %rdi
leaq 0x940(%rsp), %r15
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %edx
movq %r15, %rdi
movq %r13, %rsi
callq 0x3560
movq %r13, %rdi
leaq 0xee09(%rip), %rsi      # 0x41e96
callq 0x30c0
testl %eax, %eax
je 0x33167
leaq 0x2d0(%rsp), %rax
movq %rax, 0x2c0(%rsp)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
addq %rsi, %rdx
movq %r12, %rdi
callq 0x6a88
movq %rbp, %rdi
movq %r12, %rsi
callq 0x2659c
movq 0x2c0(%rsp), %rdi
leaq 0x2d0(%rsp), %rax
cmpq %rax, %rdi
je 0x330ef
movq 0x2d0(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x2b0(%rsp), %rax
movq %rax, 0x2a0(%rsp)
movq %r14, %rdi
leaq 0xe3a1(%rip), %rsi      # 0x414aa
leaq 0xe39e(%rip), %rdx      # 0x414ae
callq 0xb8a2
movq %rbp, %rdi
leaq 0xf8(%rsp), %rsi
leaq 0xa8(%rsp), %rdx
movq %r14, %rcx
callq 0x2a164
movq 0x2a0(%rsp), %rdi
leaq 0x2b0(%rsp), %rax
cmpq %rax, %rdi
je 0x33155
movq 0x2b0(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x50(%rsp), %rdi
callq 0x611e
movq %rbp, %rdi
callq 0x2ac8a
movq 0x10(%rsp), %rdi
cmpq %rbx, %rdi
je 0x3317e
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x940(%rsp), %rax
movq -0x18(%rax), %rcx
addq $-0x18, %rax
testb $0x2, 0x960(%rsp,%rcx)
je 0x3304a
leaq 0xf8(%rsp), %rdi
callq 0x19e80
leaq 0xa8(%rsp), %rdi
movsd 0x98(%rsp), %xmm0
callq 0x19d48
leaq 0xa8(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x19c8e
leaq 0x940(%rsp), %rdi
callq 0x3080
leaq 0x940(%rsp), %rdi
callq 0x30a0
movq 0x8(%rsp), %rax
incl %eax
movq %rax, 0x8(%rsp)
cmpl (%rsp), %eax
jne 0x32ecb
movq 0x22de6(%rip), %rbx     # 0x55ff0
leaq 0xea86(%rip), %rsi      # 0x41c97
movl $0x16, %edx
movq %rbx, %rdi
callq 0x3350
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq 0x22db4(%rip), %rdi     # 0x55ff0
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x22d80(%rip), %rsi     # 0x55fd0
leaq 0xa8(%rsp), %rdi
callq 0x19cd4
leaq 0xa8(%rsp), %rdi
callq 0x357f4
leaq 0x128(%rsp), %rdi
callq 0x19f1e
leaq 0xf8(%rsp), %rdi
callq 0x357e0
leaq 0xb50(%rsp), %rdi
callq 0x30a0
leaq 0x68(%rsp), %rdi
callq 0x2cdca
xorl %eax, %eax
addq $0xd58, %rsp            # imm = 0xD58
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x0, 0x8(%rsp)
leaq 0x450(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xea08(%rip), %rsi      # 0x41cd3
leaq 0xea04(%rip), %rdx      # 0x41cd6
leaq 0x440(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x440(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x440(%rsp), %rdi
cmpq %r12, %rdi
je 0x33310
movq 0x450(%rsp), %rsi
incq %rsi
callq 0x32e0
movl $0x2, 0x98(%rsp)
testb %bl, %bl
je 0x333b9
leaq 0x430(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xe99c(%rip), %rsi      # 0x41cd3
leaq 0xe998(%rip), %rdx      # 0x41cd6
leaq 0x420(%rsp), %rdi
callq 0xb8a2
leaq 0x920(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x420(%rsp), %rdx
callq 0x2cdf2
leaq 0x920(%rsp), %rbx
movq %rbx, %rdi
callq 0x316e2
movl %eax, 0x98(%rsp)
movq (%rbx), %rdi
leaq 0x930(%rsp), %rax
cmpq %rax, %rdi
je 0x3339c
movq 0x930(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x420(%rsp), %rdi
cmpq %r12, %rdi
je 0x333b9
movq 0x430(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x410(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0xe90a(%rip), %rsi      # 0x41cd7
leaq 0xe908(%rip), %rdx      # 0x41cdc
leaq 0x400(%rsp), %rdi
callq 0xb8a2
leaq 0x68(%rsp), %rdi
leaq 0x400(%rsp), %rsi
callq 0x2cddc
movl %eax, %ebx
movq 0x400(%rsp), %rdi
cmpq %r12, %rdi
je 0x33412
movq 0x410(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %bl, %bl
leaq 0xb50(%rsp), %r12
je 0x335cc
leaq 0x3f0(%rsp), %rbx
movq %rbx, -0x10(%rbx)
leaq 0xe8a2(%rip), %rsi      # 0x41cd7
leaq 0xe8a0(%rip), %rdx      # 0x41cdc
leaq 0x3e0(%rsp), %rdi
callq 0xb8a2
leaq 0xf8(%rsp), %rdi
leaq 0x68(%rsp), %rsi
leaq 0x3e0(%rsp), %rdx
callq 0x2cdf2
movq 0x3e0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x33480
movq 0x3f0(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0xe856(%rip), %rsi      # 0x41cdd
leaq 0xf8(%rsp), %rbx
movl $0x1, %ecx
movq %rbx, %rdi
xorl %edx, %edx
callq 0x3510
leaq 0x38(%rsp), %rdi
movq %rbx, %rsi
xorl %edx, %edx
movq %rax, %rcx
callq 0x3300
leaq 0x48(%rsp), %r14
movq -0x10(%r14), %rbx
movq %rbx, %rdi
callq 0x3450
movl %eax, (%rsp)
cmpq %r14, %rbx
je 0x334d9
movq 0x48(%rsp), %rsi
incq %rsi
movq %rbx, %rdi
callq 0x32e0
leaq 0xe7fd(%rip), %rsi      # 0x41cdd
leaq 0xf8(%rsp), %rbx
movl $0x1, %ecx
movq %rbx, %rdi
xorl %edx, %edx
callq 0x3510
leaq 0x1(%rax), %rdx
leaq 0x38(%rsp), %rdi
movq %rbx, %rsi
movq $-0x1, %rcx
callq 0x3300
movq 0x38(%rsp), %rbx
movq %rbx, %rdi
callq 0x3390
movsd %xmm0, 0x30(%rsp)
cmpq %r14, %rbx
je 0x33537
movq 0x48(%rsp), %rsi
incq %rsi
movq %rbx, %rdi
callq 0x32e0
movq 0x22ab2(%rip), %rdi     # 0x55ff0
leaq 0xe79a(%rip), %rsi      # 0x41cdf
movl $0x6, %edx
callq 0x3350
movq 0x22a9a(%rip), %rdi     # 0x55ff0
movl (%rsp), %esi
callq 0x3500
movq %rax, %rbx
leaq 0xe77e(%rip), %rsi      # 0x41ce6
movl $0x6, %edx
movq %rax, %rdi
callq 0x3350
movq %rbx, %rdi
movsd 0x30(%rsp), %xmm0
callq 0x34a0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0xf8(%rsp), %rdi
cmpq %r15, %rdi
je 0x335e1
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x335e1
movsd 0xdfcc(%rip), %xmm0     # 0x415a0
movsd %xmm0, 0x30(%rsp)
movl $0x0, (%rsp)
leaq 0x390(%rsp), %rbp
movq 0x229e0(%rip), %r13     # 0x55fd0
leaq 0x380(%rsp), %r14
xorl %ebx, %ebx
movq 0xb50(%rsp), %rax
movq -0x18(%rax), %rax
testb $0x2, 0xb70(%rsp,%rax)
jne 0x34264
incl %ebx
movq 0x229d3(%rip), %rdi     # 0x55ff0
movl %ebx, %esi
callq 0x3500
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
leaq 0x48(%rsp), %rax
movq %rax, 0x38(%rsp)
movq $0x0, 0x40(%rsp)
movb $0x0, 0x48(%rsp)
movq 0xb50(%rsp), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x32b0
leaq 0x38(%rsp), %r15
movsbl %al, %edx
movq %r12, %rdi
movq %r15, %rsi
callq 0x3560
movq %r15, %rdi
leaq 0xe7fa(%rip), %rsi      # 0x41e96
callq 0x30c0
testl %eax, %eax
sete %al
cmpl (%rsp), %ebx
setl %cl
orb %al, %cl
jne 0x3423c
xorps %xmm0, %xmm0
cvtsi2sd %ebx, %xmm0
movb $0x1, %r15b
ucomisd 0x30(%rsp), %xmm0
ja 0x3423f
xorpd %xmm0, %xmm0
movapd %xmm0, 0xe0(%rsp)
movq $0x0, 0xf0(%rsp)
leaq 0x3d0(%rsp), %r15
movq %r15, 0x3c0(%rsp)
movq 0x38(%rsp), %rsi
movq 0x40(%rsp), %rdx
addq %rsi, %rdx
leaq 0x3c0(%rsp), %r12
movq %r12, %rdi
callq 0x6a88
leaq 0xf8(%rsp), %rdi
movq %r12, %rsi
callq 0x2659c
movq 0x3c0(%rsp), %rdi
cmpq %r15, %rdi
je 0x3373d
movq 0x3d0(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0xf8(%rsp), %rdi
leaq 0x940(%rsp), %rsi
movl 0x98(%rsp), %edx
callq 0x202ee
leaq 0x280(%rsp), %r15
leaq 0x20(%rsp), %rax
movq %rax, 0x10(%rsp)
leaq 0x10(%rsp), %rdi
leaq 0xdd33(%rip), %rsi      # 0x414aa
leaq 0xdd30(%rip), %rdx      # 0x414ae
callq 0xb8a2
leaq 0x290(%rsp), %rax
movq %rax, 0x280(%rsp)
movq %r15, %rdi
leaq 0xe550(%rip), %rsi      # 0x41ced
leaq 0xe554(%rip), %rdx      # 0x41cf8
callq 0xb8a2
leaq 0x68(%rsp), %rdi
movq %r15, %rsi
callq 0x2cddc
movl %eax, %r15d
movq 0x280(%rsp), %rdi
leaq 0x290(%rsp), %rax
cmpq %rax, %rdi
je 0x337de
movq 0x290(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %r15b, %r15b
je 0x339d6
leaq 0x210(%rsp), %rax
movq %rax, 0x200(%rsp)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
addq %rsi, %rdx
leaq 0x200(%rsp), %rdi
callq 0x6a88
leaq 0xf8(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x2a594
movq %rax, %r15
movq 0x200(%rsp), %rdi
leaq 0x210(%rsp), %rax
cmpq %rax, %rdi
je 0x3384e
movq 0x210(%rsp), %rsi
incq %rsi
callq 0x32e0
testq %r15, %r15
je 0x33c82
leaq 0x1f0(%rsp), %rax
movq %rax, 0x1e0(%rsp)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
addq %rsi, %rdx
leaq 0x1e0(%rsp), %rdi
callq 0x6a88
leaq 0xf8(%rsp), %rdi
leaq 0x1e0(%rsp), %rsi
movl $0x1, %edx
callq 0x35660
movq 0x1e0(%rsp), %rdi
leaq 0x1f0(%rsp), %rax
cmpq %rax, %rdi
leaq 0x3b0(%rsp), %r12
je 0x338c8
movq 0x1f0(%rsp), %rsi
incq %rsi
callq 0x32e0
movq %r12, 0x3a0(%rsp)
leaq 0x3a0(%rsp), %r15
movq %r15, %rdi
leaq 0xe42e(%rip), %rsi      # 0x41d10
leaq 0xe430(%rip), %rdx      # 0x41d19
callq 0xb8a2
leaq 0x68(%rsp), %rdi
movq %r15, %rsi
callq 0x2cddc
movl %eax, %r15d
movq 0x3a0(%rsp), %rdi
cmpq %r12, %rdi
je 0x3391b
movq 0x3b0(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %r15b, %r15b
leaq 0x260(%rsp), %r15
leaq 0x220(%rsp), %r12
je 0x33db8
leaq 0x270(%rsp), %rax
movq %rax, 0x260(%rsp)
movq %r15, %rdi
leaq 0xe3c2(%rip), %rsi      # 0x41d10
leaq 0xe3c4(%rip), %rdx      # 0x41d19
callq 0xb8a2
leaq 0x160(%rsp), %rdi
leaq 0x68(%rsp), %rsi
movq %r15, %rdx
callq 0x2cdf2
movq 0x160(%rsp), %r15
movq %r15, %rdi
callq 0x3390
movsd %xmm0, 0xa0(%rsp)
leaq 0x170(%rsp), %rax
cmpq %rax, %r15
je 0x339a8
movq 0x170(%rsp), %rsi
incq %rsi
movq %r15, %rdi
callq 0x32e0
movq 0x260(%rsp), %rdi
leaq 0x270(%rsp), %rax
cmpq %rax, %rdi
je 0x3407a
movq 0x270(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x3407a
cmpl $0x2, 0x4(%rsp)
jl 0x33a9c
movl $0x9, %edx
movq %r13, %rdi
leaq 0xe287(%rip), %rsi      # 0x41c77
callq 0x3350
movq %r13, %rdi
movl %ebx, %esi
callq 0x3500
movq %rax, %r15
movl $0x3, %edx
movq %rax, %rdi
leaq 0xe270(%rip), %rsi      # 0x41c81
callq 0x3350
movq 0x38(%rsp), %rsi
movq 0x40(%rsp), %rdx
movq %r15, %rdi
callq 0x3350
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq %r13, %rdi
movl 0x4(%rsp), %esi
callq 0x3500
movq %rax, %r15
movl $0x6, %edx
movq %rax, %rdi
leaq 0xe215(%rip), %rsi      # 0x41c85
callq 0x3350
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
cmpl $0x3, 0x98(%rsp)
jne 0x33b02
leaq 0x370(%rsp), %rax
movq %rax, 0x360(%rsp)
leaq 0x360(%rsp), %r15
movq %r15, %rdi
leaq 0xd8b6(%rip), %rsi      # 0x4137e
leaq 0xd8b5(%rip), %rdx      # 0x41384
callq 0xb8a2
leaq 0xf8(%rsp), %rdi
movl 0x4(%rsp), %esi
leaq 0xe0(%rsp), %rdx
movq %r15, %rcx
callq 0x2a600
movq 0x360(%rsp), %rdi
leaq 0x370(%rsp), %rcx
jmp 0x33b5c
leaq 0x350(%rsp), %rax
movq %rax, 0x340(%rsp)
leaq 0x340(%rsp), %r15
movq %r15, %rdi
leaq 0xd986(%rip), %rsi      # 0x414aa
leaq 0xd983(%rip), %rdx      # 0x414ae
callq 0xb8a2
leaq 0xf8(%rsp), %rdi
movl 0x4(%rsp), %esi
leaq 0xe0(%rsp), %rdx
movq %r15, %rcx
callq 0x2a600
movq 0x340(%rsp), %rdi
leaq 0x350(%rsp), %rcx
movq %rcx, %rax
cmpq %rcx, %rdi
je 0x33b6f
movq (%rax), %rsi
incq %rsi
callq 0x32e0
movq 0xe8(%rsp), %rax
cmpq 0xe0(%rsp), %rax
je 0x33d73
movq 0xe8(%rsp), %rax
cmpq 0xe0(%rsp), %rax
je 0x341e1
xorl %r12d, %r12d
movq %rbp, 0x380(%rsp)
movq %r14, %rdi
leaq 0xe17c(%rip), %rsi      # 0x41d2c
leaq 0xe17e(%rip), %rdx      # 0x41d35
callq 0xb8a2
leaq 0x68(%rsp), %rdi
movq %r14, %rsi
callq 0x2cddc
movl %eax, %r15d
movq 0x380(%rsp), %rdi
cmpq %rbp, %rdi
je 0x33be9
movq 0x390(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %r15b, %r15b
jne 0x33bff
movq 0xe0(%rsp), %rax
movq (%rax,%r12,8), %rdi
callq 0x3fb28
movq 0xe0(%rsp), %rax
movq (%rax,%r12,8), %rdi
cmpb $0x0, 0x8(%rsp)
je 0x33c1c
movq %r13, %rsi
callq 0x3e644
jmp 0x33c24
movq %r13, %rsi
callq 0x3f55a
movq (%r13), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r13, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0xe0(%rsp), %rax
movq (%rax,%r12,8), %rdi
callq 0x3fa86
incq %r12
movq 0xe8(%rsp), %rax
subq 0xe0(%rsp), %rax
sarq $0x3, %rax
cmpq %r12, %rax
ja 0x33b9e
jmp 0x341e1
movl $0xd, %edx
movq 0x22362(%rip), %rdi     # 0x55ff0
leaq 0xe064(%rip), %rsi      # 0x41cf9
callq 0x3350
movq 0x2234f(%rip), %rcx     # 0x55ff0
movq (%rcx), %rax
movq -0x18(%rax), %rdi
addq %rcx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq 0x22331(%rip), %rdi     # 0x55ff0
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movl $0x9, %edx
movq %r13, %rdi
leaq 0xdf9c(%rip), %rsi      # 0x41c77
callq 0x3350
movq %r13, %rdi
movl %ebx, %esi
callq 0x3500
movq %rax, %r15
movl $0x2, %edx
movq %rax, %rdi
leaq 0xe00b(%rip), %rsi      # 0x41d07
callq 0x3350
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x38(%rsp), %rsi
movq 0x40(%rsp), %rdx
movq %r13, %rdi
callq 0x3350
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movl $0x1, %r15d
movq %rax, %rdi
callq 0x31e0
leaq 0xdf12(%rip), %rsi      # 0x41c83
jmp 0x33d80
movl $0x4, %r15d
leaq 0xdfa7(%rip), %rsi      # 0x41d27
movq %r13, %rdi
movq %r15, %rdx
callq 0x3350
movq (%r13), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r13, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
jmp 0x341e1
leaq 0x250(%rsp), %rax
movq %rax, 0x240(%rsp)
leaq 0x240(%rsp), %r15
movq %r15, %rdi
leaq 0xdf30(%rip), %rsi      # 0x41d0a
leaq 0xdf38(%rip), %rdx      # 0x41d19
callq 0xb8a2
leaq 0x68(%rsp), %rdi
movq %r15, %rsi
callq 0x2cddc
movl %eax, %r15d
movq 0x240(%rsp), %rdi
leaq 0x250(%rsp), %rax
cmpq %rax, %rdi
je 0x33e1b
movq 0x250(%rsp), %rsi
incq %rsi
callq 0x32e0
movl $0x64, 0xdc(%rsp)
testb %r15b, %r15b
je 0x33ec6
leaq 0x230(%rsp), %rax
movq %rax, 0x220(%rsp)
movq %r12, %rdi
leaq 0xdec1(%rip), %rsi      # 0x41d0a
leaq 0xdec9(%rip), %rdx      # 0x41d19
callq 0xb8a2
leaq 0x160(%rsp), %rdi
leaq 0x68(%rsp), %rsi
movq %r12, %rdx
callq 0x2cdf2
movq 0x160(%rsp), %r15
movq %r15, %rdi
callq 0x3450
movl %eax, 0xdc(%rsp)
leaq 0x170(%rsp), %rax
cmpq %rax, %r15
je 0x33ea1
movq 0x170(%rsp), %rsi
incq %rsi
movq %r15, %rdi
callq 0x32e0
movq 0x220(%rsp), %rdi
leaq 0x230(%rsp), %rax
cmpq %rax, %rdi
je 0x33ec6
movq 0x230(%rsp), %rsi
incq %rsi
callq 0x32e0
xorl %eax, %eax
movq %rax, 0x158(%rsp)
movq %rax, 0x160(%rsp)
leaq 0x1d0(%rsp), %rax
movq %rax, 0x1c0(%rsp)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
addq %rsi, %rdx
leaq 0x1c0(%rsp), %rdi
callq 0x6a88
leaq 0xf8(%rsp), %rdi
leaq 0x1c0(%rsp), %rsi
callq 0x2a594
movq %rax, %r15
movq 0x1c0(%rsp), %rdi
leaq 0x1d0(%rsp), %rax
cmpq %rax, %rdi
je 0x33f3f
movq 0x1d0(%rsp), %rsi
incq %rsi
callq 0x32e0
movsd 0xd661(%rip), %xmm0     # 0x415a8
movsd %xmm0, 0xa0(%rsp)
testq %r15, %r15
je 0x3407a
leaq 0x1b0(%rsp), %rax
movq %rax, 0x1a0(%rsp)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
addq %rsi, %rdx
leaq 0x1a0(%rsp), %rdi
callq 0x6a88
leaq 0xf8(%rsp), %rdi
leaq 0x1a0(%rsp), %rsi
callq 0x2a594
movq %rax, %rdi
movl $0x1, %esi
leaq 0x160(%rsp), %rdx
callq 0x2d7dc
movq 0x1a0(%rsp), %rdi
leaq 0x1b0(%rsp), %rax
cmpq %rax, %rdi
je 0x33fd2
movq 0x1b0(%rsp), %rsi
incq %rsi
callq 0x32e0
movsd 0x160(%rsp), %xmm0
movsd %xmm0, 0x158(%rsp)
leaq 0x190(%rsp), %rax
movq %rax, 0x180(%rsp)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
addq %rsi, %rdx
leaq 0x180(%rsp), %rdi
callq 0x6a88
leaq 0xf8(%rsp), %rdi
leaq 0x180(%rsp), %rsi
callq 0x2a594
movq %rax, %rdi
movl 0xdc(%rsp), %esi
leaq 0x158(%rsp), %rdx
callq 0x2d7dc
movq 0x180(%rsp), %rdi
leaq 0x190(%rsp), %rax
cmpq %rax, %rdi
je 0x3405f
movq 0x190(%rsp), %rsi
incq %rsi
callq 0x32e0
movsd 0x160(%rsp), %xmm0
subsd 0x158(%rsp), %xmm0
movsd %xmm0, 0xa0(%rsp)
movsd 0xa0(%rsp), %xmm0
ucomisd 0xd2d5(%rip), %xmm0     # 0x41360
jbe 0x340ff
movl $0xc, %edx
movq 0x21f57(%rip), %rdi     # 0x55ff0
leaq 0xdc7a(%rip), %rsi      # 0x41d1a
callq 0x3350
movq 0x21f44(%rip), %rdi     # 0x55ff0
movsd 0xa0(%rsp), %xmm0
callq 0x34a0
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
leaq 0xf8(%rsp), %rdi
leaq 0x10(%rsp), %rsi
movsd 0xa0(%rsp), %xmm0
callq 0x2a8ee
leaq 0xf8(%rsp), %rdi
movl $0x1, %esi
callq 0x2aa44
movl $0x9, %edx
movq %r13, %rdi
leaq 0xdb57(%rip), %rsi      # 0x41c77
callq 0x3350
movq %r13, %rdi
movl %ebx, %esi
callq 0x3500
movq %rax, %r15
movl $0x2, %edx
movq %rax, %rdi
leaq 0xdbc6(%rip), %rsi      # 0x41d07
callq 0x3350
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x38(%rsp), %rsi
movq 0x40(%rsp), %rdx
movq %r13, %rdi
callq 0x3350
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
leaq 0xf8(%rsp), %rdi
movq %r13, %rsi
callq 0x268d0
movq (%r13), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %r13, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x341fd
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x110(%rsp), %rdi
callq 0x611e
leaq 0xf8(%rsp), %rdi
callq 0x2ac8a
movq 0xe0(%rsp), %rdi
testq %rdi, %rdi
leaq 0xb50(%rsp), %r12
je 0x3423c
movq 0xf0(%rsp), %rsi
subq %rdi, %rsi
callq 0x32e0
xorl %r15d, %r15d
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x3425b
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x32e0
testb %r15b, %r15b
je 0x335fa
callq 0x31c0
subq 0x220b8(%rip), %rax     # 0x56328
movq %rax, 0x220b1(%rip)     # 0x56328
movq 0x21d72(%rip), %rdi     # 0x55ff0
leaq 0xdab1(%rip), %rsi      # 0x41d36
movl $0x9, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x2208d(%rip), %xmm0 # 0x56328
divsd 0xd30d(%rip), %xmm0     # 0x415b0
movq 0x21d46(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xcdec(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x21cfc(%rip), %rdi     # 0x55ff0
leaq 0xda45(%rip), %rsi      # 0x41d40
movl $0x12, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x22067(%rip), %xmm0 # 0x56378
divsd 0xd297(%rip), %xmm0     # 0x415b0
movq 0x21cd0(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xcd76(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x21c5c(%rip), %rdi     # 0x55ff0
leaq 0xd9b8(%rip), %rsi      # 0x41d53
movl $0x16, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x21f7f(%rip), %xmm0 # 0x56330
divsd 0xd1f7(%rip), %xmm0     # 0x415b0
movq 0x21c30(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xccd6(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x21be6(%rip), %rdi     # 0x55ff0
leaq 0xd959(%rip), %rsi      # 0x41d6a
movl $0x15, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x21f11(%rip), %xmm0 # 0x56338
divsd 0xd181(%rip), %xmm0     # 0x415b0
movq 0x21bba(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xcc60(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x21b46(%rip), %rdi     # 0x55ff0
leaq 0xd8cf(%rip), %rsi      # 0x41d80
movl $0x18, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x21e59(%rip), %xmm0 # 0x56320
divsd 0xd0e1(%rip), %xmm0     # 0x415b0
movq 0x21b1a(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xcbc0(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x21ad0(%rip), %rdi     # 0x55ff0
leaq 0xd872(%rip), %rsi      # 0x41d99
movl $0x16, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x21e13(%rip), %xmm0 # 0x56350
divsd 0xd06b(%rip), %xmm0     # 0x415b0
movq 0x21aa4(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xcb4a(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x21a30(%rip), %rdi     # 0x55ff0
leaq 0xd7e9(%rip), %rsi      # 0x41db0
movl $0x17, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x21d6b(%rip), %xmm0 # 0x56348
divsd 0xcfcb(%rip), %xmm0     # 0x415b0
movq 0x21a04(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xcaaa(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x219ba(%rip), %rdi     # 0x55ff0
leaq 0xd78b(%rip), %rsi      # 0x41dc8
movl $0x15, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x21ced(%rip), %xmm0 # 0x56340
divsd 0xcf55(%rip), %xmm0     # 0x415b0
movq 0x2198e(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xca34(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x2191a(%rip), %rdi     # 0x55ff0
leaq 0xd701(%rip), %rsi      # 0x41dde
movl $0x14, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x21c65(%rip), %xmm0 # 0x56358
divsd 0xceb5(%rip), %xmm0     # 0x415b0
movq 0x218ee(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xc994(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x218a4(%rip), %rdi     # 0x55ff0
leaq 0xd6a0(%rip), %rsi      # 0x41df3
movl $0xb, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x21bf7(%rip), %xmm0 # 0x56360
divsd 0xce3f(%rip), %xmm0     # 0x415b0
movq 0x21878(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xc91e(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x2182e(%rip), %rdi     # 0x55ff0
leaq 0xd636(%rip), %rsi      # 0x41dff
movl $0x18, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x21b89(%rip), %xmm0 # 0x56368
divsd 0xcdc9(%rip), %xmm0     # 0x415b0
movq 0x21802(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xc8a8(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
movq 0x217b8(%rip), %rdi     # 0x55ff0
leaq 0xd5d9(%rip), %rsi      # 0x41e18
movl $0xa, %edx
callq 0x3350
xorps %xmm0, %xmm0
cvtsi2sdq 0x21b1b(%rip), %xmm0 # 0x56370
divsd 0xcd53(%rip), %xmm0     # 0x415b0
movq 0x2178c(%rip), %rdi     # 0x55ff0
callq 0x34a0
movq %rax, %rbx
leaq 0xc832(%rip), %rsi      # 0x410a5
movl $0x1, %edx
movq %rax, %rdi
callq 0x3350
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x32b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x31e0
leaq 0xb50(%rsp), %rdi
callq 0x30a0
movq 0xa48(%rsp), %rdi
testq %rdi, %rdi
leaq 0xb8(%rsp), %r15
je 0x348d9
movq 0xa58(%rsp), %rsi
subq %rdi, %rsi
callq 0x32e0
leaq 0x958(%rsp), %rbx
leaq 0xa18(%rsp), %rdi
callq 0x14834
leaq 0x9e8(%rsp), %rdi
callq 0x696a
leaq 0x988(%rsp), %r14
leaq 0x9b8(%rsp), %rdi
callq 0x10ea4
movq %r14, %rdi
callq 0x10ef2
movq %rbx, %rdi
callq 0x35894
leaq 0x940(%rsp), %rdi
callq 0x35850
movq 0xa8(%rsp), %rdi
cmpq %r15, %rdi
je 0x33291
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x33291
callq 0x314b4
callq 0x314b4
callq 0x314b4
callq 0x314b4
movq %rax, %r14
movq 0x220(%rsp), %rdi
leaq 0x230(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x230(%rsp), %rsi
jmp 0x35323
jmp 0x35424
jmp 0x3501c
jmp 0x3501c
movq %rax, %r14
movq 0x3e0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x35496
movq 0x3f0(%rsp), %rsi
jmp 0x3548e
jmp 0x3540c
movq %rax, %r14
movq 0x420(%rsp), %rdi
cmpq %r12, %rdi
je 0x35496
movq 0x430(%rsp), %rsi
jmp 0x3548e
jmp 0x3540c
movq %rax, %r14
movq 0x460(%rsp), %rdi
cmpq %r12, %rdi
je 0x35496
movq 0x470(%rsp), %rsi
jmp 0x3548e
jmp 0x3540c
movq %rax, %r14
movq 0x4a0(%rsp), %rdi
cmpq %r12, %rdi
je 0x35496
movq 0x4b0(%rsp), %rsi
jmp 0x3548e
jmp 0x3540c
movq %rax, %r14
movq 0x520(%rsp), %rdi
cmpq %r15, %rdi
je 0x354b0
movq 0x530(%rsp), %rsi
jmp 0x34d7a
jmp 0x34d87
movq %rax, %r14
movq 0x560(%rsp), %rdi
cmpq %r15, %rdi
je 0x354b0
movq 0x570(%rsp), %rsi
jmp 0x34d7a
jmp 0x34d87
movq %rax, %r14
movq 0x260(%rsp), %rdi
leaq 0x270(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x270(%rsp), %rsi
jmp 0x35323
jmp 0x35424
movq %rax, %r14
movq 0x1c0(%rsp), %rdi
leaq 0x1d0(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x1d0(%rsp), %rsi
jmp 0x35323
movq %rax, %r14
movq 0x240(%rsp), %rdi
leaq 0x250(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x250(%rsp), %rsi
jmp 0x35323
jmp 0x35424
movq %rax, %r14
movq 0x180(%rsp), %rdi
leaq 0x190(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x190(%rsp), %rsi
jmp 0x35323
movq %rax, %r14
movq 0x1a0(%rsp), %rdi
leaq 0x1b0(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x1b0(%rsp), %rsi
jmp 0x35323
movq %rax, %r14
movq 0x360(%rsp), %rdi
leaq 0x370(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x370(%rsp), %rsi
jmp 0x35323
jmp 0x35424
movq %rax, %r14
movq 0x340(%rsp), %rdi
leaq 0x350(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x350(%rsp), %rsi
jmp 0x35323
jmp 0x35424
movq %rax, %r14
movq 0x400(%rsp), %rdi
cmpq %r12, %rdi
je 0x35496
movq 0x410(%rsp), %rsi
jmp 0x3548e
jmp 0x3540c
movq %rax, %r14
movq 0x440(%rsp), %rdi
cmpq %r12, %rdi
je 0x35496
movq 0x450(%rsp), %rsi
jmp 0x3548e
jmp 0x3540c
movq %rax, %r14
movq 0x480(%rsp), %rdi
cmpq %r12, %rdi
je 0x35496
movq 0x490(%rsp), %rsi
jmp 0x3548e
jmp 0x3540c
movq %rax, %r14
movq 0x4c0(%rsp), %rdi
cmpq %r12, %rdi
je 0x35496
movq 0x4d0(%rsp), %rsi
jmp 0x3548e
jmp 0x3540c
jmp 0x3540c
movq %rax, %r14
movq 0x5e0(%rsp), %rdi
cmpq %r15, %rdi
je 0x355ed
movq 0x5f0(%rsp), %rsi
jmp 0x35136
movq %rax, %r14
leaq 0x108(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x34ca2
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x34ca2
jmp 0x352fa
movq %rax, %r14
movq 0x4e0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x354a3
movq 0x4f0(%rsp), %rsi
jmp 0x34cfc
jmp 0x34d0e
movq %rax, %r14
movq 0x620(%rsp), %rdi
cmpq %r15, %rdi
je 0x355ed
movq 0x630(%rsp), %rsi
jmp 0x35136
movq %rax, %r14
movq 0x500(%rsp), %rdi
cmpq %r15, %rdi
je 0x354a3
movq 0x510(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x354a3
jmp 0x352fa
movq %rax, %r14
jmp 0x354a3
movq %rax, %r14
movq 0x660(%rsp), %rdi
cmpq %r15, %rdi
je 0x355ed
movq 0x670(%rsp), %rsi
jmp 0x35136
movq %rax, %r14
movq 0x540(%rsp), %rdi
cmpq %rbx, %rdi
je 0x354b0
movq 0x550(%rsp), %rsi
jmp 0x34d7a
jmp 0x352fa
jmp 0x34d87
jmp 0x34d87
movq %rax, %r14
movq 0x580(%rsp), %rdi
cmpq %r15, %rdi
je 0x354b0
movq 0x590(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x354b0
movq %rax, %r14
jmp 0x354b0
jmp 0x352ea
movq %rax, %r14
movq 0x5a0(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x5b0(%rsp), %rsi
jmp 0x354d1
movq %rax, %r14
movq 0x6c0(%rsp), %rdi
cmpq %r12, %rdi
je 0x34f98
movq 0x6d0(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x34f98
jmp 0x352ea
jmp 0x34f95
movq %rax, %r14
movq 0x3a0(%rsp), %rdi
cmpq %r12, %rdi
je 0x35427
movq 0x3b0(%rsp), %rsi
jmp 0x35323
jmp 0x35424
movq %rax, %r14
movq 0x1e0(%rsp), %rdi
leaq 0x1f0(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x1f0(%rsp), %rsi
jmp 0x35323
jmp 0x35424
movq %rax, %r14
movq 0x200(%rsp), %rdi
leaq 0x210(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x210(%rsp), %rsi
jmp 0x35323
movq %rax, %r14
movq 0x720(%rsp), %rdi
cmpq %r12, %rdi
je 0x355e0
movq 0x730(%rsp), %rsi
jmp 0x355d8
jmp 0x350ec
movq %rax, %r14
movq 0x760(%rsp), %rdi
cmpq %r12, %rdi
je 0x355e0
movq 0x770(%rsp), %rsi
jmp 0x355d8
jmp 0x350ec
movq %rax, %r14
movq 0x600(%rsp), %rdi
cmpq %r15, %rdi
je 0x355ed
movq 0x610(%rsp), %rsi
jmp 0x35136
jmp 0x352fa
movq %rax, %r14
movq 0x640(%rsp), %rdi
cmpq %r15, %rdi
je 0x355ed
movq 0x650(%rsp), %rsi
jmp 0x35136
jmp 0x352fa
movq %rax, %r14
movq 0x680(%rsp), %rdi
cmpq %r15, %rdi
je 0x355ed
movq 0x690(%rsp), %rsi
jmp 0x35136
jmp 0x352fa
jmp 0x352f2
movq %rax, %r14
leaq 0x950(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x34f51
movq 0x950(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x34f51
movq %rax, %r14
movq 0x6a0(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x6b0(%rsp), %rsi
jmp 0x354d1
jmp 0x352ea
movq %rax, %r14
movq 0x5c0(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x5d0(%rsp), %rsi
jmp 0x354d1
movq %rax, %r14
movq 0x6e0(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x6f0(%rsp), %rsi
jmp 0x354d1
movq %rax, %r14
movq 0x7e0(%rsp), %rdi
cmpq %r12, %rdi
je 0x351bd
movq 0x7f0(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x351bd
jmp 0x352ea
jmp 0x352ea
jmp 0x351ba
movq %rax, %r14
movq 0x880(%rsp), %rdi
cmpq %r13, %rdi
je 0x3520e
movq 0x890(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x3520e
jmp 0x3520b
movq %rax, %r14
movq 0xf8(%rsp), %rdi
cmpq %r15, %rdi
je 0x35496
movq 0x108(%rsp), %rsi
jmp 0x3548e
movq %rax, %r14
movq 0x280(%rsp), %rdi
leaq 0x290(%rsp), %rax
cmpq %rax, %rdi
je 0x35427
movq 0x290(%rsp), %rsi
jmp 0x35323
jmp 0x35424
jmp 0x3506d
movq %rax, %r14
jmp 0x35443
movq %rax, %r14
movq 0x3c0(%rsp), %rdi
cmpq %r15, %rdi
je 0x3545d
movq 0x3d0(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x3545d
movq %rax, %r14
jmp 0x3545d
movq %rax, %r14
movq 0x740(%rsp), %rdi
cmpq %r12, %rdi
je 0x355e0
movq 0x750(%rsp), %rsi
jmp 0x355d8
jmp 0x350ec
movq %rax, %r14
movq 0x780(%rsp), %rdi
cmpq %r12, %rdi
je 0x355e0
movq 0x790(%rsp), %rsi
jmp 0x355d8
jmp 0x350ec
movq %rax, %r14
jmp 0x355e0
movq %rax, %r14
leaq 0xb8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x3511d
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x3511d
movq %rax, %r14
movq 0x7a0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x355ed
movq 0x7b0(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x355ed
jmp 0x352fa
jmp 0x352f2
movq %rax, %r14
leaq 0x950(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x35176
movq 0x950(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x35176
movq %rax, %r14
movq 0x7c0(%rsp), %rdi
cmpq %rbx, %rdi
je 0x35614
movq 0x7d0(%rsp), %rsi
jmp 0x354d1
jmp 0x352ea
movq %rax, %r14
movq 0x700(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x710(%rsp), %rsi
jmp 0x354d1
movq %rax, %r14
movq 0x800(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x810(%rsp), %rsi
jmp 0x354d1
jmp 0x352ea
jmp 0x352ea
movq %rax, %r14
movq 0x840(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x850(%rsp), %rsi
jmp 0x354d1
jmp 0x352ea
movq %rax, %r14
movq 0x8a0(%rsp), %rdi
cmpq %r12, %rdi
je 0x352a2
movq 0x8b0(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x352a2
jmp 0x3529f
movq %rax, %r14
movq 0x8e0(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x8f0(%rsp), %rsi
jmp 0x354d1
jmp 0x352ea
movq %rax, %r14
movq 0x820(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x830(%rsp), %rsi
jmp 0x354d1
jmp 0x352ea
movq %rax, %r14
movq 0x860(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x870(%rsp), %rsi
jmp 0x354d1
jmp 0x352ea
movq %rax, %r14
movq 0x8c0(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x8d0(%rsp), %rsi
jmp 0x354d1
jmp 0x352ea
movq %rax, %r14
movq 0x900(%rsp), %rdi
cmpq %r15, %rdi
je 0x35614
movq 0x910(%rsp), %rsi
jmp 0x354d1
jmp 0x352ea
jmp 0x354de
movq %rax, %r14
jmp 0x35614
movq %rax, %r14
jmp 0x35607
movq %rax, %r14
jmp 0x355ed
jmp 0x35424
movq %rax, %r14
movq 0x380(%rsp), %rdi
cmpq %rbp, %rdi
je 0x35427
movq 0x390(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x35427
jmp 0x35424
jmp 0x35424
movq %rax, %r14
jmp 0x3547a
jmp 0x354de
movq %rax, %r14
jmp 0x3536b
movq %rax, %r14
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x3536b
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x32e0
movq 0x2e0(%rsp), %rdi
leaq 0x2f0(%rsp), %rax
cmpq %rax, %rdi
je 0x35581
movq 0x2f0(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x35581
jmp 0x35414
movq %rax, %r14
movq 0x300(%rsp), %rdi
leaq 0x310(%rsp), %rax
cmpq %rax, %rdi
je 0x35593
movq 0x310(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x35593
movq %rax, %r14
movq 0x320(%rsp), %rdi
leaq 0x330(%rsp), %rax
cmpq %rax, %rdi
je 0x355ad
movq 0x330(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x355ad
jmp 0x35590
movq %rax, %r14
jmp 0x355ad
jmp 0x3540c
movq %rax, %r14
jmp 0x35496
movq %rax, %r14
jmp 0x35574
movq %rax, %r14
jmp 0x355c4
movq %rax, %r14
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x35443
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x110(%rsp), %rdi
callq 0x611e
leaq 0xf8(%rsp), %rdi
callq 0x2ac8a
movq 0xe0(%rsp), %rdi
testq %rdi, %rdi
je 0x3547a
movq 0xf0(%rsp), %rsi
subq %rdi, %rsi
callq 0x32e0
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x35496
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0xb50(%rsp), %rdi
callq 0x30a0
leaq 0x940(%rsp), %rdi
callq 0x3573c
movq 0xa8(%rsp), %rdi
leaq 0xb8(%rsp), %rax
cmpq %rax, %rdi
je 0x35614
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x35614
movq %rax, %r14
jmp 0x35581
jmp 0x35590
movq %rax, %r14
movq 0x2a0(%rsp), %rdi
leaq 0x2b0(%rsp), %rax
cmpq %rax, %rdi
je 0x35544
movq 0x2b0(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x35544
jmp 0x3555a
movq %rax, %r14
movq 0x2c0(%rsp), %rdi
leaq 0x2d0(%rsp), %rax
cmpq %rax, %rdi
je 0x3555d
movq 0x2d0(%rsp), %rsi
incq %rsi
callq 0x32e0
jmp 0x3555d
movq %rax, %r14
leaq 0x50(%rsp), %rdi
callq 0x611e
leaq 0x38(%rsp), %rdi
callq 0x2ac8a
jmp 0x3555d
movq %rax, %r14
movq 0x10(%rsp), %rdi
cmpq %rbx, %rdi
je 0x35574
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x940(%rsp), %rdi
callq 0x30a0
leaq 0xa8(%rsp), %rdi
callq 0x357f4
jmp 0x355ed
movq %rax, %r14
leaq 0xc0(%rsp), %rdi
callq 0x611e
leaq 0xa8(%rsp), %rdi
callq 0x2ac8a
movq 0x10(%rsp), %rdi
testq %rdi, %rdi
je 0x355c4
movq 0x20(%rsp), %rsi
subq %rdi, %rsi
callq 0x32e0
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rax
cmpq %rax, %rdi
je 0x355e0
movq 0x48(%rsp), %rsi
incq %rsi
callq 0x32e0
leaq 0x940(%rsp), %rdi
callq 0x30a0
leaq 0x128(%rsp), %rdi
callq 0x19f1e
leaq 0xf8(%rsp), %rdi
callq 0x357e0
leaq 0xb50(%rsp), %rdi
callq 0x30a0
leaq 0x68(%rsp), %rdi
callq 0x2cdca
movq %r14, %rdi
callq 0x3530