// File: nataly-enne[P]pet-fera/pet_fera_auxiliar.cpp
// Function: exportacao_vet_trat(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, MAMIFERO_NATIVO, std::less<int>, std::allocator<std::pair<int const, MAMIFERO_NATIVO>>>, std::map<int, MAMIFERO_EXOTICO, std::less<int>, std::allocator<std::pair<int const, MAMIFERO_EXOTICO>>>, std::map<int, REPTIL_NATIVO, std::less<int>, std::allocator<std::pair<int const, REPTIL_NATIVO>>>, std::map<int, REPTIL_EXOTICO, std::less<int>, std::allocator<std::pair<int const, REPTIL_EXOTICO>>>, std::map<int, AVE_NATIVO, std::less<int>, std::allocator<std::pair<int const, AVE_NATIVO>>>, std::map<int, AVE_EXOTICO, std::less<int>, std::allocator<std::pair<int const, AVE_EXOTICO>>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void exportacao_vet_trat(map <int, ANFIBIO_NATIVO> anfibios_nat, map <int, ANFIBIO_EXOTICO> anfibios_ex, map <int, MAMIFERO_NATIVO> mamiferos_nat, map <int, MAMIFERO_EXOTICO> mamiferos_ex, map <int, REPTIL_NATIVO> repteis_nat, map <int, REPTIL_EXOTICO> repteis_ex, map <int, AVE_NATIVO> aves_nat, map <int, AVE_EXOTICO> aves_ex, string veterinario, string tratador, string saida){
	transform(veterinario.begin(), veterinario.end(), veterinario.begin(), ::toupper);
	transform(tratador.begin(), tratador.end(), tratador.begin(), ::toupper);

	ofstream animais;
	animais.open(saida);

	for(auto it = anfibios_nat.begin(); it != anfibios_nat.end(); it++){
		if(it->second.getVeterinario() == veterinario && it->second.getTratador() == tratador){
			animais << (*it).second;
		}	
	}
	for(auto it = anfibios_ex.begin(); it != anfibios_ex.end(); it++){
		if(it->second.getVeterinario() == veterinario && it->second.getTratador() == tratador){
			animais << (*it).second;
		}		
	}
	for(auto it = mamiferos_nat.begin(); it != mamiferos_nat.end(); it++){
		if(it->second.getVeterinario() == veterinario && it->second.getTratador() == tratador){
			animais << (*it).second;
		}
	}
	for(auto it = mamiferos_ex.begin(); it != mamiferos_ex.end(); it++){
		if(it->second.getVeterinario() == veterinario && it->second.getTratador() == tratador){
			animais << (*it).second;
		}	
	}
	for(auto it = repteis_nat.begin(); it != repteis_nat.end(); it++){
		if(it->second.getVeterinario() == veterinario && it->second.getTratador() == tratador){
			animais << (*it).second;
		}
	}
	for(auto it = repteis_ex.begin(); it != repteis_ex.end(); it++){
		if(it->second.getVeterinario() == veterinario && it->second.getTratador() == tratador){
			animais << (*it).second;
		}	
	}
	for(auto it = aves_nat.begin(); it != aves_nat.end(); it++){
		if(it->second.getVeterinario() == veterinario && it->second.getTratador() == tratador){
			animais << (*it).second;
		}	
	}
	for(auto it = aves_ex.begin(); it != aves_ex.end(); it++){
		if(it->second.getVeterinario() == veterinario && it->second.getTratador() == tratador){
			animais << (*it).second;
		}	
	}
	animais.close();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x600, %rsp            # imm = 0x600
movq %r9, -0x5e8(%rbp)
movq %r8, -0x5e0(%rbp)
movq %rcx, -0x5d8(%rbp)
movq %rdx, -0x5d0(%rbp)
movq %rsi, -0x5c8(%rbp)
movq %rdi, %rax
movq %rax, -0x5c0(%rbp)
movq 0x30(%rbp), %rdi
movq %rdi, -0x588(%rbp)
movq 0x28(%rbp), %rdi
movq %rdi, -0x5a0(%rbp)
movq 0x20(%rbp), %rdi
movq %rdi, -0x5a8(%rbp)
movq 0x18(%rbp), %r10
movq %r10, -0x5b8(%rbp)
movq 0x10(%rbp), %r10
movq %r10, -0x5b0(%rbp)
movq %rax, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movq %r9, -0x30(%rbp)
callq 0xe200
movq -0x5a8(%rbp), %rdi
movq %rax, -0x38(%rbp)
callq 0xe110
movq -0x5a8(%rbp), %rdi
movq %rax, -0x40(%rbp)
callq 0xe200
movq %rax, -0x48(%rbp)
movq -0x38(%rbp), %rdi
movq -0x40(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq 0x14765(%rip), %rcx     # 0x29fd8
movq %rcx, -0x598(%rbp)
callq 0x18600
movq -0x5a0(%rbp), %rdi
movq %rax, -0x50(%rbp)
callq 0xe200
movq -0x5a0(%rbp), %rdi
movq %rax, -0x58(%rbp)
callq 0xe110
movq -0x5a0(%rbp), %rdi
movq %rax, -0x60(%rbp)
callq 0xe200
movq -0x598(%rbp), %rcx
movq %rax, -0x68(%rbp)
movq -0x58(%rbp), %rdi
movq -0x60(%rbp), %rsi
movq -0x68(%rbp), %rdx
callq 0x18600
movq %rax, -0x70(%rbp)
leaq -0x270(%rbp), %rdi
movq %rdi, -0x590(%rbp)
callq 0xe350
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
movl $0x10, %edx
callq 0xe0e0
jmp 0x158fc
movq -0x5c0(%rbp), %rdi
callq 0x18680
movq %rax, -0x288(%rbp)
movq -0x5c0(%rbp), %rdi
callq 0x186e0
movq %rax, -0x290(%rbp)
leaq -0x288(%rbp), %rdi
leaq -0x290(%rbp), %rsi
callq 0x186b0
testb $0x1, %al
jne 0x1593e
jmp 0x15a7f
leaq -0x288(%rbp), %rdi
callq 0x18ec0
movq %rax, %rsi
addq $0x8, %rsi
movb $0x0, -0x2d1(%rbp)
leaq -0x2b0(%rbp), %rdi
callq 0xe160
jmp 0x15966
movq -0x5a8(%rbp), %rsi
leaq -0x2b0(%rbp), %rdi
callq 0x18e30
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x5e9(%rbp)
jne 0x1598a
jmp 0x159cb
leaq -0x288(%rbp), %rdi
callq 0x18ec0
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x2d0(%rbp), %rdi
callq 0xe2b0
jmp 0x159ab
movq -0x5a0(%rbp), %rsi
movb $0x1, -0x2d1(%rbp)
leaq -0x2d0(%rbp), %rdi
callq 0x18e30
movb %al, -0x5e9(%rbp)
movb -0x5e9(%rbp), %al
movb %al, -0x5ea(%rbp)
testb $0x1, -0x2d1(%rbp)
jne 0x159e2
jmp 0x159ee
leaq -0x2d0(%rbp), %rdi
callq 0xe150
leaq -0x2b0(%rbp), %rdi
callq 0xe150
movb -0x5ea(%rbp), %al
testb $0x1, %al
jne 0x15a06
jmp 0x15a63
leaq -0x288(%rbp), %rdi
callq 0x18710
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x270(%rbp), %rdi
callq 0xe1e0
jmp 0x15a27
jmp 0x15a63
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x278(%rbp)
movl %eax, -0x27c(%rbp)
jmp 0x16493
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x278(%rbp)
movl %eax, -0x27c(%rbp)
leaq -0x2b0(%rbp), %rdi
callq 0xe150
jmp 0x16493
jmp 0x15a65
leaq -0x288(%rbp), %rdi
xorl %esi, %esi
callq 0x18730
movq %rax, -0x2e0(%rbp)
jmp 0x1590f
movq -0x5c8(%rbp), %rdi
callq 0x18770
movq %rax, -0x2e8(%rbp)
movq -0x5c8(%rbp), %rdi
callq 0x187d0
movq %rax, -0x2f0(%rbp)
leaq -0x2e8(%rbp), %rdi
leaq -0x2f0(%rbp), %rsi
callq 0x187a0
testb $0x1, %al
jne 0x15ac1
jmp 0x15beb
leaq -0x2e8(%rbp), %rdi
callq 0x18ee0
movq %rax, %rsi
addq $0x8, %rsi
movb $0x0, -0x331(%rbp)
leaq -0x310(%rbp), %rdi
callq 0xe160
jmp 0x15ae9
movq -0x5a8(%rbp), %rsi
leaq -0x310(%rbp), %rdi
callq 0x18e30
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x5eb(%rbp)
jne 0x15b0d
jmp 0x15b4e
leaq -0x2e8(%rbp), %rdi
callq 0x18ee0
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x330(%rbp), %rdi
callq 0xe2b0
jmp 0x15b2e
movq -0x5a0(%rbp), %rsi
movb $0x1, -0x331(%rbp)
leaq -0x330(%rbp), %rdi
callq 0x18e30
movb %al, -0x5eb(%rbp)
movb -0x5eb(%rbp), %al
movb %al, -0x5ec(%rbp)
testb $0x1, -0x331(%rbp)
jne 0x15b65
jmp 0x15b71
leaq -0x330(%rbp), %rdi
callq 0xe150
leaq -0x310(%rbp), %rdi
callq 0xe150
movb -0x5ec(%rbp), %al
testb $0x1, %al
jne 0x15b89
jmp 0x15bcf
leaq -0x2e8(%rbp), %rdi
callq 0x18800
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x270(%rbp), %rdi
callq 0xe360
jmp 0x15baa
jmp 0x15bcf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x278(%rbp)
movl %eax, -0x27c(%rbp)
leaq -0x310(%rbp), %rdi
callq 0xe150
jmp 0x16493
jmp 0x15bd1
leaq -0x2e8(%rbp), %rdi
xorl %esi, %esi
callq 0x18820
movq %rax, -0x340(%rbp)
jmp 0x15a92
movq -0x5d0(%rbp), %rdi
callq 0x18860
movq %rax, -0x348(%rbp)
movq -0x5d0(%rbp), %rdi
callq 0x188c0
movq %rax, -0x350(%rbp)
leaq -0x348(%rbp), %rdi
leaq -0x350(%rbp), %rsi
callq 0x18890
testb $0x1, %al
jne 0x15c2d
jmp 0x15d57
leaq -0x348(%rbp), %rdi
callq 0x18f00
movq %rax, %rsi
addq $0x8, %rsi
movb $0x0, -0x391(%rbp)
leaq -0x370(%rbp), %rdi
callq 0xe160
jmp 0x15c55
movq -0x5a8(%rbp), %rsi
leaq -0x370(%rbp), %rdi
callq 0x18e30
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x5ed(%rbp)
jne 0x15c79
jmp 0x15cba
leaq -0x348(%rbp), %rdi
callq 0x18f00
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x390(%rbp), %rdi
callq 0xe2b0
jmp 0x15c9a
movq -0x5a0(%rbp), %rsi
movb $0x1, -0x391(%rbp)
leaq -0x390(%rbp), %rdi
callq 0x18e30
movb %al, -0x5ed(%rbp)
movb -0x5ed(%rbp), %al
movb %al, -0x5ee(%rbp)
testb $0x1, -0x391(%rbp)
jne 0x15cd1
jmp 0x15cdd
leaq -0x390(%rbp), %rdi
callq 0xe150
leaq -0x370(%rbp), %rdi
callq 0xe150
movb -0x5ee(%rbp), %al
testb $0x1, %al
jne 0x15cf5
jmp 0x15d3b
leaq -0x348(%rbp), %rdi
callq 0x188f0
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x270(%rbp), %rdi
callq 0xe2f0
jmp 0x15d16
jmp 0x15d3b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x278(%rbp)
movl %eax, -0x27c(%rbp)
leaq -0x370(%rbp), %rdi
callq 0xe150
jmp 0x16493
jmp 0x15d3d
leaq -0x348(%rbp), %rdi
xorl %esi, %esi
callq 0x18910
movq %rax, -0x3a0(%rbp)
jmp 0x15bfe
movq -0x5d8(%rbp), %rdi
callq 0x18950
movq %rax, -0x3a8(%rbp)
movq -0x5d8(%rbp), %rdi
callq 0x189b0
movq %rax, -0x3b0(%rbp)
leaq -0x3a8(%rbp), %rdi
leaq -0x3b0(%rbp), %rsi
callq 0x18980
testb $0x1, %al
jne 0x15d99
jmp 0x15ec3
leaq -0x3a8(%rbp), %rdi
callq 0x18f20
movq %rax, %rsi
addq $0x8, %rsi
movb $0x0, -0x3f1(%rbp)
leaq -0x3d0(%rbp), %rdi
callq 0xe160
jmp 0x15dc1
movq -0x5a8(%rbp), %rsi
leaq -0x3d0(%rbp), %rdi
callq 0x18e30
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x5ef(%rbp)
jne 0x15de5
jmp 0x15e26
leaq -0x3a8(%rbp), %rdi
callq 0x18f20
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x3f0(%rbp), %rdi
callq 0xe2b0
jmp 0x15e06
movq -0x5a0(%rbp), %rsi
movb $0x1, -0x3f1(%rbp)
leaq -0x3f0(%rbp), %rdi
callq 0x18e30
movb %al, -0x5ef(%rbp)
movb -0x5ef(%rbp), %al
movb %al, -0x5f0(%rbp)
testb $0x1, -0x3f1(%rbp)
jne 0x15e3d
jmp 0x15e49
leaq -0x3f0(%rbp), %rdi
callq 0xe150
leaq -0x3d0(%rbp), %rdi
callq 0xe150
movb -0x5f0(%rbp), %al
testb $0x1, %al
jne 0x15e61
jmp 0x15ea7
leaq -0x3a8(%rbp), %rdi
callq 0x189e0
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x270(%rbp), %rdi
callq 0xe100
jmp 0x15e82
jmp 0x15ea7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x278(%rbp)
movl %eax, -0x27c(%rbp)
leaq -0x3d0(%rbp), %rdi
callq 0xe150
jmp 0x16493
jmp 0x15ea9
leaq -0x3a8(%rbp), %rdi
xorl %esi, %esi
callq 0x18a00
movq %rax, -0x400(%rbp)
jmp 0x15d6a
movq -0x5e0(%rbp), %rdi
callq 0x18a40
movq %rax, -0x408(%rbp)
movq -0x5e0(%rbp), %rdi
callq 0x18aa0
movq %rax, -0x410(%rbp)
leaq -0x408(%rbp), %rdi
leaq -0x410(%rbp), %rsi
callq 0x18a70
testb $0x1, %al
jne 0x15f05
jmp 0x1602f
leaq -0x408(%rbp), %rdi
callq 0x18f40
movq %rax, %rsi
addq $0x8, %rsi
movb $0x0, -0x451(%rbp)
leaq -0x430(%rbp), %rdi
callq 0xe160
jmp 0x15f2d
movq -0x5a8(%rbp), %rsi
leaq -0x430(%rbp), %rdi
callq 0x18e30
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x5f1(%rbp)
jne 0x15f51
jmp 0x15f92
leaq -0x408(%rbp), %rdi
callq 0x18f40
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x450(%rbp), %rdi
callq 0xe2b0
jmp 0x15f72
movq -0x5a0(%rbp), %rsi
movb $0x1, -0x451(%rbp)
leaq -0x450(%rbp), %rdi
callq 0x18e30
movb %al, -0x5f1(%rbp)
movb -0x5f1(%rbp), %al
movb %al, -0x5f2(%rbp)
testb $0x1, -0x451(%rbp)
jne 0x15fa9
jmp 0x15fb5
leaq -0x450(%rbp), %rdi
callq 0xe150
leaq -0x430(%rbp), %rdi
callq 0xe150
movb -0x5f2(%rbp), %al
testb $0x1, %al
jne 0x15fcd
jmp 0x16013
leaq -0x408(%rbp), %rdi
callq 0x18ad0
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x270(%rbp), %rdi
callq 0xe080
jmp 0x15fee
jmp 0x16013
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x278(%rbp)
movl %eax, -0x27c(%rbp)
leaq -0x430(%rbp), %rdi
callq 0xe150
jmp 0x16493
jmp 0x16015
leaq -0x408(%rbp), %rdi
xorl %esi, %esi
callq 0x18af0
movq %rax, -0x460(%rbp)
jmp 0x15ed6
movq -0x5e8(%rbp), %rdi
callq 0x18b30
movq %rax, -0x468(%rbp)
movq -0x5e8(%rbp), %rdi
callq 0x18b90
movq %rax, -0x470(%rbp)
leaq -0x468(%rbp), %rdi
leaq -0x470(%rbp), %rsi
callq 0x18b60
testb $0x1, %al
jne 0x16071
jmp 0x1619b
leaq -0x468(%rbp), %rdi
callq 0x18f60
movq %rax, %rsi
addq $0x8, %rsi
movb $0x0, -0x4b1(%rbp)
leaq -0x490(%rbp), %rdi
callq 0xe160
jmp 0x16099
movq -0x5a8(%rbp), %rsi
leaq -0x490(%rbp), %rdi
callq 0x18e30
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x5f3(%rbp)
jne 0x160bd
jmp 0x160fe
leaq -0x468(%rbp), %rdi
callq 0x18f60
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x4b0(%rbp), %rdi
callq 0xe2b0
jmp 0x160de
movq -0x5a0(%rbp), %rsi
movb $0x1, -0x4b1(%rbp)
leaq -0x4b0(%rbp), %rdi
callq 0x18e30
movb %al, -0x5f3(%rbp)
movb -0x5f3(%rbp), %al
movb %al, -0x5f4(%rbp)
testb $0x1, -0x4b1(%rbp)
jne 0x16115
jmp 0x16121
leaq -0x4b0(%rbp), %rdi
callq 0xe150
leaq -0x490(%rbp), %rdi
callq 0xe150
movb -0x5f4(%rbp), %al
testb $0x1, %al
jne 0x16139
jmp 0x1617f
leaq -0x468(%rbp), %rdi
callq 0x18bc0
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x270(%rbp), %rdi
callq 0xe140
jmp 0x1615a
jmp 0x1617f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x278(%rbp)
movl %eax, -0x27c(%rbp)
leaq -0x490(%rbp), %rdi
callq 0xe150
jmp 0x16493
jmp 0x16181
leaq -0x468(%rbp), %rdi
xorl %esi, %esi
callq 0x18be0
movq %rax, -0x4c0(%rbp)
jmp 0x16042
movq -0x5b0(%rbp), %rdi
callq 0x18c20
movq %rax, -0x4c8(%rbp)
movq -0x5b0(%rbp), %rdi
callq 0x18c80
movq %rax, -0x4d0(%rbp)
leaq -0x4c8(%rbp), %rdi
leaq -0x4d0(%rbp), %rsi
callq 0x18c50
testb $0x1, %al
jne 0x161dd
jmp 0x16307
leaq -0x4c8(%rbp), %rdi
callq 0x18f80
movq %rax, %rsi
addq $0x8, %rsi
movb $0x0, -0x511(%rbp)
leaq -0x4f0(%rbp), %rdi
callq 0xe160
jmp 0x16205
movq -0x5a8(%rbp), %rsi
leaq -0x4f0(%rbp), %rdi
callq 0x18e30
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x5f5(%rbp)
jne 0x16229
jmp 0x1626a
leaq -0x4c8(%rbp), %rdi
callq 0x18f80
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x510(%rbp), %rdi
callq 0xe2b0
jmp 0x1624a
movq -0x5a0(%rbp), %rsi
movb $0x1, -0x511(%rbp)
leaq -0x510(%rbp), %rdi
callq 0x18e30
movb %al, -0x5f5(%rbp)
movb -0x5f5(%rbp), %al
movb %al, -0x5f6(%rbp)
testb $0x1, -0x511(%rbp)
jne 0x16281
jmp 0x1628d
leaq -0x510(%rbp), %rdi
callq 0xe150
leaq -0x4f0(%rbp), %rdi
callq 0xe150
movb -0x5f6(%rbp), %al
testb $0x1, %al
jne 0x162a5
jmp 0x162eb
leaq -0x4c8(%rbp), %rdi
callq 0x18cb0
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x270(%rbp), %rdi
callq 0xe2e0
jmp 0x162c6
jmp 0x162eb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x278(%rbp)
movl %eax, -0x27c(%rbp)
leaq -0x4f0(%rbp), %rdi
callq 0xe150
jmp 0x16493
jmp 0x162ed
leaq -0x4c8(%rbp), %rdi
xorl %esi, %esi
callq 0x18cd0
movq %rax, -0x520(%rbp)
jmp 0x161ae
movq -0x5b8(%rbp), %rdi
callq 0x18d10
movq %rax, -0x528(%rbp)
movq -0x5b8(%rbp), %rdi
callq 0x18d70
movq %rax, -0x530(%rbp)
leaq -0x528(%rbp), %rdi
leaq -0x530(%rbp), %rsi
callq 0x18d40
testb $0x1, %al
jne 0x16349
jmp 0x16470
leaq -0x528(%rbp), %rdi
callq 0x18fa0
movq %rax, %rsi
addq $0x8, %rsi
movb $0x0, -0x571(%rbp)
leaq -0x550(%rbp), %rdi
callq 0xe160
jmp 0x16371
movq -0x5a8(%rbp), %rsi
leaq -0x550(%rbp), %rdi
callq 0x18e30
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x5f7(%rbp)
jne 0x16395
jmp 0x163d6
leaq -0x528(%rbp), %rdi
callq 0x18fa0
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x570(%rbp), %rdi
callq 0xe2b0
jmp 0x163b6
movq -0x5a0(%rbp), %rsi
movb $0x1, -0x571(%rbp)
leaq -0x570(%rbp), %rdi
callq 0x18e30
movb %al, -0x5f7(%rbp)
movb -0x5f7(%rbp), %al
movb %al, -0x5f8(%rbp)
testb $0x1, -0x571(%rbp)
jne 0x163ed
jmp 0x163f9
leaq -0x570(%rbp), %rdi
callq 0xe150
leaq -0x550(%rbp), %rdi
callq 0xe150
movb -0x5f8(%rbp), %al
testb $0x1, %al
jne 0x16411
jmp 0x16454
leaq -0x528(%rbp), %rdi
callq 0x18da0
movq %rax, %rsi
addq $0x8, %rsi
leaq -0x270(%rbp), %rdi
callq 0xe270
jmp 0x16432
jmp 0x16454
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x278(%rbp)
movl %eax, -0x27c(%rbp)
leaq -0x550(%rbp), %rdi
callq 0xe150
jmp 0x16493
jmp 0x16456
leaq -0x528(%rbp), %rdi
xorl %esi, %esi
callq 0x18dc0
movq %rax, -0x580(%rbp)
jmp 0x1631a
leaq -0x270(%rbp), %rdi
callq 0xe300
jmp 0x1647e
leaq -0x270(%rbp), %rdi
callq 0xe320
addq $0x600, %rsp            # imm = 0x600
popq %rbp
retq
leaq -0x270(%rbp), %rdi
callq 0xe320
movq -0x278(%rbp), %rdi
callq 0xe370
nopl (%rax,%rax)