// File: nataly-enne[P]pet-fera/pet_fera_editar.cpp
// Function: editar(std::map<int, ANFIBIO_NATIVO, std::less<int>, std::allocator<std::pair<int const, ANFIBIO_NATIVO>>>&, std::map<int, ANFIBIO_EXOTICO, std::less<int>, std::allocator<std::pair<int const, ANFIBIO_EXOTICO>>>&, std::map<int, VETERINARIO, std::less<int>, std::allocator<std::pair<int const, VETERINARIO>>>, std::map<int, TRATADOR, std::less<int>, std::allocator<std::pair<int const, TRATADOR>>>)
void editar(map <int, ANFIBIO_NATIVO> &anfibios_nat, map <int, ANFIBIO_EXOTICO> &anfibios_ex, map <int, VETERINARIO> vets, map <int, TRATADOR> tratadores){
	char opcao, resp, op, sucesso, sexo, tipo = 'a';
	int total_mudas, id_buscado;;
	string classe, nome_cientifico, dieta, veterinario, tratador, nome_batismo, autorizacao, autorizacao_IBAMA, origem, ultima_muda, nome, id_string, tamanho_string, sexo_string, total_mudas_string;
	bool check;
	double tamanho;
	ofstream nativos;
	ofstream exoticos;
			
	do{
		cout << "É nativo ou exotico? \n n - NATIVO\n e - EXOTICO" << endl;
		cin >> opcao;
		if(opcao != 'n' && opcao != 'e'){
			cout << "Opção inválida!! Tente novamente!\n" << endl;
			cout << endl;
			cout << "Deseja sair? s/n" << endl;
			cin >> resp;
			if(resp == 's'){
				break;
			}	
		}
		else{ 
			if(opcao == 'n'){
				cout << "Insira o ID buscado: " << endl;
				cin >> id_buscado;

				auto result = anfibios_nat.find(id_buscado);
			
				if(result != anfibios_nat.end()){
					cout << "ID existe!" << endl;

					//Classe dos anfibios.
					classe = "Amphibia";

					//Recebe o nome e verifica se é valido.
					do{
						cout << "Digite o nome:" << endl;
						cin.ignore();
						getline(cin, nome);
						if(!verifica_nome(nome, sucesso)){
							cout << "ERRO: só pode ser inserido letra ou espaço!" << endl << endl;
						}
						else{
							transform(nome.begin(), nome.end(), nome.begin(), ::tolower); // Converte a string nome para caracteres minusculos.
						}
					}while(sucesso == 'n');

			
					//Recebe o nome cientifico e verifica se é valido.
					do{
						cout << "Digite o nome científico:" << endl;
						getline(cin, nome_cientifico);
						if(!verifica_nome_cient(nome_cientifico, sucesso)){
							cout << "ERRO: só pode ser inserido letra, espaço ou traço!" << endl << endl;
						}
					}while(sucesso == 'n');

					//Recebe a dieta e verifica se não possui caracteres proibidos.
					do{
						cout << "Digite a dieta: " << endl;
						getline(cin, dieta);
						if(!verifica_dieta(dieta, sucesso)){
							cout << "ERRO: só pode ser inserido letra ou espaço!" << endl << endl;
						}
					}while(sucesso == 'n');
					
					//Recebe o nome do veterinario e verifica se não possui caracteres proibidos.
					do{
						cout << "Digite o nome do veterinario: " << endl;
						getline(cin, veterinario);
						
						if(!verifica_nome(veterinario, sucesso)){
							cout << "ERRO: só pode ser inserido letra ou espaço!" << endl << endl;
						}
						check = check_vet(vets, veterinario);
						if(!check){
							cout << endl;
							cout << "ERRO: Veterinario não cadastrado!" << endl;
							sucesso = 'n';
						}
					}while(sucesso == 'n');
					
					//Recebe o nome do tratador e verifica se não possui caracteres proibido, se já foi cadastrado ou se possui nivel de segurança adequado.
					do{
						cout << "Digite o nome do tratador: " << endl;
						getline(cin, tratador);
						if(!verifica_nome(tratador, sucesso)){
							cout << "ERRO: só pode ser inserido letra ou espaço!" << endl << endl;
						}
						check = check_tratador(0, tratadores, tratador, tipo);
						if(!check){
							cout << endl;
							cout << "ERRO: Tratador não cadastrado ou não se adequa!" << endl << endl;
							sucesso = 'n';
						}
					}while(sucesso == 'n');

					
					//Recebe o nome e verifica se é valido.
					do{
						cout << "Digite o nome de batismo: " << endl;
						getline(cin, nome_batismo);
						if(!verifica_nome(nome_batismo, sucesso)){
							cout << "ERRO: só pode ser inserido letra ou espaço!" << endl << endl;
						}
						transform(nome_batismo.begin(), nome_batismo.end(), nome_batismo.begin(), ::tolower); // Converte a string nome para caracteres maiúsculos.
					}while(sucesso == 'n');

					//Recebe o sexo do animal e verifica se é F ou M.
					do{
						cout << "Digite o sexo do animal: " << endl;
						getline(cin, sexo_string);
						transform(sexo_string.begin(), sexo_string.end(), sexo_string.begin(), ::toupper); // Converte a string nome para caracteres maiúsculos.
						if(sexo_string != "F" && sexo_string != "M" ){
							sucesso = 'n';
							cout << "ERRO: só são permitidos F ou M!" << endl << endl;
						}
						else{
							sexo = (char)sexo_string[0];
							sucesso = 's';
						}

					}while(sucesso == 'n');
					
					//Recebe o tamanho do animal e verifica se não caracteres pproibidos.
					do{
						cout << "Digite o tamanho do animal: " << endl;
						getline(cin, tamanho_string);
						if(!verifica_tamanho(tamanho_string, sucesso)){
							cout << "ERRO: o tamanho do animal tem que ter apenas um '.' " << endl << endl;
						}
						tamanho = stod(tamanho_string);
					}while(sucesso == 'n');
					
					//Recebe o total de mudas e verifica se é um inteiro positivo.
					do{
						cout << "Insira o total de mudas:" << endl;
						getline(cin, total_mudas_string);
						if(!verifica_inteiro(total_mudas_string, sucesso)){
							cout << "ERRO: O total de mudas deve conter apenas inteiros positivos!" << endl << endl;
						}
						else{
							stringstream ss(total_mudas_string);
							ss >> total_mudas;
						}
					}while(sucesso == 'n');
					
					//Recebe a ultima muda e verifica se está no formato correto.
					do{
						cout << "Insira a data da última muda(dd-mm-aaaa)" << endl;
						getline(cin, ultima_muda);
						if(!verifica_data(ultima_muda, sucesso)){
							cout << "ERRO: A ultima muda deve ser nesse formato ex.: 12-03-2019" << endl << endl;
						}
					}while(sucesso == 'n');

					//Verifica se a autorizacao está no formato correto.
					do{
						cout << "Insira a autorizacao do IBAMA: " << endl;
						getline(cin, autorizacao_IBAMA);
						if(!verifica_autorizacao(autorizacao_IBAMA, sucesso)){
							cout << "ERRO: A autorizacao deve conter letras, numeros e '-'"<< endl << endl;
						}
					}while(sucesso == 'n');


					//Verifica se foi passado uma string.
					do{
						cout << "Digite a UF de origem: " << endl;
						getline(cin, origem);
						if(!verifica_origem(origem, sucesso)){
							cout << "ERRO: Deve-se colocar apenas letras!" << endl << endl;
						}
					}while(sucesso == 'n');

					//Verifica se a autorizacao está no formato correto.
					do{
						cout << "Insira a autorizacao do animal: " << endl;
						getline(cin, autorizacao);
						if(!verifica_autorizacao(autorizacao, sucesso)){
							cout << "ERRO: A autorizacao deve conter letras, numeros e '-'" << endl << endl;
						}
					}while(sucesso == 'n');

					(*result).second = ANFIBIO_NATIVO(id_buscado, classe, nome, nome_cientifico, sexo, tamanho, dieta, veterinario, tratador, nome_batismo, total_mudas, ultima_muda, autorizacao_IBAMA, origem, autorizacao);
					sucesso = 's';
				}
				else{
					cout << "Animal não cadastrado!!" << endl;
					sucesso = 'n';
				}
				if(sucesso == 's'){
					nativos.open("anfibios_nat.txt");
					for(auto it = anfibios_nat.begin(); it != anfibios_nat.end(); it++){
						nativos << (*it).second;
					}
					nativos.close();
				}

				cout << "\nDeseja editar outro? s/n" << endl;
				cin >> op;
				
			}
			else{
				cout << "Insira o ID buscado: " << endl;
				cin >> id_buscado;

				auto result = anfibios_ex.find(id_buscado);
			
				if(result != anfibios_ex.end()){
					cout << "ID existe!" << endl;

					//Classe dos anfibios.
					classe = "Amphibia";

					//Recebe o nome e verifica se é valido.
					do{
						cout << "Digite o nome:" << endl;
						cin.ignore();
						getline(cin, nome);
						if(!verifica_nome(nome, sucesso)){
							cout << "ERRO: só pode ser inserido letra ou espaço!" << endl << endl;
						}
						else{
							transform(nome.begin(), nome.end(), nome.begin(), ::tolower); // Converte a string nome para caracteres minusculos.
						}
					}while(sucesso == 'n');

			
					//Recebe o nome cientifico e verifica se é valido.
					do{
						cout << "Digite o nome científico:" << endl;
						getline(cin, nome_cientifico);
						if(!verifica_nome_cient(nome_cientifico, sucesso)){
							cout << "ERRO: só pode ser inserido letra, espaço ou traço!" << endl << endl;
						}
					}while(sucesso == 'n');

					//Recebe a dieta e verifica se não possui caracteres proibidos.
					do{
						cout << "Digite a dieta: " << endl;
						getline(cin, dieta);
						if(!verifica_dieta(dieta, sucesso)){
							cout << "ERRO: só pode ser inserido letra ou espaço!" << endl << endl;
						}
					}while(sucesso == 'n');
					
					//Recebe o nome do veterinario e verifica se não possui caracteres proibidos.
					do{
						cout << "Digite o nome do veterinario: " << endl;
						getline(cin, veterinario);
						
						if(!verifica_nome(veterinario, sucesso)){
							cout << "ERRO: só pode ser inserido letra ou espaço!" << endl << endl;
						}
						check = check_vet(vets, veterinario);
						if(!check){
							cout << endl;
							cout << "ERRO: Veterinario não cadastrado!" << endl;
							sucesso = 'n';
						}
					}while(sucesso == 'n');
					
					//Recebe o nome do tratador e verifica se não possui caracteres proibido, se já foi cadastrado ou se possui nivel de segurança adequado.
					do{
						cout << "Digite o nome do tratador: " << endl;
						getline(cin, tratador);
						if(!verifica_nome(tratador, sucesso)){
							cout << "ERRO: só pode ser inserido letra ou espaço!" << endl << endl;
						}
						check = check_tratador(0, tratadores, tratador, tipo);
						if(!check){
							cout << endl;
							cout << "ERRO: Tratador não cadastrado ou não se adequa!" << endl << endl;
							sucesso = 'n';
						}
					}while(sucesso == 'n');

					
					//Recebe o nome e verifica se é valido.
					do{
						cout << "Digite o nome de batismo: " << endl;
						getline(cin, nome_batismo);
						if(!verifica_nome(nome_batismo, sucesso)){
							cout << "ERRO: só pode ser inserido letra ou espaço!" << endl << endl;
						}
						transform(nome_batismo.begin(), nome_batismo.end(), nome_batismo.begin(), ::tolower); // Converte a string nome para caracteres maiúsculos.
					}while(sucesso == 'n');

					//Recebe o sexo do animal e verifica se é F ou M.
					do{
						cout << "Digite o sexo do animal: " << endl;
						getline(cin, sexo_string);
						transform(sexo_string.begin(), sexo_string.end(), sexo_string.begin(), ::toupper); // Converte a string nome para caracteres maiúsculos.
						if(sexo_string != "F" && sexo_string != "M" ){
							sucesso = 'n';
							cout << "ERRO: só são permitidos F ou M!" << endl << endl;
						}
						else{
							sexo = (char)sexo_string[0];
							sucesso = 's';
						}

					}while(sucesso == 'n');
					
					//Recebe o tamanho do animal e verifica se não caracteres pproibidos.
					do{
						cout << "Digite o tamanho do animal: " << endl;
						getline(cin, tamanho_string);
						if(!verifica_tamanho(tamanho_string, sucesso)){
							cout << "ERRO: o tamanho do animal tem que ter apenas um '.' " << endl << endl;
						}
						tamanho = stod(tamanho_string);
					}while(sucesso == 'n');
					
					//Recebe o total de mudas e verifica se é um inteiro positivo.
					do{
						cout << "Insira o total de mudas:" << endl;
						getline(cin, total_mudas_string);
						if(!verifica_inteiro(total_mudas_string, sucesso)){
							cout << "ERRO: O total de mudas deve conter apenas inteiros positivos!" << endl << endl;
						}
						else{
							stringstream ss(total_mudas_string);
							ss >> total_mudas;
						}
					}while(sucesso == 'n');
					
					//Recebe a ultima muda e verifica se está no formato correto.
					do{
						cout << "Insira a data da última muda(dd-mm-aaaa)" << endl;
						getline(cin, ultima_muda);
						if(!verifica_data(ultima_muda, sucesso)){
							cout << "ERRO: A ultima muda deve ser nesse formato ex.: 12-03-2019" << endl << endl;
						}
					}while(sucesso == 'n');

					//Verifica se a autorizacao está no formato correto.
					do{
						cout << "Insira a autorizacao do IBAMA: " << endl;
						getline(cin, autorizacao_IBAMA);
						if(!verifica_autorizacao(autorizacao_IBAMA, sucesso)){
							cout << "ERRO: A autorizacao deve conter letras, numeros e '-'" << endl << endl;
						}
					}while(sucesso == 'n');


					//Verifica se foi passado uma string.
					do{
						cout << "Digite o País de origem: " << endl;
						getline(cin, origem);
						if(!verifica_origem(origem, sucesso)){
							cout << "ERRO: Deve-se colocar apenas letras!" << endl << endl;
						}
					}while(sucesso == 'n');

					//Verifica se a autorizacao está no formato correto.
					do{
						cout << "Insira a autorizacao do animal: " << endl;
						getline(cin, autorizacao);
						if(!verifica_autorizacao(autorizacao, sucesso)){
							cout << "ERRO: A autorizacao deve conter letras, numeros e '-'" << endl << endl;
						}
					}while(sucesso == 'n');

					(*result).second = ANFIBIO_EXOTICO(id_buscado, classe,nome, nome_cientifico, sexo, tamanho, dieta, veterinario, tratador, nome_batismo, total_mudas, ultima_muda, autorizacao_IBAMA, origem, autorizacao);
					sucesso = 's';
				}
				else{
					cout << "Animal não cadastrado!!" << endl;
					sucesso = 'n';
				}
				if(sucesso == 's'){
					exoticos.open("anfibios_ex.txt");
					for(auto it = anfibios_ex.begin(); it != anfibios_ex.end(); it++){
						exoticos << (*it).second;
					}
					exoticos.close();
				}

				cout << "\nDeseja editar outro? s/n" << endl;
				cin >> op;
			}	
		} // Primeiro else.
	}while(op == 's');
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1690, %rsp           # imm = 0x1690
movq %rdx, -0x1180(%rbp)
movq %rcx, -0x1178(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movb $0x61, -0x26(%rbp)
leaq -0x50(%rbp), %rdi
callq 0x3300
leaq -0x70(%rbp), %rdi
callq 0x3300
leaq -0x90(%rbp), %rdi
callq 0x3300
leaq -0xb0(%rbp), %rdi
callq 0x3300
leaq -0xd0(%rbp), %rdi
callq 0x3300
leaq -0xf0(%rbp), %rdi
callq 0x3300
leaq -0x110(%rbp), %rdi
callq 0x3300
leaq -0x130(%rbp), %rdi
callq 0x3300
leaq -0x150(%rbp), %rdi
callq 0x3300
leaq -0x170(%rbp), %rdi
callq 0x3300
leaq -0x190(%rbp), %rdi
callq 0x3300
leaq -0x1b0(%rbp), %rdi
callq 0x3300
leaq -0x1d0(%rbp), %rdi
callq 0x3300
leaq -0x1f0(%rbp), %rdi
callq 0x3300
leaq -0x210(%rbp), %rdi
callq 0x3300
leaq -0x420(%rbp), %rdi
callq 0x33b0
jmp 0x2b4b9
leaq -0x630(%rbp), %rdi
callq 0x33b0
jmp 0x2b4c7
jmp 0x2b4c9
movq 0x25ae8(%rip), %rdi     # 0x50fb8
leaq 0x16d20(%rip), %rsi     # 0x421f7
callq 0x3240
movq %rax, -0x1188(%rbp)
jmp 0x2b4e5
movq -0x1188(%rbp), %rdi
movq 0x25aad(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b4fa
movq 0x25ad7(%rip), %rdi     # 0x50fd8
leaq -0x21(%rbp), %rsi
callq 0x32e0
jmp 0x2b50c
movsbl -0x21(%rbp), %eax
cmpl $0x6e, %eax
je 0x2b607
movsbl -0x21(%rbp), %eax
cmpl $0x65, %eax
je 0x2b607
movq 0x25a8b(%rip), %rdi     # 0x50fb8
leaq 0x16c9d(%rip), %rsi     # 0x421d1
callq 0x3240
movq %rax, -0x1190(%rbp)
jmp 0x2b542
movq -0x1190(%rbp), %rdi
movq 0x25a50(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b557
movq 0x25a5a(%rip), %rdi     # 0x50fb8
movq 0x25a3b(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b56c
movq 0x25a45(%rip), %rdi     # 0x50fb8
leaq 0x1605e(%rip), %rsi     # 0x415d8
callq 0x3240
movq %rax, -0x1198(%rbp)
jmp 0x2b588
movq -0x1198(%rbp), %rdi
movq 0x25a0a(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b59d
movq 0x25a34(%rip), %rdi     # 0x50fd8
leaq -0x22(%rbp), %rsi
callq 0x32e0
jmp 0x2b5af
movsbl -0x22(%rbp), %eax
cmpl $0x73, %eax
jne 0x2b602
jmp 0x2e0b0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2e197
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2e18b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2e17f
jmp 0x2e0a1
movsbl -0x21(%rbp), %eax
cmpl $0x6e, %eax
jne 0x2cb5b
movq 0x2599d(%rip), %rdi     # 0x50fb8
leaq 0x16c05(%rip), %rsi     # 0x42227
callq 0x3240
movq %rax, -0x11a0(%rbp)
jmp 0x2b630
movq -0x11a0(%rbp), %rdi
movq 0x25962(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b645
movq 0x2598c(%rip), %rdi     # 0x50fd8
leaq -0x30(%rbp), %rsi
callq 0x3170
jmp 0x2b657
movq -0x8(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x37590
movq %rax, -0x11a8(%rbp)
jmp 0x2b66d
movq -0x11a8(%rbp), %rax
movq %rax, -0x638(%rbp)
movq -0x8(%rbp), %rdi
callq 0x13d10
movq %rax, -0x640(%rbp)
leaq -0x638(%rbp), %rdi
leaq -0x640(%rbp), %rsi
callq 0x13ce0
testb $0x1, %al
jne 0x2b6a7
jmp 0x2ca34
movq 0x2590a(%rip), %rdi     # 0x50fb8
leaq 0x16b88(%rip), %rsi     # 0x4223d
callq 0x3240
movq %rax, -0x11b0(%rbp)
jmp 0x2b6c3
movq -0x11b0(%rbp), %rdi
movq 0x258cf(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b6d8
leaq 0x1642e(%rip), %rsi     # 0x41b0d
leaq -0x50(%rbp), %rdi
callq 0x32f0
jmp 0x2b6ea
jmp 0x2b6ec
movq 0x258c5(%rip), %rdi     # 0x50fb8
leaq 0x16049(%rip), %rsi     # 0x41743
callq 0x3240
movq %rax, -0x11b8(%rbp)
jmp 0x2b708
movq -0x11b8(%rbp), %rdi
movq 0x2588a(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b71d
movq 0x258b4(%rip), %rdi     # 0x50fd8
callq 0x33f0
jmp 0x2b72b
movq 0x258a6(%rip), %rdi     # 0x50fd8
leaq -0x190(%rbp), %rsi
callq 0x3070
jmp 0x2b740
leaq -0x190(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f480
movb %al, -0x11b9(%rbp)
jmp 0x2b758
movb -0x11b9(%rbp), %al
testb $0x1, %al
jne 0x2b7b3
jmp 0x2b764
movq 0x2584d(%rip), %rdi     # 0x50fb8
leaq 0x15fe0(%rip), %rsi     # 0x41752
callq 0x3240
movq %rax, -0x11c8(%rbp)
jmp 0x2b780
movq -0x11c8(%rbp), %rdi
movq 0x25812(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x11d0(%rbp)
jmp 0x2b79c
movq -0x11d0(%rbp), %rdi
movq 0x257f6(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b7b1
jmp 0x2b82b
leaq -0x190(%rbp), %rdi
movq %rdi, -0x11e0(%rbp)
callq 0x31e0
movq -0x11e0(%rbp), %rdi
movq %rax, -0x648(%rbp)
callq 0x3120
movq -0x11e0(%rbp), %rdi
movq %rax, -0x650(%rbp)
callq 0x31e0
movq %rax, -0x658(%rbp)
movq -0x648(%rbp), %rdi
movq -0x650(%rbp), %rsi
movq -0x658(%rbp), %rdx
movq 0x257b9(%rip), %rcx     # 0x50fc8
callq 0x1f5a0
movq %rax, -0x11d8(%rbp)
jmp 0x2b81d
movq -0x11d8(%rbp), %rax
movq %rax, -0x660(%rbp)
jmp 0x2b82d
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2b6ec
jmp 0x2b83c
movq 0x25775(%rip), %rdi     # 0x50fb8
leaq 0x162cc(%rip), %rsi     # 0x41b16
callq 0x3240
movq %rax, -0x11e8(%rbp)
jmp 0x2b858
movq -0x11e8(%rbp), %rdi
movq 0x2573a(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b86d
movq 0x25764(%rip), %rdi     # 0x50fd8
leaq -0x70(%rbp), %rsi
callq 0x3070
jmp 0x2b87f
leaq -0x70(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f5c0
movb %al, -0x11e9(%rbp)
jmp 0x2b894
movb -0x11e9(%rbp), %al
testb $0x1, %al
jne 0x2b8ef
jmp 0x2b8a0
movq 0x25711(%rip), %rdi     # 0x50fb8
leaq 0x16283(%rip), %rsi     # 0x41b31
callq 0x3240
movq %rax, -0x11f8(%rbp)
jmp 0x2b8bc
movq -0x11f8(%rbp), %rdi
movq 0x256d6(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1200(%rbp)
jmp 0x2b8d8
movq -0x1200(%rbp), %rdi
movq 0x256ba(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b8ed
jmp 0x2b8ef
jmp 0x2b8f1
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2b83c
jmp 0x2b900
movq 0x256b1(%rip), %rdi     # 0x50fb8
leaq 0x16259(%rip), %rsi     # 0x41b67
callq 0x3240
movq %rax, -0x1208(%rbp)
jmp 0x2b91c
movq -0x1208(%rbp), %rdi
movq 0x25676(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b931
movq 0x256a0(%rip), %rdi     # 0x50fd8
leaq -0x90(%rbp), %rsi
callq 0x3070
jmp 0x2b946
leaq -0x90(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40170
movb %al, -0x1209(%rbp)
jmp 0x2b95e
movb -0x1209(%rbp), %al
testb $0x1, %al
jne 0x2b9b9
jmp 0x2b96a
movq 0x25647(%rip), %rdi     # 0x50fb8
leaq 0x15dda(%rip), %rsi     # 0x41752
callq 0x3240
movq %rax, -0x1218(%rbp)
jmp 0x2b986
movq -0x1218(%rbp), %rdi
movq 0x2560c(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1220(%rbp)
jmp 0x2b9a2
movq -0x1220(%rbp), %rdi
movq 0x255f0(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b9b7
jmp 0x2b9b9
jmp 0x2b9bb
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2b900
jmp 0x2b9ca
movq 0x255e7(%rip), %rdi     # 0x50fb8
leaq 0x161a0(%rip), %rsi     # 0x41b78
callq 0x3240
movq %rax, -0x1228(%rbp)
jmp 0x2b9e6
movq -0x1228(%rbp), %rdi
movq 0x255ac(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2b9fb
movq 0x255d6(%rip), %rdi     # 0x50fd8
leaq -0xb0(%rbp), %rsi
callq 0x3070
jmp 0x2ba10
leaq -0xb0(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f480
movb %al, -0x1229(%rbp)
jmp 0x2ba28
movb -0x1229(%rbp), %al
testb $0x1, %al
jne 0x2ba83
jmp 0x2ba34
movq 0x2557d(%rip), %rdi     # 0x50fb8
leaq 0x15d10(%rip), %rsi     # 0x41752
callq 0x3240
movq %rax, -0x1238(%rbp)
jmp 0x2ba50
movq -0x1238(%rbp), %rdi
movq 0x25542(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1240(%rbp)
jmp 0x2ba6c
movq -0x1240(%rbp), %rdi
movq 0x25526(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2ba81
jmp 0x2ba83
leaq -0x680(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x3100
jmp 0x2ba98
movq -0x1180(%rbp), %rdi
leaq -0x680(%rbp), %rsi
callq 0x3d7a0
movb %al, -0x1241(%rbp)
jmp 0x2bab3
movb -0x1241(%rbp), %al
andb $0x1, %al
movb %al, -0x211(%rbp)
leaq -0x680(%rbp), %rdi
callq 0x3180
testb $0x1, -0x211(%rbp)
jne 0x2bb45
movq 0x254db(%rip), %rdi     # 0x50fb8
movq 0x254bc(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2baeb
movq 0x254c6(%rip), %rdi     # 0x50fb8
leaq 0x1609e(%rip), %rsi     # 0x41b97
callq 0x3240
movq %rax, -0x1250(%rbp)
jmp 0x2bb07
movq -0x1250(%rbp), %rdi
movq 0x2548b(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2bb1c
movb $0x6e, -0x24(%rbp)
jmp 0x2bb45
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0x680(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
jmp 0x2bb47
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2b9ca
jmp 0x2bb56
movq 0x2545b(%rip), %rdi     # 0x50fb8
leaq 0x16056(%rip), %rsi     # 0x41bba
callq 0x3240
movq %rax, -0x1258(%rbp)
jmp 0x2bb72
movq -0x1258(%rbp), %rdi
movq 0x25420(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2bb87
movq 0x2544a(%rip), %rdi     # 0x50fd8
leaq -0xd0(%rbp), %rsi
callq 0x3070
jmp 0x2bb9c
leaq -0xd0(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f480
movb %al, -0x1259(%rbp)
jmp 0x2bbb4
movb -0x1259(%rbp), %al
testb $0x1, %al
jne 0x2bc0f
jmp 0x2bbc0
movq 0x253f1(%rip), %rdi     # 0x50fb8
leaq 0x15b84(%rip), %rsi     # 0x41752
callq 0x3240
movq %rax, -0x1268(%rbp)
jmp 0x2bbdc
movq -0x1268(%rbp), %rdi
movq 0x253b6(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1270(%rbp)
jmp 0x2bbf8
movq -0x1270(%rbp), %rdi
movq 0x2539a(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2bc0d
jmp 0x2bc0f
leaq -0x6a0(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
callq 0x3100
jmp 0x2bc24
movq -0x1178(%rbp), %rsi
movsbl -0x26(%rbp), %ecx
xorl %edi, %edi
leaq -0x6a0(%rbp), %rdx
callq 0x3d850
movb %al, -0x1271(%rbp)
jmp 0x2bc45
movb -0x1271(%rbp), %al
andb $0x1, %al
movb %al, -0x211(%rbp)
leaq -0x6a0(%rbp), %rdi
callq 0x3180
testb $0x1, -0x211(%rbp)
jne 0x2bcf7
movq 0x25345(%rip), %rdi     # 0x50fb8
movq 0x25326(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2bc81
movq 0x25330(%rip), %rdi     # 0x50fb8
leaq 0x15f47(%rip), %rsi     # 0x41bd6
callq 0x3240
movq %rax, -0x1280(%rbp)
jmp 0x2bc9d
movq -0x1280(%rbp), %rdi
movq 0x252f5(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1288(%rbp)
jmp 0x2bcb9
movq -0x1288(%rbp), %rdi
movq 0x252d9(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2bcce
movb $0x6e, -0x24(%rbp)
jmp 0x2bcf7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0x6a0(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
jmp 0x2bcf9
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2bb56
jmp 0x2bd08
movq 0x252a9(%rip), %rdi     # 0x50fb8
leaq 0x15ef2(%rip), %rsi     # 0x41c08
callq 0x3240
movq %rax, -0x1290(%rbp)
jmp 0x2bd24
movq -0x1290(%rbp), %rdi
movq 0x2526e(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2bd39
movq 0x25298(%rip), %rdi     # 0x50fd8
leaq -0xf0(%rbp), %rsi
callq 0x3070
jmp 0x2bd4e
leaq -0xf0(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f480
movb %al, -0x1291(%rbp)
jmp 0x2bd66
movb -0x1291(%rbp), %al
testb $0x1, %al
jne 0x2bdc1
jmp 0x2bd72
movq 0x2523f(%rip), %rdi     # 0x50fb8
leaq 0x159d2(%rip), %rsi     # 0x41752
callq 0x3240
movq %rax, -0x12a0(%rbp)
jmp 0x2bd8e
movq -0x12a0(%rbp), %rdi
movq 0x25204(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x12a8(%rbp)
jmp 0x2bdaa
movq -0x12a8(%rbp), %rdi
movq 0x251e8(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2bdbf
jmp 0x2bdc1
leaq -0xf0(%rbp), %rdi
movq %rdi, -0x12b8(%rbp)
callq 0x31e0
movq -0x12b8(%rbp), %rdi
movq %rax, -0x6a8(%rbp)
callq 0x3120
movq -0x12b8(%rbp), %rdi
movq %rax, -0x6b0(%rbp)
callq 0x31e0
movq %rax, -0x6b8(%rbp)
movq -0x6a8(%rbp), %rdi
movq -0x6b0(%rbp), %rsi
movq -0x6b8(%rbp), %rdx
movq 0x251ab(%rip), %rcx     # 0x50fc8
callq 0x1f5a0
movq %rax, -0x12b0(%rbp)
jmp 0x2be2b
movq -0x12b0(%rbp), %rax
movq %rax, -0x6c0(%rbp)
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2bd08
jmp 0x2be48
movq 0x25169(%rip), %rdi     # 0x50fb8
leaq 0x15dcd(%rip), %rsi     # 0x41c23
callq 0x3240
movq %rax, -0x12c0(%rbp)
jmp 0x2be64
movq -0x12c0(%rbp), %rdi
movq 0x2512e(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2be79
movq 0x25158(%rip), %rdi     # 0x50fd8
leaq -0x1f0(%rbp), %rsi
callq 0x3070
jmp 0x2be8e
leaq -0x1f0(%rbp), %rdi
movq %rdi, -0x12d0(%rbp)
callq 0x31e0
movq -0x12d0(%rbp), %rdi
movq %rax, -0x6c8(%rbp)
callq 0x3120
movq -0x12d0(%rbp), %rdi
movq %rax, -0x6d0(%rbp)
callq 0x31e0
movq %rax, -0x6d8(%rbp)
movq -0x6c8(%rbp), %rdi
movq -0x6d0(%rbp), %rsi
movq -0x6d8(%rbp), %rdx
movq 0x250f6(%rip), %rcx     # 0x50fe0
callq 0x1f5a0
movq %rax, -0x12c8(%rbp)
jmp 0x2bef8
movq -0x12c8(%rbp), %rax
movq %rax, -0x6e0(%rbp)
leaq 0x15d30(%rip), %rsi     # 0x41c3d
leaq -0x1f0(%rbp), %rdi
callq 0x13c60
movb %al, -0x12d1(%rbp)
jmp 0x2bf21
movb -0x12d1(%rbp), %al
testb $0x1, %al
jne 0x2bf2d
jmp 0x2bfa7
leaq 0x15d0b(%rip), %rsi     # 0x41c3f
leaq -0x1f0(%rbp), %rdi
callq 0x13c60
movb %al, -0x12d2(%rbp)
jmp 0x2bf48
movb -0x12d2(%rbp), %al
testb $0x1, %al
jne 0x2bf54
jmp 0x2bfa7
movb $0x6e, -0x24(%rbp)
movq 0x25059(%rip), %rdi     # 0x50fb8
leaq 0x15cdb(%rip), %rsi     # 0x41c41
callq 0x3240
movq %rax, -0x12e0(%rbp)
jmp 0x2bf74
movq -0x12e0(%rbp), %rdi
movq 0x2501e(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x12e8(%rbp)
jmp 0x2bf90
movq -0x12e8(%rbp), %rdi
movq 0x25002(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2bfa5
jmp 0x2bfd0
xorl %eax, %eax
movl %eax, %esi
leaq -0x1f0(%rbp), %rdi
callq 0x3430
movq %rax, -0x12f0(%rbp)
jmp 0x2bfc0
movq -0x12f0(%rbp), %rax
movb (%rax), %al
movb %al, -0x25(%rbp)
movb $0x73, -0x24(%rbp)
jmp 0x2bfd2
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2be48
jmp 0x2bfe1
movq 0x24fd0(%rip), %rdi     # 0x50fb8
leaq 0x15c74(%rip), %rsi     # 0x41c63
callq 0x3240
movq %rax, -0x12f8(%rbp)
jmp 0x2bffd
movq -0x12f8(%rbp), %rdi
movq 0x24f95(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c012
movq 0x24fbf(%rip), %rdi     # 0x50fd8
leaq -0x1d0(%rbp), %rsi
callq 0x3070
jmp 0x2c027
leaq -0x700(%rbp), %rdi
leaq -0x1d0(%rbp), %rsi
callq 0x3100
jmp 0x2c03c
leaq -0x700(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40310
movb %al, -0x12f9(%rbp)
jmp 0x2c054
movb -0x12f9(%rbp), %al
xorb $-0x1, %al
movb %al, -0x12fa(%rbp)
leaq -0x700(%rbp), %rdi
callq 0x3180
movb -0x12fa(%rbp), %al
testb $0x1, %al
jne 0x2c07a
jmp 0x2c0ec
movq 0x24f37(%rip), %rdi     # 0x50fb8
leaq 0x15bf8(%rip), %rsi     # 0x41c80
callq 0x3240
movq %rax, -0x1308(%rbp)
jmp 0x2c096
movq -0x1308(%rbp), %rdi
movq 0x24efc(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1310(%rbp)
jmp 0x2c0b2
movq -0x1310(%rbp), %rdi
movq 0x24ee0(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c0c7
jmp 0x2c0ec
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0x700(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
xorl %eax, %eax
movl %eax, %esi
leaq -0x1d0(%rbp), %rdi
callq 0x1f9a0
movsd %xmm0, -0x1318(%rbp)
jmp 0x2c106
movsd -0x1318(%rbp), %xmm0
movsd %xmm0, -0x220(%rbp)
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2bfe1
jmp 0x2c125
movq 0x24e8c(%rip), %rdi     # 0x50fb8
leaq 0x15b82(%rip), %rsi     # 0x41cb5
callq 0x3240
movq %rax, -0x1320(%rbp)
jmp 0x2c141
movq -0x1320(%rbp), %rdi
movq 0x24e51(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c156
movq 0x24e7b(%rip), %rdi     # 0x50fd8
leaq -0x210(%rbp), %rsi
callq 0x3070
jmp 0x2c16b
leaq -0x720(%rbp), %rdi
leaq -0x210(%rbp), %rsi
callq 0x3100
jmp 0x2c180
leaq -0x720(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f960
movb %al, -0x1321(%rbp)
jmp 0x2c198
movb -0x1321(%rbp), %al
xorb $-0x1, %al
movb %al, -0x1322(%rbp)
leaq -0x720(%rbp), %rdi
callq 0x3180
movb -0x1322(%rbp), %al
testb $0x1, %al
jne 0x2c1be
jmp 0x2c233
movq 0x24df3(%rip), %rdi     # 0x50fb8
leaq 0x15b02(%rip), %rsi     # 0x41cce
callq 0x3240
movq %rax, -0x1330(%rbp)
jmp 0x2c1da
movq -0x1330(%rbp), %rdi
movq 0x24db8(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1338(%rbp)
jmp 0x2c1f6
movq -0x1338(%rbp), %rdi
movq 0x24d9c(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c20b
jmp 0x2c2a8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0x720(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
movl $0x10, %edi
movl $0x8, %esi
callq 0x13c90
movl %eax, -0x133c(%rbp)
jmp 0x2c24a
movl -0x133c(%rbp), %edx
leaq -0x8a8(%rbp), %rdi
leaq -0x210(%rbp), %rsi
callq 0x3370
jmp 0x2c265
leaq -0x8a8(%rbp), %rdi
leaq -0x2c(%rbp), %rsi
callq 0x3170
jmp 0x2c277
leaq -0x8a8(%rbp), %rdi
callq 0x31b0
jmp 0x2c2a8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0x8a8(%rbp), %rdi
callq 0x31b0
jmp 0x2e17f
jmp 0x2c2aa
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2c125
jmp 0x2c2b9
movq 0x24cf8(%rip), %rdi     # 0x50fb8
leaq 0x15a45(%rip), %rsi     # 0x41d0c
callq 0x3240
movq %rax, -0x1348(%rbp)
jmp 0x2c2d5
movq -0x1348(%rbp), %rdi
movq 0x24cbd(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c2ea
movq 0x24ce7(%rip), %rdi     # 0x50fd8
leaq -0x170(%rbp), %rsi
callq 0x3070
jmp 0x2c2ff
leaq -0x8c8(%rbp), %rdi
leaq -0x170(%rbp), %rsi
callq 0x3100
jmp 0x2c314
leaq -0x8c8(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40430
movb %al, -0x1349(%rbp)
jmp 0x2c32c
movb -0x1349(%rbp), %al
xorb $-0x1, %al
movb %al, -0x134a(%rbp)
leaq -0x8c8(%rbp), %rdi
callq 0x3180
movb -0x134a(%rbp), %al
testb $0x1, %al
jne 0x2c352
jmp 0x2c3c4
movq 0x24c5f(%rip), %rdi     # 0x50fb8
leaq 0x159d6(%rip), %rsi     # 0x41d36
callq 0x3240
movq %rax, -0x1358(%rbp)
jmp 0x2c36e
movq -0x1358(%rbp), %rdi
movq 0x24c24(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1360(%rbp)
jmp 0x2c38a
movq -0x1360(%rbp), %rdi
movq 0x24c08(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c39f
jmp 0x2c3c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0x8c8(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
jmp 0x2c3c6
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2c2b9
jmp 0x2c3d5
movq 0x24bdc(%rip), %rdi     # 0x50fb8
leaq 0x1598e(%rip), %rsi     # 0x41d71
callq 0x3240
movq %rax, -0x1368(%rbp)
jmp 0x2c3f1
movq -0x1368(%rbp), %rdi
movq 0x24ba1(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c406
movq 0x24bcb(%rip), %rdi     # 0x50fd8
leaq -0x130(%rbp), %rsi
callq 0x3070
jmp 0x2c41b
leaq -0x130(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40550
movb %al, -0x1369(%rbp)
jmp 0x2c433
movb -0x1369(%rbp), %al
testb $0x1, %al
jne 0x2c48e
jmp 0x2c43f
movq 0x24b72(%rip), %rdi     # 0x50fb8
leaq 0x15944(%rip), %rsi     # 0x41d91
callq 0x3240
movq %rax, -0x1378(%rbp)
jmp 0x2c45b
movq -0x1378(%rbp), %rdi
movq 0x24b37(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1380(%rbp)
jmp 0x2c477
movq -0x1380(%rbp), %rdi
movq 0x24b1b(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c48c
jmp 0x2c48e
jmp 0x2c490
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2c3d5
jmp 0x2c49f
movq 0x24b12(%rip), %rdi     # 0x50fb8
leaq 0x1591a(%rip), %rsi     # 0x41dc7
callq 0x3240
movq %rax, -0x1388(%rbp)
jmp 0x2c4bb
movq -0x1388(%rbp), %rdi
movq 0x24ad7(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c4d0
movq 0x24b01(%rip), %rdi     # 0x50fd8
leaq -0x150(%rbp), %rsi
callq 0x3070
jmp 0x2c4e5
leaq -0x150(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40700
movb %al, -0x1389(%rbp)
jmp 0x2c4fd
movb -0x1389(%rbp), %al
testb $0x1, %al
jne 0x2c558
jmp 0x2c509
movq 0x24aa8(%rip), %rdi     # 0x50fb8
leaq 0x158c8(%rip), %rsi     # 0x41ddf
callq 0x3240
movq %rax, -0x1398(%rbp)
jmp 0x2c525
movq -0x1398(%rbp), %rdi
movq 0x24a6d(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x13a0(%rbp)
jmp 0x2c541
movq -0x13a0(%rbp), %rdi
movq 0x24a51(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c556
jmp 0x2c558
jmp 0x2c55a
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2c49f
jmp 0x2c569
movq 0x24a48(%rip), %rdi     # 0x50fb8
leaq 0x1588d(%rip), %rsi     # 0x41e04
callq 0x3240
movq %rax, -0x13a8(%rbp)
jmp 0x2c585
movq -0x13a8(%rbp), %rdi
movq 0x24a0d(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c59a
movq 0x24a37(%rip), %rdi     # 0x50fd8
leaq -0x110(%rbp), %rsi
callq 0x3070
jmp 0x2c5af
leaq -0x110(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40550
movb %al, -0x13a9(%rbp)
jmp 0x2c5c7
movb -0x13a9(%rbp), %al
testb $0x1, %al
jne 0x2c622
jmp 0x2c5d3
movq 0x249de(%rip), %rdi     # 0x50fb8
leaq 0x157b0(%rip), %rsi     # 0x41d91
callq 0x3240
movq %rax, -0x13b8(%rbp)
jmp 0x2c5ef
movq -0x13b8(%rbp), %rdi
movq 0x249a3(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x13c0(%rbp)
jmp 0x2c60b
movq -0x13c0(%rbp), %rdi
movq 0x24987(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2c620
jmp 0x2c622
jmp 0x2c624
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2c569
movl -0x30(%rbp), %eax
movl %eax, -0x13c4(%rbp)
leaq -0xa78(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x3100
jmp 0x2c64c
leaq -0xa98(%rbp), %rdi
leaq -0x190(%rbp), %rsi
callq 0x3100
jmp 0x2c661
leaq -0xab8(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x3100
jmp 0x2c673
movb -0x25(%rbp), %al
movb %al, -0x13d1(%rbp)
movsd -0x220(%rbp), %xmm0
movsd %xmm0, -0x13d0(%rbp)
leaq -0xad8(%rbp), %rdi
leaq -0x90(%rbp), %rsi
callq 0x3100
jmp 0x2c6a1
leaq -0xaf8(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x3100
jmp 0x2c6b6
leaq -0xb18(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
callq 0x3100
jmp 0x2c6cb
leaq -0xb38(%rbp), %rdi
leaq -0xf0(%rbp), %rsi
callq 0x3100
jmp 0x2c6e0
movl -0x2c(%rbp), %eax
movl %eax, -0x13d8(%rbp)
leaq -0xb58(%rbp), %rdi
leaq -0x170(%rbp), %rsi
callq 0x3100
jmp 0x2c6fe
leaq -0xb78(%rbp), %rdi
leaq -0x130(%rbp), %rsi
callq 0x3100
jmp 0x2c713
leaq -0xb98(%rbp), %rdi
leaq -0x150(%rbp), %rsi
callq 0x3100
jmp 0x2c728
leaq -0xbb8(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x3100
jmp 0x2c73d
movsd -0x13d0(%rbp), %xmm0
movl -0x13c4(%rbp), %esi
movb -0x13d1(%rbp), %al
movl -0x13d8(%rbp), %edx
movq %rsp, %rcx
movq %rcx, -0x13e0(%rbp)
leaq -0xbb8(%rbp), %rdi
movq %rdi, 0x40(%rcx)
leaq -0xb98(%rbp), %rdi
movq %rdi, 0x38(%rcx)
leaq -0xb78(%rbp), %rdi
movq %rdi, 0x30(%rcx)
leaq -0xb58(%rbp), %rdi
movq %rdi, 0x28(%rcx)
movl %edx, 0x20(%rcx)
leaq -0xb38(%rbp), %rdx
movq %rdx, 0x18(%rcx)
leaq -0xb18(%rbp), %rdx
movq %rdx, 0x10(%rcx)
leaq -0xaf8(%rbp), %rdx
movq %rdx, 0x8(%rcx)
leaq -0xad8(%rbp), %rdx
movq %rdx, (%rcx)
movsbl %al, %r9d
leaq -0xa58(%rbp), %rdi
leaq -0xa78(%rbp), %rdx
leaq -0xa98(%rbp), %rcx
leaq -0xab8(%rbp), %r8
callq 0x8c70
jmp 0x2c7e2
leaq -0x638(%rbp), %rdi
callq 0x1fb80
movq %rax, %rdi
addq $0x8, %rdi
leaq -0xa58(%rbp), %rsi
callq 0x375c0
jmp 0x2c803
leaq -0xa58(%rbp), %rdi
callq 0x9160
leaq -0xbb8(%rbp), %rdi
callq 0x3180
leaq -0xb98(%rbp), %rdi
callq 0x3180
leaq -0xb78(%rbp), %rdi
callq 0x3180
leaq -0xb58(%rbp), %rdi
callq 0x3180
leaq -0xb38(%rbp), %rdi
callq 0x3180
leaq -0xb18(%rbp), %rdi
callq 0x3180
leaq -0xaf8(%rbp), %rdi
callq 0x3180
leaq -0xad8(%rbp), %rdi
callq 0x3180
leaq -0xab8(%rbp), %rdi
callq 0x3180
leaq -0xa98(%rbp), %rdi
callq 0x3180
leaq -0xa78(%rbp), %rdi
callq 0x3180
movb $0x73, -0x24(%rbp)
jmp 0x2ca69
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2ca23
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2ca17
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2ca0b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2c9ff
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2c9f3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2c9e7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2c9db
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2c9cf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2c9c3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2c9b7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2c9ab
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0xa58(%rbp), %rdi
callq 0x9160
leaq -0xbb8(%rbp), %rdi
callq 0x3180
leaq -0xb98(%rbp), %rdi
callq 0x3180
leaq -0xb78(%rbp), %rdi
callq 0x3180
leaq -0xb58(%rbp), %rdi
callq 0x3180
leaq -0xb38(%rbp), %rdi
callq 0x3180
leaq -0xb18(%rbp), %rdi
callq 0x3180
leaq -0xaf8(%rbp), %rdi
callq 0x3180
leaq -0xad8(%rbp), %rdi
callq 0x3180
leaq -0xab8(%rbp), %rdi
callq 0x3180
leaq -0xa98(%rbp), %rdi
callq 0x3180
leaq -0xa78(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
movq 0x2457d(%rip), %rdi     # 0x50fb8
leaq 0x15806(%rip), %rsi     # 0x42248
callq 0x3240
movq %rax, -0x13e8(%rbp)
jmp 0x2ca50
movq -0x13e8(%rbp), %rdi
movq 0x24542(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2ca65
movb $0x6e, -0x24(%rbp)
movsbl -0x24(%rbp), %eax
cmpl $0x73, %eax
jne 0x2cb13
leaq 0x15436(%rip), %rsi     # 0x41eb3
leaq -0x420(%rbp), %rdi
movl $0x10, %edx
callq 0x3050
jmp 0x2ca90
movq -0x8(%rbp), %rdi
callq 0x13cb0
movq %rax, -0xbc0(%rbp)
movq -0x8(%rbp), %rdi
callq 0x13d10
movq %rax, -0xbc8(%rbp)
leaq -0xbc0(%rbp), %rdi
leaq -0xbc8(%rbp), %rsi
callq 0x13ce0
testb $0x1, %al
jne 0x2cac9
jmp 0x2cb03
leaq -0xbc0(%rbp), %rdi
callq 0x1fb80
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x420(%rbp), %rdi
callq 0xc850
jmp 0x2caea
jmp 0x2caec
leaq -0xbc0(%rbp), %rdi
xorl %esi, %esi
callq 0x13d70
movq %rax, -0xbd0(%rbp)
jmp 0x2caa0
leaq -0x420(%rbp), %rdi
callq 0x3310
jmp 0x2cb11
jmp 0x2cb13
movq 0x2449e(%rip), %rdi     # 0x50fb8
leaq 0x15740(%rip), %rsi     # 0x42261
callq 0x3240
movq %rax, -0x13f0(%rbp)
jmp 0x2cb2f
movq -0x13f0(%rbp), %rdi
movq 0x24463(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2cb44
movq 0x2448d(%rip), %rdi     # 0x50fd8
leaq -0x23(%rbp), %rsi
callq 0x32e0
jmp 0x2cb56
jmp 0x2e09f
movq 0x24456(%rip), %rdi     # 0x50fb8
leaq 0x156be(%rip), %rsi     # 0x42227
callq 0x3240
movq %rax, -0x13f8(%rbp)
jmp 0x2cb77
movq -0x13f8(%rbp), %rdi
movq 0x2441b(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2cb8c
movq 0x24445(%rip), %rdi     # 0x50fd8
leaq -0x30(%rbp), %rsi
callq 0x3170
jmp 0x2cb9e
movq -0x10(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x37610
movq %rax, -0x1400(%rbp)
jmp 0x2cbb4
movq -0x1400(%rbp), %rax
movq %rax, -0xbd8(%rbp)
movq -0x10(%rbp), %rdi
callq 0x13e10
movq %rax, -0xbe0(%rbp)
leaq -0xbd8(%rbp), %rdi
leaq -0xbe0(%rbp), %rsi
callq 0x13de0
testb $0x1, %al
jne 0x2cbee
jmp 0x2df7b
movq 0x243c3(%rip), %rdi     # 0x50fb8
leaq 0x15641(%rip), %rsi     # 0x4223d
callq 0x3240
movq %rax, -0x1408(%rbp)
jmp 0x2cc0a
movq -0x1408(%rbp), %rdi
movq 0x24388(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2cc1f
leaq 0x14ee7(%rip), %rsi     # 0x41b0d
leaq -0x50(%rbp), %rdi
callq 0x32f0
jmp 0x2cc31
jmp 0x2cc33
movq 0x2437e(%rip), %rdi     # 0x50fb8
leaq 0x14b02(%rip), %rsi     # 0x41743
callq 0x3240
movq %rax, -0x1410(%rbp)
jmp 0x2cc4f
movq -0x1410(%rbp), %rdi
movq 0x24343(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2cc64
movq 0x2436d(%rip), %rdi     # 0x50fd8
callq 0x33f0
jmp 0x2cc72
movq 0x2435f(%rip), %rdi     # 0x50fd8
leaq -0x190(%rbp), %rsi
callq 0x3070
jmp 0x2cc87
leaq -0x190(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f480
movb %al, -0x1411(%rbp)
jmp 0x2cc9f
movb -0x1411(%rbp), %al
testb $0x1, %al
jne 0x2ccfa
jmp 0x2ccab
movq 0x24306(%rip), %rdi     # 0x50fb8
leaq 0x14a99(%rip), %rsi     # 0x41752
callq 0x3240
movq %rax, -0x1420(%rbp)
jmp 0x2ccc7
movq -0x1420(%rbp), %rdi
movq 0x242cb(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1428(%rbp)
jmp 0x2cce3
movq -0x1428(%rbp), %rdi
movq 0x242af(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2ccf8
jmp 0x2cd72
leaq -0x190(%rbp), %rdi
movq %rdi, -0x1438(%rbp)
callq 0x31e0
movq -0x1438(%rbp), %rdi
movq %rax, -0xbe8(%rbp)
callq 0x3120
movq -0x1438(%rbp), %rdi
movq %rax, -0xbf0(%rbp)
callq 0x31e0
movq %rax, -0xbf8(%rbp)
movq -0xbe8(%rbp), %rdi
movq -0xbf0(%rbp), %rsi
movq -0xbf8(%rbp), %rdx
movq 0x24272(%rip), %rcx     # 0x50fc8
callq 0x1f5a0
movq %rax, -0x1430(%rbp)
jmp 0x2cd64
movq -0x1430(%rbp), %rax
movq %rax, -0xc00(%rbp)
jmp 0x2cd74
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2cc33
jmp 0x2cd83
movq 0x2422e(%rip), %rdi     # 0x50fb8
leaq 0x14d85(%rip), %rsi     # 0x41b16
callq 0x3240
movq %rax, -0x1440(%rbp)
jmp 0x2cd9f
movq -0x1440(%rbp), %rdi
movq 0x241f3(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2cdb4
movq 0x2421d(%rip), %rdi     # 0x50fd8
leaq -0x70(%rbp), %rsi
callq 0x3070
jmp 0x2cdc6
leaq -0x70(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f5c0
movb %al, -0x1441(%rbp)
jmp 0x2cddb
movb -0x1441(%rbp), %al
testb $0x1, %al
jne 0x2ce36
jmp 0x2cde7
movq 0x241ca(%rip), %rdi     # 0x50fb8
leaq 0x14d3c(%rip), %rsi     # 0x41b31
callq 0x3240
movq %rax, -0x1450(%rbp)
jmp 0x2ce03
movq -0x1450(%rbp), %rdi
movq 0x2418f(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1458(%rbp)
jmp 0x2ce1f
movq -0x1458(%rbp), %rdi
movq 0x24173(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2ce34
jmp 0x2ce36
jmp 0x2ce38
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2cd83
jmp 0x2ce47
movq 0x2416a(%rip), %rdi     # 0x50fb8
leaq 0x14d12(%rip), %rsi     # 0x41b67
callq 0x3240
movq %rax, -0x1460(%rbp)
jmp 0x2ce63
movq -0x1460(%rbp), %rdi
movq 0x2412f(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2ce78
movq 0x24159(%rip), %rdi     # 0x50fd8
leaq -0x90(%rbp), %rsi
callq 0x3070
jmp 0x2ce8d
leaq -0x90(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40170
movb %al, -0x1461(%rbp)
jmp 0x2cea5
movb -0x1461(%rbp), %al
testb $0x1, %al
jne 0x2cf00
jmp 0x2ceb1
movq 0x24100(%rip), %rdi     # 0x50fb8
leaq 0x14893(%rip), %rsi     # 0x41752
callq 0x3240
movq %rax, -0x1470(%rbp)
jmp 0x2cecd
movq -0x1470(%rbp), %rdi
movq 0x240c5(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1478(%rbp)
jmp 0x2cee9
movq -0x1478(%rbp), %rdi
movq 0x240a9(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2cefe
jmp 0x2cf00
jmp 0x2cf02
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2ce47
jmp 0x2cf11
movq 0x240a0(%rip), %rdi     # 0x50fb8
leaq 0x14c59(%rip), %rsi     # 0x41b78
callq 0x3240
movq %rax, -0x1480(%rbp)
jmp 0x2cf2d
movq -0x1480(%rbp), %rdi
movq 0x24065(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2cf42
movq 0x2408f(%rip), %rdi     # 0x50fd8
leaq -0xb0(%rbp), %rsi
callq 0x3070
jmp 0x2cf57
leaq -0xb0(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f480
movb %al, -0x1481(%rbp)
jmp 0x2cf6f
movb -0x1481(%rbp), %al
testb $0x1, %al
jne 0x2cfca
jmp 0x2cf7b
movq 0x24036(%rip), %rdi     # 0x50fb8
leaq 0x147c9(%rip), %rsi     # 0x41752
callq 0x3240
movq %rax, -0x1490(%rbp)
jmp 0x2cf97
movq -0x1490(%rbp), %rdi
movq 0x23ffb(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1498(%rbp)
jmp 0x2cfb3
movq -0x1498(%rbp), %rdi
movq 0x23fdf(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2cfc8
jmp 0x2cfca
leaq -0xc20(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x3100
jmp 0x2cfdf
movq -0x1180(%rbp), %rdi
leaq -0xc20(%rbp), %rsi
callq 0x3d7a0
movb %al, -0x1499(%rbp)
jmp 0x2cffa
movb -0x1499(%rbp), %al
andb $0x1, %al
movb %al, -0x211(%rbp)
leaq -0xc20(%rbp), %rdi
callq 0x3180
testb $0x1, -0x211(%rbp)
jne 0x2d08c
movq 0x23f94(%rip), %rdi     # 0x50fb8
movq 0x23f75(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d032
movq 0x23f7f(%rip), %rdi     # 0x50fb8
leaq 0x14b57(%rip), %rsi     # 0x41b97
callq 0x3240
movq %rax, -0x14a8(%rbp)
jmp 0x2d04e
movq -0x14a8(%rbp), %rdi
movq 0x23f44(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d063
movb $0x6e, -0x24(%rbp)
jmp 0x2d08c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0xc20(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
jmp 0x2d08e
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2cf11
jmp 0x2d09d
movq 0x23f14(%rip), %rdi     # 0x50fb8
leaq 0x14b0f(%rip), %rsi     # 0x41bba
callq 0x3240
movq %rax, -0x14b0(%rbp)
jmp 0x2d0b9
movq -0x14b0(%rbp), %rdi
movq 0x23ed9(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d0ce
movq 0x23f03(%rip), %rdi     # 0x50fd8
leaq -0xd0(%rbp), %rsi
callq 0x3070
jmp 0x2d0e3
leaq -0xd0(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f480
movb %al, -0x14b1(%rbp)
jmp 0x2d0fb
movb -0x14b1(%rbp), %al
testb $0x1, %al
jne 0x2d156
jmp 0x2d107
movq 0x23eaa(%rip), %rdi     # 0x50fb8
leaq 0x1463d(%rip), %rsi     # 0x41752
callq 0x3240
movq %rax, -0x14c0(%rbp)
jmp 0x2d123
movq -0x14c0(%rbp), %rdi
movq 0x23e6f(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x14c8(%rbp)
jmp 0x2d13f
movq -0x14c8(%rbp), %rdi
movq 0x23e53(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d154
jmp 0x2d156
leaq -0xc40(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
callq 0x3100
jmp 0x2d16b
movq -0x1178(%rbp), %rsi
movsbl -0x26(%rbp), %ecx
xorl %edi, %edi
leaq -0xc40(%rbp), %rdx
callq 0x3d850
movb %al, -0x14c9(%rbp)
jmp 0x2d18c
movb -0x14c9(%rbp), %al
andb $0x1, %al
movb %al, -0x211(%rbp)
leaq -0xc40(%rbp), %rdi
callq 0x3180
testb $0x1, -0x211(%rbp)
jne 0x2d23e
movq 0x23dfe(%rip), %rdi     # 0x50fb8
movq 0x23ddf(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d1c8
movq 0x23de9(%rip), %rdi     # 0x50fb8
leaq 0x14a00(%rip), %rsi     # 0x41bd6
callq 0x3240
movq %rax, -0x14d8(%rbp)
jmp 0x2d1e4
movq -0x14d8(%rbp), %rdi
movq 0x23dae(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x14e0(%rbp)
jmp 0x2d200
movq -0x14e0(%rbp), %rdi
movq 0x23d92(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d215
movb $0x6e, -0x24(%rbp)
jmp 0x2d23e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0xc40(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
jmp 0x2d240
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2d09d
jmp 0x2d24f
movq 0x23d62(%rip), %rdi     # 0x50fb8
leaq 0x149ab(%rip), %rsi     # 0x41c08
callq 0x3240
movq %rax, -0x14e8(%rbp)
jmp 0x2d26b
movq -0x14e8(%rbp), %rdi
movq 0x23d27(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d280
movq 0x23d51(%rip), %rdi     # 0x50fd8
leaq -0xf0(%rbp), %rsi
callq 0x3070
jmp 0x2d295
leaq -0xf0(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f480
movb %al, -0x14e9(%rbp)
jmp 0x2d2ad
movb -0x14e9(%rbp), %al
testb $0x1, %al
jne 0x2d308
jmp 0x2d2b9
movq 0x23cf8(%rip), %rdi     # 0x50fb8
leaq 0x1448b(%rip), %rsi     # 0x41752
callq 0x3240
movq %rax, -0x14f8(%rbp)
jmp 0x2d2d5
movq -0x14f8(%rbp), %rdi
movq 0x23cbd(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1500(%rbp)
jmp 0x2d2f1
movq -0x1500(%rbp), %rdi
movq 0x23ca1(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d306
jmp 0x2d308
leaq -0xf0(%rbp), %rdi
movq %rdi, -0x1510(%rbp)
callq 0x31e0
movq -0x1510(%rbp), %rdi
movq %rax, -0xc48(%rbp)
callq 0x3120
movq -0x1510(%rbp), %rdi
movq %rax, -0xc50(%rbp)
callq 0x31e0
movq %rax, -0xc58(%rbp)
movq -0xc48(%rbp), %rdi
movq -0xc50(%rbp), %rsi
movq -0xc58(%rbp), %rdx
movq 0x23c64(%rip), %rcx     # 0x50fc8
callq 0x1f5a0
movq %rax, -0x1508(%rbp)
jmp 0x2d372
movq -0x1508(%rbp), %rax
movq %rax, -0xc60(%rbp)
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2d24f
jmp 0x2d38f
movq 0x23c22(%rip), %rdi     # 0x50fb8
leaq 0x14886(%rip), %rsi     # 0x41c23
callq 0x3240
movq %rax, -0x1518(%rbp)
jmp 0x2d3ab
movq -0x1518(%rbp), %rdi
movq 0x23be7(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d3c0
movq 0x23c11(%rip), %rdi     # 0x50fd8
leaq -0x1f0(%rbp), %rsi
callq 0x3070
jmp 0x2d3d5
leaq -0x1f0(%rbp), %rdi
movq %rdi, -0x1528(%rbp)
callq 0x31e0
movq -0x1528(%rbp), %rdi
movq %rax, -0xc68(%rbp)
callq 0x3120
movq -0x1528(%rbp), %rdi
movq %rax, -0xc70(%rbp)
callq 0x31e0
movq %rax, -0xc78(%rbp)
movq -0xc68(%rbp), %rdi
movq -0xc70(%rbp), %rsi
movq -0xc78(%rbp), %rdx
movq 0x23baf(%rip), %rcx     # 0x50fe0
callq 0x1f5a0
movq %rax, -0x1520(%rbp)
jmp 0x2d43f
movq -0x1520(%rbp), %rax
movq %rax, -0xc80(%rbp)
leaq 0x147e9(%rip), %rsi     # 0x41c3d
leaq -0x1f0(%rbp), %rdi
callq 0x13c60
movb %al, -0x1529(%rbp)
jmp 0x2d468
movb -0x1529(%rbp), %al
testb $0x1, %al
jne 0x2d474
jmp 0x2d4ee
leaq 0x147c4(%rip), %rsi     # 0x41c3f
leaq -0x1f0(%rbp), %rdi
callq 0x13c60
movb %al, -0x152a(%rbp)
jmp 0x2d48f
movb -0x152a(%rbp), %al
testb $0x1, %al
jne 0x2d49b
jmp 0x2d4ee
movb $0x6e, -0x24(%rbp)
movq 0x23b12(%rip), %rdi     # 0x50fb8
leaq 0x14794(%rip), %rsi     # 0x41c41
callq 0x3240
movq %rax, -0x1538(%rbp)
jmp 0x2d4bb
movq -0x1538(%rbp), %rdi
movq 0x23ad7(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1540(%rbp)
jmp 0x2d4d7
movq -0x1540(%rbp), %rdi
movq 0x23abb(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d4ec
jmp 0x2d517
xorl %eax, %eax
movl %eax, %esi
leaq -0x1f0(%rbp), %rdi
callq 0x3430
movq %rax, -0x1548(%rbp)
jmp 0x2d507
movq -0x1548(%rbp), %rax
movb (%rax), %al
movb %al, -0x25(%rbp)
movb $0x73, -0x24(%rbp)
jmp 0x2d519
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2d38f
jmp 0x2d528
movq 0x23a89(%rip), %rdi     # 0x50fb8
leaq 0x1472d(%rip), %rsi     # 0x41c63
callq 0x3240
movq %rax, -0x1550(%rbp)
jmp 0x2d544
movq -0x1550(%rbp), %rdi
movq 0x23a4e(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d559
movq 0x23a78(%rip), %rdi     # 0x50fd8
leaq -0x1d0(%rbp), %rsi
callq 0x3070
jmp 0x2d56e
leaq -0xca0(%rbp), %rdi
leaq -0x1d0(%rbp), %rsi
callq 0x3100
jmp 0x2d583
leaq -0xca0(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40310
movb %al, -0x1551(%rbp)
jmp 0x2d59b
movb -0x1551(%rbp), %al
xorb $-0x1, %al
movb %al, -0x1552(%rbp)
leaq -0xca0(%rbp), %rdi
callq 0x3180
movb -0x1552(%rbp), %al
testb $0x1, %al
jne 0x2d5c1
jmp 0x2d633
movq 0x239f0(%rip), %rdi     # 0x50fb8
leaq 0x146b1(%rip), %rsi     # 0x41c80
callq 0x3240
movq %rax, -0x1560(%rbp)
jmp 0x2d5dd
movq -0x1560(%rbp), %rdi
movq 0x239b5(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1568(%rbp)
jmp 0x2d5f9
movq -0x1568(%rbp), %rdi
movq 0x23999(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d60e
jmp 0x2d633
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0xca0(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
xorl %eax, %eax
movl %eax, %esi
leaq -0x1d0(%rbp), %rdi
callq 0x1f9a0
movsd %xmm0, -0x1570(%rbp)
jmp 0x2d64d
movsd -0x1570(%rbp), %xmm0
movsd %xmm0, -0x220(%rbp)
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2d528
jmp 0x2d66c
movq 0x23945(%rip), %rdi     # 0x50fb8
leaq 0x1463b(%rip), %rsi     # 0x41cb5
callq 0x3240
movq %rax, -0x1578(%rbp)
jmp 0x2d688
movq -0x1578(%rbp), %rdi
movq 0x2390a(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d69d
movq 0x23934(%rip), %rdi     # 0x50fd8
leaq -0x210(%rbp), %rsi
callq 0x3070
jmp 0x2d6b2
leaq -0xcc0(%rbp), %rdi
leaq -0x210(%rbp), %rsi
callq 0x3100
jmp 0x2d6c7
leaq -0xcc0(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x3f960
movb %al, -0x1579(%rbp)
jmp 0x2d6df
movb -0x1579(%rbp), %al
xorb $-0x1, %al
movb %al, -0x157a(%rbp)
leaq -0xcc0(%rbp), %rdi
callq 0x3180
movb -0x157a(%rbp), %al
testb $0x1, %al
jne 0x2d705
jmp 0x2d77a
movq 0x238ac(%rip), %rdi     # 0x50fb8
leaq 0x145bb(%rip), %rsi     # 0x41cce
callq 0x3240
movq %rax, -0x1588(%rbp)
jmp 0x2d721
movq -0x1588(%rbp), %rdi
movq 0x23871(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1590(%rbp)
jmp 0x2d73d
movq -0x1590(%rbp), %rdi
movq 0x23855(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d752
jmp 0x2d7ef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0xcc0(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
movl $0x10, %edi
movl $0x8, %esi
callq 0x13c90
movl %eax, -0x1594(%rbp)
jmp 0x2d791
movl -0x1594(%rbp), %edx
leaq -0xe48(%rbp), %rdi
leaq -0x210(%rbp), %rsi
callq 0x3370
jmp 0x2d7ac
leaq -0xe48(%rbp), %rdi
leaq -0x2c(%rbp), %rsi
callq 0x3170
jmp 0x2d7be
leaq -0xe48(%rbp), %rdi
callq 0x31b0
jmp 0x2d7ef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0xe48(%rbp), %rdi
callq 0x31b0
jmp 0x2e17f
jmp 0x2d7f1
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2d66c
jmp 0x2d800
movq 0x237b1(%rip), %rdi     # 0x50fb8
leaq 0x144fe(%rip), %rsi     # 0x41d0c
callq 0x3240
movq %rax, -0x15a0(%rbp)
jmp 0x2d81c
movq -0x15a0(%rbp), %rdi
movq 0x23776(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d831
movq 0x237a0(%rip), %rdi     # 0x50fd8
leaq -0x170(%rbp), %rsi
callq 0x3070
jmp 0x2d846
leaq -0xe68(%rbp), %rdi
leaq -0x170(%rbp), %rsi
callq 0x3100
jmp 0x2d85b
leaq -0xe68(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40430
movb %al, -0x15a1(%rbp)
jmp 0x2d873
movb -0x15a1(%rbp), %al
xorb $-0x1, %al
movb %al, -0x15a2(%rbp)
leaq -0xe68(%rbp), %rdi
callq 0x3180
movb -0x15a2(%rbp), %al
testb $0x1, %al
jne 0x2d899
jmp 0x2d90b
movq 0x23718(%rip), %rdi     # 0x50fb8
leaq 0x1448f(%rip), %rsi     # 0x41d36
callq 0x3240
movq %rax, -0x15b0(%rbp)
jmp 0x2d8b5
movq -0x15b0(%rbp), %rdi
movq 0x236dd(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x15b8(%rbp)
jmp 0x2d8d1
movq -0x15b8(%rbp), %rdi
movq 0x236c1(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d8e6
jmp 0x2d90b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0xe68(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
jmp 0x2d90d
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2d800
jmp 0x2d91c
movq 0x23695(%rip), %rdi     # 0x50fb8
leaq 0x14447(%rip), %rsi     # 0x41d71
callq 0x3240
movq %rax, -0x15c0(%rbp)
jmp 0x2d938
movq -0x15c0(%rbp), %rdi
movq 0x2365a(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d94d
movq 0x23684(%rip), %rdi     # 0x50fd8
leaq -0x130(%rbp), %rsi
callq 0x3070
jmp 0x2d962
leaq -0x130(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40550
movb %al, -0x15c1(%rbp)
jmp 0x2d97a
movb -0x15c1(%rbp), %al
testb $0x1, %al
jne 0x2d9d5
jmp 0x2d986
movq 0x2362b(%rip), %rdi     # 0x50fb8
leaq 0x143fd(%rip), %rsi     # 0x41d91
callq 0x3240
movq %rax, -0x15d0(%rbp)
jmp 0x2d9a2
movq -0x15d0(%rbp), %rdi
movq 0x235f0(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x15d8(%rbp)
jmp 0x2d9be
movq -0x15d8(%rbp), %rdi
movq 0x235d4(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2d9d3
jmp 0x2d9d5
jmp 0x2d9d7
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2d91c
jmp 0x2d9e6
movq 0x235cb(%rip), %rdi     # 0x50fb8
leaq 0x1445f(%rip), %rsi     # 0x41e53
callq 0x3240
movq %rax, -0x15e0(%rbp)
jmp 0x2da02
movq -0x15e0(%rbp), %rdi
movq 0x23590(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2da17
movq 0x235ba(%rip), %rdi     # 0x50fd8
leaq -0x150(%rbp), %rsi
callq 0x3070
jmp 0x2da2c
leaq -0x150(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40700
movb %al, -0x15e1(%rbp)
jmp 0x2da44
movb -0x15e1(%rbp), %al
testb $0x1, %al
jne 0x2da9f
jmp 0x2da50
movq 0x23561(%rip), %rdi     # 0x50fb8
leaq 0x14381(%rip), %rsi     # 0x41ddf
callq 0x3240
movq %rax, -0x15f0(%rbp)
jmp 0x2da6c
movq -0x15f0(%rbp), %rdi
movq 0x23526(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x15f8(%rbp)
jmp 0x2da88
movq -0x15f8(%rbp), %rdi
movq 0x2350a(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2da9d
jmp 0x2da9f
jmp 0x2daa1
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2d9e6
jmp 0x2dab0
movq 0x23501(%rip), %rdi     # 0x50fb8
leaq 0x14346(%rip), %rsi     # 0x41e04
callq 0x3240
movq %rax, -0x1600(%rbp)
jmp 0x2dacc
movq -0x1600(%rbp), %rdi
movq 0x234c6(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2dae1
movq 0x234f0(%rip), %rdi     # 0x50fd8
leaq -0x110(%rbp), %rsi
callq 0x3070
jmp 0x2daf6
leaq -0x110(%rbp), %rdi
leaq -0x24(%rbp), %rsi
callq 0x40550
movb %al, -0x1601(%rbp)
jmp 0x2db0e
movb -0x1601(%rbp), %al
testb $0x1, %al
jne 0x2db69
jmp 0x2db1a
movq 0x23497(%rip), %rdi     # 0x50fb8
leaq 0x14269(%rip), %rsi     # 0x41d91
callq 0x3240
movq %rax, -0x1610(%rbp)
jmp 0x2db36
movq -0x1610(%rbp), %rdi
movq 0x2345c(%rip), %rsi     # 0x50fa0
callq 0x3280
movq %rax, -0x1618(%rbp)
jmp 0x2db52
movq -0x1618(%rbp), %rdi
movq 0x23440(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2db67
jmp 0x2db69
jmp 0x2db6b
movsbl -0x24(%rbp), %eax
cmpl $0x6e, %eax
je 0x2dab0
movl -0x30(%rbp), %eax
movl %eax, -0x161c(%rbp)
leaq -0x1018(%rbp), %rdi
leaq -0x50(%rbp), %rsi
callq 0x3100
jmp 0x2db93
leaq -0x1038(%rbp), %rdi
leaq -0x190(%rbp), %rsi
callq 0x3100
jmp 0x2dba8
leaq -0x1058(%rbp), %rdi
leaq -0x70(%rbp), %rsi
callq 0x3100
jmp 0x2dbba
movb -0x25(%rbp), %al
movb %al, -0x1629(%rbp)
movsd -0x220(%rbp), %xmm0
movsd %xmm0, -0x1628(%rbp)
leaq -0x1078(%rbp), %rdi
leaq -0x90(%rbp), %rsi
callq 0x3100
jmp 0x2dbe8
leaq -0x1098(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x3100
jmp 0x2dbfd
leaq -0x10b8(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
callq 0x3100
jmp 0x2dc12
leaq -0x10d8(%rbp), %rdi
leaq -0xf0(%rbp), %rsi
callq 0x3100
jmp 0x2dc27
movl -0x2c(%rbp), %eax
movl %eax, -0x1630(%rbp)
leaq -0x10f8(%rbp), %rdi
leaq -0x170(%rbp), %rsi
callq 0x3100
jmp 0x2dc45
leaq -0x1118(%rbp), %rdi
leaq -0x130(%rbp), %rsi
callq 0x3100
jmp 0x2dc5a
leaq -0x1138(%rbp), %rdi
leaq -0x150(%rbp), %rsi
callq 0x3100
jmp 0x2dc6f
leaq -0x1158(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x3100
jmp 0x2dc84
movsd -0x1628(%rbp), %xmm0
movl -0x161c(%rbp), %esi
movb -0x1629(%rbp), %al
movl -0x1630(%rbp), %edx
movq %rsp, %rcx
movq %rcx, -0x1638(%rbp)
leaq -0x1158(%rbp), %rdi
movq %rdi, 0x40(%rcx)
leaq -0x1138(%rbp), %rdi
movq %rdi, 0x38(%rcx)
leaq -0x1118(%rbp), %rdi
movq %rdi, 0x30(%rcx)
leaq -0x10f8(%rbp), %rdi
movq %rdi, 0x28(%rcx)
movl %edx, 0x20(%rcx)
leaq -0x10d8(%rbp), %rdx
movq %rdx, 0x18(%rcx)
leaq -0x10b8(%rbp), %rdx
movq %rdx, 0x10(%rcx)
leaq -0x1098(%rbp), %rdx
movq %rdx, 0x8(%rcx)
leaq -0x1078(%rbp), %rdx
movq %rdx, (%rcx)
movsbl %al, %r9d
leaq -0xff8(%rbp), %rdi
leaq -0x1018(%rbp), %rdx
leaq -0x1038(%rbp), %rcx
leaq -0x1058(%rbp), %r8
callq 0x91d0
jmp 0x2dd29
leaq -0xbd8(%rbp), %rdi
callq 0x1fbc0
movq %rax, %rdi
addq $0x8, %rdi
leaq -0xff8(%rbp), %rsi
callq 0x37640
jmp 0x2dd4a
leaq -0xff8(%rbp), %rdi
callq 0x9ad0
leaq -0x1158(%rbp), %rdi
callq 0x3180
leaq -0x1138(%rbp), %rdi
callq 0x3180
leaq -0x1118(%rbp), %rdi
callq 0x3180
leaq -0x10f8(%rbp), %rdi
callq 0x3180
leaq -0x10d8(%rbp), %rdi
callq 0x3180
leaq -0x10b8(%rbp), %rdi
callq 0x3180
leaq -0x1098(%rbp), %rdi
callq 0x3180
leaq -0x1078(%rbp), %rdi
callq 0x3180
leaq -0x1058(%rbp), %rdi
callq 0x3180
leaq -0x1038(%rbp), %rdi
callq 0x3180
leaq -0x1018(%rbp), %rdi
callq 0x3180
movb $0x73, -0x24(%rbp)
jmp 0x2dfb0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2df6a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2df5e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2df52
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2df46
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2df3a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2df2e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2df22
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2df16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2df0a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2defe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x2def2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0xff8(%rbp), %rdi
callq 0x9ad0
leaq -0x1158(%rbp), %rdi
callq 0x3180
leaq -0x1138(%rbp), %rdi
callq 0x3180
leaq -0x1118(%rbp), %rdi
callq 0x3180
leaq -0x10f8(%rbp), %rdi
callq 0x3180
leaq -0x10d8(%rbp), %rdi
callq 0x3180
leaq -0x10b8(%rbp), %rdi
callq 0x3180
leaq -0x1098(%rbp), %rdi
callq 0x3180
leaq -0x1078(%rbp), %rdi
callq 0x3180
leaq -0x1058(%rbp), %rdi
callq 0x3180
leaq -0x1038(%rbp), %rdi
callq 0x3180
leaq -0x1018(%rbp), %rdi
callq 0x3180
jmp 0x2e17f
movq 0x23036(%rip), %rdi     # 0x50fb8
leaq 0x142bf(%rip), %rsi     # 0x42248
callq 0x3240
movq %rax, -0x1640(%rbp)
jmp 0x2df97
movq -0x1640(%rbp), %rdi
movq 0x22ffb(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2dfac
movb $0x6e, -0x24(%rbp)
movsbl -0x24(%rbp), %eax
cmpl $0x73, %eax
jne 0x2e05a
leaq 0x13f00(%rip), %rsi     # 0x41ec4
leaq -0x630(%rbp), %rdi
movl $0x10, %edx
callq 0x3050
jmp 0x2dfd7
movq -0x10(%rbp), %rdi
callq 0x13db0
movq %rax, -0x1160(%rbp)
movq -0x10(%rbp), %rdi
callq 0x13e10
movq %rax, -0x1168(%rbp)
leaq -0x1160(%rbp), %rdi
leaq -0x1168(%rbp), %rsi
callq 0x13de0
testb $0x1, %al
jne 0x2e010
jmp 0x2e04a
leaq -0x1160(%rbp), %rdi
callq 0x1fbc0
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x630(%rbp), %rdi
callq 0xce50
jmp 0x2e031
jmp 0x2e033
leaq -0x1160(%rbp), %rdi
xorl %esi, %esi
callq 0x13e70
movq %rax, -0x1170(%rbp)
jmp 0x2dfe7
leaq -0x630(%rbp), %rdi
callq 0x3310
jmp 0x2e058
jmp 0x2e05a
movq 0x22f57(%rip), %rdi     # 0x50fb8
leaq 0x141f9(%rip), %rsi     # 0x42261
callq 0x3240
movq %rax, -0x1648(%rbp)
jmp 0x2e076
movq -0x1648(%rbp), %rdi
movq 0x22f1c(%rip), %rsi     # 0x50fa0
callq 0x3280
jmp 0x2e08b
movq 0x22f46(%rip), %rdi     # 0x50fd8
leaq -0x23(%rbp), %rsi
callq 0x32e0
jmp 0x2e09d
jmp 0x2e09f
jmp 0x2e0a1
jmp 0x2e0a3
movsbl -0x23(%rbp), %eax
cmpl $0x73, %eax
je 0x2b4c9
leaq -0x630(%rbp), %rdi
callq 0x3340
leaq -0x420(%rbp), %rdi
callq 0x3340
leaq -0x210(%rbp), %rdi
callq 0x3180
leaq -0x1f0(%rbp), %rdi
callq 0x3180
leaq -0x1d0(%rbp), %rdi
callq 0x3180
leaq -0x1b0(%rbp), %rdi
callq 0x3180
leaq -0x190(%rbp), %rdi
callq 0x3180
leaq -0x170(%rbp), %rdi
callq 0x3180
leaq -0x150(%rbp), %rdi
callq 0x3180
leaq -0x130(%rbp), %rdi
callq 0x3180
leaq -0x110(%rbp), %rdi
callq 0x3180
leaq -0xf0(%rbp), %rdi
callq 0x3180
leaq -0xd0(%rbp), %rdi
callq 0x3180
leaq -0xb0(%rbp), %rdi
callq 0x3180
leaq -0x90(%rbp), %rdi
callq 0x3180
leaq -0x70(%rbp), %rdi
callq 0x3180
leaq -0x50(%rbp), %rdi
callq 0x3180
addq $0x1690, %rsp           # imm = 0x1690
popq %rbp
retq
leaq -0x630(%rbp), %rdi
callq 0x3340
leaq -0x420(%rbp), %rdi
callq 0x3340
leaq -0x210(%rbp), %rdi
callq 0x3180
leaq -0x1f0(%rbp), %rdi
callq 0x3180
leaq -0x1d0(%rbp), %rdi
callq 0x3180
leaq -0x1b0(%rbp), %rdi
callq 0x3180
leaq -0x190(%rbp), %rdi
callq 0x3180
leaq -0x170(%rbp), %rdi
callq 0x3180
leaq -0x150(%rbp), %rdi
callq 0x3180
leaq -0x130(%rbp), %rdi
callq 0x3180
leaq -0x110(%rbp), %rdi
callq 0x3180
leaq -0xf0(%rbp), %rdi
callq 0x3180
leaq -0xd0(%rbp), %rdi
callq 0x3180
leaq -0xb0(%rbp), %rdi
callq 0x3180
leaq -0x90(%rbp), %rdi
callq 0x3180
leaq -0x70(%rbp), %rdi
callq 0x3180
leaq -0x50(%rbp), %rdi
callq 0x3180
movq -0x428(%rbp), %rdi
callq 0x33d0
nopw %cs:(%rax,%rax)