// File: /workspace/github_cpp_makefile_star2_O2/brashi[P]PetFera/src/./banco_dados.cpp
// Function: BancoDados::BancoDados(std::shared_ptr<Petshop>)
BancoDados::BancoDados(shared_ptr<Petshop> petshop):
                        petshop(petshop) {
                            diretorio = "dados/";
                            if(!fs::exists(diretorio)) {
                                cout << "Criando diretório dados/" << endl;
                                fs::create_directory(diretorio);
                            }
                            funcArq = diretorio + "funcionarios.csv";
                            animalArq = diretorio + "animais.csv";
                        }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x148, %rsp            # imm = 0x148
movq %rdi, %rbx
callq 0x81e6
leaq 0x20(%rbx), %rax
movq %rax, 0x10(%rbx)
andq $0x0, 0x18(%rbx)
xorl %eax, %eax
movb %al, 0x20(%rbx)
leaq 0x40(%rbx), %rcx
movq %rcx, 0x30(%rbx)
andq $0x0, 0x38(%rbx)
leaq 0x10(%rbx), %r14
movb %al, 0x40(%rbx)
leaq 0x60(%rbx), %rcx
movq %rcx, 0x50(%rbx)
andq $0x0, 0x58(%rbx)
leaq 0x30(%rbx), %rcx
movq %rcx, 0x20(%rsp)
leaq 0x50(%rbx), %r12
movb %al, 0x60(%rbx)
leaq 0x70(%rbx), %r13
movq %r13, %rdi
movq %r14, 0x28(%rsp)
callq 0x1240e
leaq 0x1f(%rsp), %rdx
movb $0x41, (%rdx)
leaq 0x13525(%rip), %rsi     # 0x18fad
leaq 0x30(%rsp), %rbp
movq %rbp, %rdi
callq 0x7c6e
leaq 0x58(%rsp), %r14
leaq 0x1e(%rsp), %rdx
movb $0x46, (%rdx)
leaq 0x1155b(%rip), %rsi     # 0x17004
movq %r14, %rdi
callq 0x7c6e
leaq 0x80(%rsp), %r14
leaq 0x1d(%rsp), %rdx
movb $0x4d, (%rdx)
leaq 0x11540(%rip), %rsi     # 0x17008
movq %r14, %rdi
callq 0x7c6e
leaq 0xa8(%rsp), %r14
leaq 0x1c(%rsp), %rdx
movb $0x52, (%rdx)
leaq 0x11525(%rip), %rsi     # 0x1700c
movq %r14, %rdi
callq 0x7c6e
leaq 0xd0(%rsp), %r14
leaq 0x1b(%rsp), %rdx
movb $0x45, (%rdx)
leaq 0x13692(%rip), %rsi     # 0x19198
movq %r14, %rdi
callq 0x7c90
leaq 0xf8(%rsp), %r14
leaq 0x1a(%rsp), %rdx
movb $0x44, (%rdx)
leaq 0x12f80(%rip), %rsi     # 0x18aa5
movq %r14, %rdi
callq 0x7c90
leaq 0x120(%rsp), %r14
leaq 0x19(%rsp), %rdx
movb $0x4e, (%rdx)
leaq 0x1364f(%rip), %rsi     # 0x19193
movq %r14, %rdi
callq 0x7c90
leaq 0xa0(%rbx), %r15
leaq 0x148(%rsp), %rdx
leaq 0x16(%rsp), %rax
movq %rax, (%rsp)
leaq 0x30(%rsp), %rsi
leaq 0x18(%rsp), %r8
leaq 0x17(%rsp), %r9
movq %r15, %rdi
xorl %ecx, %ecx
callq 0x85e0
movl $0xf0, %r14d
leaq (%rsp,%r14), %rdi
addq $0x30, %rdi
callq 0x54c8
addq $-0x28, %r14
cmpq $-0x28, %r14
jne 0x5b83
leaq 0x11482(%rip), %rsi     # 0x17023
movq %r12, %rdi
callq 0x5490
leaq 0x30(%rsp), %rdi
pushq $0x2
popq %rdx
movq %r12, %rsi
callq 0x7cce
leaq 0x30(%rsp), %rdi
callq 0x7cb2
movl %eax, %ebp
leaq 0x30(%rsp), %rdi
callq 0x7d36
testb %bpl, %bpl
jne 0x5c13
movq 0x203ed(%rip), %rdi     # 0x25fc8
leaq 0x1142e(%rip), %rsi     # 0x17010
callq 0x5270
movq %rax, %rdi
callq 0x5160
leaq 0x30(%rsp), %rdi
pushq $0x2
popq %rdx
movq %r12, %rsi
callq 0x7cce
leaq 0x30(%rsp), %rdi
callq 0x5130
leaq 0x30(%rsp), %rdi
callq 0x7d36
leaq 0x11410(%rip), %rdx     # 0x1702a
leaq 0x30(%rsp), %rdi
movq %r12, %rsi
callq 0x7d4c
leaq 0x30(%rsp), %r14
movq 0x28(%rsp), %rdi
movq %r14, %rsi
callq 0x52f0
movq %r14, %rdi
callq 0x54c8
leaq 0x113f3(%rip), %rdx     # 0x1703b
leaq 0x30(%rsp), %rdi
movq %r12, %rsi
callq 0x7d4c
leaq 0x30(%rsp), %rbx
movq 0x20(%rsp), %rdi
movq %rbx, %rsi
callq 0x52f0
movq %rbx, %rdi
callq 0x54c8
addq $0x148, %rsp            # imm = 0x148
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x5c89
jmp 0x5d02
jmp 0x5d02
jmp 0x5d02
movq %rax, 0x8(%rsp)
leaq 0x30(%rsp), %rdi
callq 0x7d36
jmp 0x5d07
jmp 0x5d02
movq %rax, 0x8(%rsp)
movl $0xf0, %r15d
leaq (%rsp,%r15), %rdi
addq $0x30, %rdi
callq 0x54c8
addq $-0x28, %r15
cmpq $-0x28, %r15
jne 0x5ca7
movb $0x1, %al
jmp 0x5cd3
jmp 0x5ccc
jmp 0x5ccc
jmp 0x5ccc
jmp 0x5ccc
jmp 0x5ccc
movq %rax, 0x8(%rsp)
xorl %eax, %eax
cmpq %r14, %rbp
sete %cl
testb %al, %al
jne 0x5d0f
testb %cl, %cl
jne 0x5d0f
addq $-0x28, %r14
movq %r14, %rdi
callq 0x54c8
cmpq %rbp, %r14
jne 0x5ce1
jmp 0x5d0f
movq %rax, 0x8(%rsp)
jmp 0x5d0f
movq %rax, 0x8(%rsp)
jmp 0x5d17
movq %rax, 0x8(%rsp)
movq %r15, %rdi
callq 0x8312
movq %r13, %rdi
callq 0x83d0
movq %r12, %rdi
callq 0x54c8
movq 0x20(%rsp), %rdi
callq 0x54c8
movq 0x28(%rsp), %rdi
callq 0x54c8
addq $0x8, %rbx
movq %rbx, %rdi
callq 0x8466
movq 0x8(%rsp), %rdi
callq 0x5430
nop