// File: /workspace/github_cpp_makefile_star2_O3/viniciu21[P]PetLolja/./src/AveNativo.cpp
// Function: AveNativo::imprimeDados(std::ostream&) const
ostream& AveNativo::imprimeDados(ostream& o) const {
    o << std::endl

      << "============== Ave_Nativo ==============" << std::endl
     	<< "ID                    | " << this->id << std::endl
      << "Classe                | Ave" << std::endl
      << "Nome                  | " << this->nome << std::endl
      << "Nome Cientifico       | " << this->especie << std::endl
      << "Sexo                  | " << (this->genero == F ? "Femea" : "Macho") << std::endl
      << "Temperatura           | " << this->tipo_temperatura << std::endl
      << "Pele                  | " << this->tipo_pele << std::endl
      << "Fecundacao            | " << this->tipo_fecundacao << std::endl
      << "Troca de Pele         | " << (this->troca_pele == true ? "sim" : "nao") << std::endl
      << "Material Eliminado    | " << this->material_eliminidado << std::endl
      << "Aquatico/terrestre     | " << this->aquatico_terrestre << std::endl
      << "Registro Ibama        | " << this->registro_ibama << std::endl
      << "Territorio Brasileiro | " << this->territorio_brasileiro << std::endl
      << "Ameacado Extinsao     | " << (this->extincao == ameacado ? "Ameacado" : "Nao_Ameacado") << std::endl
      << "Tamanho bico          | " << this->tamanhoDoBico << std::endl
      << "Envergadura           | " << this->envergaduraAsas << std::endl<< ".";

    return o;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movq (%rsi), %rax
movq -0x18(%rax), %rdi
addq %rsi, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x23300(%rip), %rsi     # 0x2d607
movl $0x28, %edx
movq %rax, %rdi
callq 0x4210
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x23102(%rip), %rsi     # 0x2d447
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movl 0x8(%r14), %esi
movq %r15, %rdi
callq 0x42e0
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x230ce(%rip), %rsi     # 0x2d460
movl $0x1b, %edx
movq %rax, %rdi
callq 0x4210
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x230ac(%rip), %rsi     # 0x2d47c
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movq 0x30(%r14), %rsi
movq 0x38(%r14), %rdx
movq %r15, %rdi
callq 0x4210
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x23074(%rip), %rsi     # 0x2d495
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movq 0x10(%r14), %rsi
movq 0x18(%r14), %rdx
movq %r15, %rdi
callq 0x4210
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x2303c(%rip), %rsi     # 0x2d4ae
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
cmpl $0xb, 0x50(%r14)
leaq 0x22c8b(%rip), %rax     # 0x2d116
leaq 0x22c8a(%rip), %rsi     # 0x2d11c
cmoveq %rax, %rsi
movl $0x5, %edx
movq %r15, %rdi
callq 0x4210
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22ff3(%rip), %rsi     # 0x2d4c7
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movq 0x78(%r14), %rsi
movq 0x80(%r14), %rdx
movq %r15, %rdi
callq 0x4210
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22fb8(%rip), %rsi     # 0x2d4e0
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movq 0x98(%r14), %rsi
movq 0xa0(%r14), %rdx
movq %r15, %rdi
callq 0x4210
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22f7a(%rip), %rsi     # 0x2d4f9
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movq 0xb8(%r14), %rsi
movq 0xc0(%r14), %rdx
movq %r15, %rdi
callq 0x4210
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22f3c(%rip), %rsi     # 0x2d512
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
leaq 0x22b86(%rip), %rax     # 0x2d170
leaq 0x22b83(%rip), %rsi     # 0x2d174
cmpb $0x0, 0xd8(%r14)
cmovneq %rax, %rsi
movl $0x3, %edx
movq %r15, %rdi
callq 0x4210
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22ef0(%rip), %rsi     # 0x2d52b
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movq 0xe0(%r14), %rsi
movq 0xe8(%r14), %rdx
movq %r15, %rdi
callq 0x4210
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22f9e(%rip), %rsi     # 0x2d630
movl $0x19, %edx
movq %rax, %rdi
callq 0x4210
movq 0x140(%r14), %rsi
movq 0x148(%r14), %rdx
movq %r15, %rdi
callq 0x4210
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22b9a(%rip), %rsi     # 0x2d283
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movzbl 0x160(%r14), %esi
movq %r15, %rdi
callq 0x42d0
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22ea7(%rip), %rsi     # 0x2d5e1
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movzbl 0x161(%r14), %esi
movq %r15, %rdi
callq 0x42d0
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22b2a(%rip), %rsi     # 0x2d2b5
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
xorl %eax, %eax
cmpl $0x0, 0x164(%r14)
setne %al
leaq 0x22b26(%rip), %rcx     # 0x2d2d2
leaq 0x22b1b(%rip), %rsi     # 0x2d2ce
cmoveq %rcx, %rsi
leaq 0x8(,%rax,4), %rdx
movq %r15, %rdi
callq 0x4210
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22d7e(%rip), %rsi     # 0x2d576
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movq 0x120(%r14), %rsi
movq 0x128(%r14), %rdx
movq %r15, %rdi
callq 0x4210
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r15, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x22d40(%rip), %rsi     # 0x2d58f
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movq 0x100(%r14), %rsi
movq 0x108(%r14), %rdx
movq %r15, %rdi
callq 0x4210
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r14, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
leaq 0x22972(%rip), %rsi     # 0x2d215
movl $0x1, %edx
movq %rax, %rdi
callq 0x4210
movq %rbx, %rax
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
nop