// File: /workspace/github_cpp_makefile_star2_O3/williewillus[P]panda_scratchpad/src/checker/DiskContents.cpp
// Function: DiskContents::sanity_checks(std::basic_ofstream<char, std::char_traits<char>>&)
bool DiskContents::sanity_checks(ofstream &diff_file) {
  cout << __func__ << endl;
  string base_path = "/mnt/pmem0";
  if (!makeFiles(base_path, diff_file)) {
    cout << "Failed: Couldn't create files in all directories" << endl;
    diff_file << "Failed: Couldn't create files in all directories" << endl;
    return false;
  }

  if (!deleteFiles(base_path, diff_file)) {
    cout << "Failed: Couldn't delete all the existing directories" << endl;
    diff_file << "Failed: Couldn't delete all the existing directories" << endl;
    return false;
  }

  cout << "Passed sanity checks" << endl;
  return true;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x68, %rsp
movq %rsi, %rbx
movq %rdi, %r14
movq 0x8950(%rip), %r15      # 0x1bfc8
leaq 0x2137(%rip), %rsi      # 0x157b6
movl $0xd, %edx
movq %r15, %rdi
callq 0x54f0
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x5470
movsbl %al, %esi
movq %r15, %rdi
callq 0x5040
movq %rax, %rdi
callq 0x5300
leaq -0x38(%rbp), %r12
movq %r12, -0x10(%r12)
leaq 0x1b1f(%rip), %rsi      # 0x151e2
leaq 0x1b22(%rip), %rdx      # 0x151ec
leaq -0x48(%rbp), %r15
movq %r15, %rdi
callq 0x8066
leaq -0x78(%rbp), %r13
movq %r13, -0x10(%r13)
movq (%r15), %rsi
movq 0x8(%r15), %rdx
addq %rsi, %rdx
leaq -0x88(%rbp), %rdi
callq 0x7fc8
leaq -0x88(%rbp), %rsi
movq %r14, %rdi
movq %rbx, %rdx
callq 0x133d6
movl %eax, %r15d
movq -0x88(%rbp), %rdi
cmpq %r13, %rdi
je 0x1371a
callq 0x5460
testb %r15b, %r15b
je 0x137b5
leaq -0x58(%rbp), %r15
movq %r15, -0x10(%r15)
movq -0x48(%rbp), %rsi
movq -0x40(%rbp), %rdx
addq %rsi, %rdx
leaq -0x68(%rbp), %rdi
callq 0x7fc8
leaq -0x68(%rbp), %rsi
movq %r14, %rdi
movq %rbx, %rdx
callq 0x12ce4
movl %eax, %r14d
movq -0x68(%rbp), %rdi
cmpq %r15, %rdi
je 0x1375f
callq 0x5460
testb %r14b, %r14b
je 0x13806
movq 0x8859(%rip), %rbx      # 0x1bfc8
leaq 0x20b4(%rip), %rsi      # 0x1582a
movl $0x14, %edx
movq %rbx, %rdi
callq 0x54f0
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0x5470
movsbl %al, %esi
movq 0x8827(%rip), %rdi      # 0x1bfc8
callq 0x5040
movb $0x1, %bl
movq %rax, %rdi
callq 0x5300
jmp 0x1388c
movq 0x880c(%rip), %r15      # 0x1bfc8
leaq 0x2001(%rip), %r14      # 0x157c4
movl $0x30, %edx
movq %r15, %rdi
movq %r14, %rsi
callq 0x54f0
movq (%r15), %rax
addq -0x18(%rax), %r15
movq %r15, %rdi
movl $0xa, %esi
callq 0x5470
movsbl %al, %esi
movq 0x87d7(%rip), %rdi      # 0x1bfc8
callq 0x5040
movl $0x30, %r15d
movq %rax, %rdi
callq 0x5300
jmp 0x13855
movq 0x87bb(%rip), %r15      # 0x1bfc8
leaq 0x1fe1(%rip), %r14      # 0x157f5
movl $0x34, %edx
movq %r15, %rdi
movq %r14, %rsi
callq 0x54f0
movq (%r15), %rax
addq -0x18(%rax), %r15
movq %r15, %rdi
movl $0xa, %esi
callq 0x5470
movsbl %al, %esi
movq 0x8786(%rip), %rdi      # 0x1bfc8
callq 0x5040
movl $0x34, %r15d
movq %rax, %rdi
callq 0x5300
movq %rbx, %rdi
movq %r14, %rsi
movq %r15, %rdx
callq 0x54f0
movq (%rbx), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x5470
movsbl %al, %esi
movq %rbx, %rdi
callq 0x5040
movq %rax, %rdi
callq 0x5300
xorl %ebx, %ebx
movq -0x48(%rbp), %rdi
cmpq %r12, %rdi
je 0x1389a
callq 0x5460
movl %ebx, %eax
addq $0x68, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq -0x68(%rbp), %rdi
cmpq %r15, %rdi
jne 0x138c8
jmp 0x138d2
movq %rax, %rbx
movq -0x88(%rbp), %rdi
cmpq %r13, %rdi
je 0x138d2
callq 0x5460
jmp 0x138d2
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r12, %rdi
je 0x138e0
callq 0x5460
movq %rbx, %rdi
callq 0x57c0