// File: /workspace/github_cpp_makefile_star2_O3/viniciu21[P]PetLolja/./src/AnfibioNativo.cpp
// Function: AnfibioNativo::imprimeDados(std::ostream&) const
ostream& AnfibioNativo::imprimeDados(ostream& o) const {
    o << std::endl
      << "============== Anfibio Nativo ==============" << std::endl
      << "ID                     | " << this->id << std::endl << "| "
      << "Classe                 | Anfibio" << 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<< "| "
      << "Habitat                | " << this->habitat << std::endl<< "| "
      << "Ovos                   | " << (this->possui_ovos == true ? "sim" : "nao") << std::endl <<"| "
      << "Pele                   | " << this->tipo_pele << std::endl<< "| "
      << "Fecundacao             | " << this->tipo_fecundacao << std::endl<< "| "
      << "Troca 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
      << "Brasileiro            | " << this->territorio_brasileiro << std::endl
      << "Ameacado de Extinsao  | " << (this->extincao == ameacado ? "Risco_de_extincao" : "Nao_corre_risco_de_extincao") << std::endl << ".";

    return o;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movq (%rsi), %rax
movq -0x18(%rax), %rdi
addq %rsi, %rdi
movq %rsi, -0x30(%rbp)
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r15
leaq 0x26516(%rip), %rsi     # 0x2d327
movl $0x2c, %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 0x2623e(%rip), %rsi     # 0x2d08d
movl $0x19, %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, %r12
leaq 0x26208(%rip), %r15     # 0x2d0a4
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x261f4(%rip), %rsi     # 0x2d0a7
movl $0x20, %edx
movq %r12, %rdi
callq 0x4210
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r12, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r12
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x261c6(%rip), %rsi     # 0x2d0c8
movl $0x19, %edx
movq %r12, %rdi
callq 0x4210
movq 0x30(%r14), %rsi
movq 0x38(%r14), %rdx
movq %r12, %rdi
callq 0x4210
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r12, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r12
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x2617f(%rip), %rsi     # 0x2d0e2
movl $0x19, %edx
movq %r12, %rdi
callq 0x4210
movq 0x10(%r14), %rsi
movq 0x18(%r14), %rdx
movq %r12, %rdi
callq 0x4210
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r12, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r12
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x26138(%rip), %rsi     # 0x2d0fc
movl $0x19, %edx
movq %r12, %rdi
callq 0x4210
cmpl $0xb, 0x50(%r14)
leaq 0x26139(%rip), %rax     # 0x2d116
leaq 0x26138(%rip), %rsi     # 0x2d11c
cmoveq %rax, %rsi
movl $0x5, %edx
movq %r12, %rdi
callq 0x4210
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r12, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r12
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x260eb(%rip), %rsi     # 0x2d122
movl $0x19, %edx
movq %r12, %rdi
callq 0x4210
movq 0x78(%r14), %rsi
movq 0x80(%r14), %rdx
movq %r12, %rdi
callq 0x4210
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r12, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r12
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x260a1(%rip), %rsi     # 0x2d13c
movl $0x19, %edx
movq %r12, %rdi
callq 0x4210
movq 0x100(%r14), %rsi
movq 0x108(%r14), %rdx
movq %r12, %rdi
callq 0x4210
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r12, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r13
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x26054(%rip), %rsi     # 0x2d156
movl $0x19, %edx
movq %r13, %rdi
callq 0x4210
leaq 0x2605a(%rip), %rbx     # 0x2d170
cmpb $0x0, 0x120(%r14)
leaq 0x2604f(%rip), %r12     # 0x2d174
movq %r12, %rsi
cmovneq %rbx, %rsi
movl $0x3, %edx
movq %r13, %rdi
callq 0x4210
movq (%r13), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r13, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r13
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x25ffd(%rip), %rsi     # 0x2d178
movl $0x19, %edx
movq %r13, %rdi
callq 0x4210
movq 0x98(%r14), %rsi
movq 0xa0(%r14), %rdx
movq %r13, %rdi
callq 0x4210
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r13, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r13
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x25fb0(%rip), %rsi     # 0x2d192
movl $0x19, %edx
movq %r13, %rdi
callq 0x4210
movq 0xb8(%r14), %rsi
movq 0xc0(%r14), %rdx
movq %r13, %rdi
callq 0x4210
movq %rax, %r13
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r13, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r13
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x25f63(%rip), %rsi     # 0x2d1ac
movl $0x19, %edx
movq %r13, %rdi
callq 0x4210
cmpb $0x0, 0xd8(%r14)
cmovneq %rbx, %r12
movl $0x3, %edx
movq %r13, %rdi
movq %r12, %rsi
callq 0x4210
movq (%r13), %rax
movq -0x18(%rax), %rdi
addq %r13, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r13, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r12
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x25f12(%rip), %rsi     # 0x2d1c6
movl $0x19, %edx
movq %r12, %rdi
callq 0x4210
movq 0xe0(%r14), %rsi
movq 0xe8(%r14), %rdx
movq %r12, %rdi
callq 0x4210
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x41b0
movsbl %al, %esi
movq %r12, %rdi
callq 0x4030
movq %rax, %rdi
callq 0x4120
movq %rax, %r12
movl $0x2, %edx
movq %rax, %rdi
movq %r15, %rsi
callq 0x4210
leaq 0x25f4f(%rip), %rsi     # 0x2d26a
movl $0x18, %edx
movq %r12, %rdi
callq 0x4210
movq 0x128(%r14), %rsi
movq 0x130(%r14), %rdx
movq %r12, %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 0x25f11(%rip), %rsi     # 0x2d283
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movzbl 0x148(%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 0x25ed9(%rip), %rsi     # 0x2d29c
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
movzbl 0x149(%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 0x25f40(%rip), %rsi     # 0x2d354
movl $0x18, %edx
movq %rax, %rdi
callq 0x4210
cmpl $0x0, 0x14c(%r14)
leaq 0x25f3d(%rip), %rax     # 0x2d36d
leaq 0x25f48(%rip), %rsi     # 0x2d37f
cmoveq %rax, %rsi
movl $0x11, %eax
movl $0x1b, %edx
cmoveq %rax, %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
leaq 0x25d96(%rip), %rsi     # 0x2d215
movl $0x1, %edx
movq %rax, %rdi
callq 0x4210
movq -0x30(%rbp), %rax
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
nop