// File: /workspace/github_cpp_makefile_star2_O2/mh0fm4[P]SCDC/src/components/dataprov/dataprov_store_mem.cc
// Function: scdc_dataprov_store_mem_handler::info_entry(scdc_dataprov_store_mem_handler::store_data_t*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
bool scdc_dataprov_store_mem_handler::info_entry(store_t store, const char *path, std::string &result)
{
  SCDC_TRACE_F("store: '" << store << "', path: '%s'" << path);

  bool ret = true;

  if (!path || path[0] == '\0')
  {
    result = "entries: " + zxx::to_string(store->entries.size());

  } else
  {
    entry_t entry = find_entry(store, path);

    if (entry == entry_null)
    {
      result = string("entry '") + path + "' not found";
      SCDC_FAIL_F(result);
      goto do_return;
    }

    result = string("entry '") + path + "', size: " + zxx::to_string(entry->buf.current);
  }

  ret = true;

do_return:
  SCDC_TRACE_F("return: " << ret << ", result: " << result);

  return ret;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0xb0, %rsp
movq %rcx, %rbx
testq %rdx, %rdx
je 0x1fdcc
movq %rdx, %r14
cmpb $0x0, (%rdx)
je 0x1fdcc
movq %r14, %rdx
callq 0x1ff7e
testq %rax, %rax
je 0x1fe22
movq %rax, %r15
leaq 0x32120(%rip), %rsi     # 0x51e4d
leaq 0x70(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x1a132
leaq 0x30(%rsp), %rdi
leaq 0x70(%rsp), %rsi
movq %r14, %rdx
callq 0x1cb18
leaq 0x31d06(%rip), %rdx     # 0x51a5b
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0x1cb18
movq 0x30(%r15), %rsi
leaq 0x90(%rsp), %rdi
callq 0x21972
leaq 0x50(%rsp), %rdi
leaq 0x10(%rsp), %rsi
leaq 0x90(%rsp), %rdx
callq 0x218f1
leaq 0x50(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xb690
movq %r14, %rdi
callq 0xb230
leaq 0x90(%rsp), %rdi
callq 0xb230
leaq 0x10(%rsp), %rdi
callq 0xb230
leaq 0x30(%rsp), %rdi
callq 0xb230
leaq 0x70(%rsp), %rdi
jmp 0x1fe0e
movq 0x30(%rsi), %rsi
leaq 0x10(%rsp), %r14
movq %r14, %rdi
callq 0x2188b
leaq 0x31c59(%rip), %rsi     # 0x51a3d
leaq 0x50(%rsp), %rdi
movq %r14, %rdx
callq 0x218cd
leaq 0x50(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xb690
movq %r14, %rdi
callq 0xb230
leaq 0x10(%rsp), %rdi
callq 0xb230
movb $0x1, %al
addq $0xb0, %rsp
popq %rbx
popq %r14
popq %r15
retq
leaq 0x32024(%rip), %rsi     # 0x51e4d
leaq 0x30(%rsp), %rdi
leaq 0x70(%rsp), %rdx
callq 0x1a132
leaq 0x10(%rsp), %rdi
leaq 0x30(%rsp), %rsi
movq %r14, %rdx
callq 0x1cb18
leaq 0x31bb5(%rip), %rdx     # 0x51a06
leaq 0x50(%rsp), %rdi
leaq 0x10(%rsp), %rsi
callq 0x1cb18
leaq 0x50(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0xb690
movq %r14, %rdi
callq 0xb230
leaq 0x10(%rsp), %rdi
callq 0xb230
leaq 0x30(%rsp), %rdi
callq 0xb230
leaq 0x556ed(%rip), %r14     # 0x75580
movq (%r14), %rdi
cmpq $0x0, 0x8(%rdi)
je 0x1fe13
addq $0x20, %rdi
callq 0xb800
movq (%r14), %rax
movq 0x8(%rax), %rdi
leaq 0x312d0(%rip), %rsi     # 0x51188
callq 0xb520
leaq 0x31b4e(%rip), %rsi     # 0x51a12
movq %rax, %rdi
callq 0xb520
leaq 0x31b7d(%rip), %rsi     # 0x51a50
movq %rax, %rdi
callq 0xb520
leaq 0x34bc1(%rip), %rsi     # 0x54aa3
movq %rax, %rdi
callq 0xb520
movq %rax, %rdi
movq %rbx, %rsi
callq 0xb490
movq %rax, %rdi
callq 0xb270
movq (%r14), %rdi
addq $0x20, %rdi
callq 0xb3e0
jmp 0x1fe13
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0xb230
jmp 0x1ff20
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
jmp 0x1ff70
jmp 0x1ff63
movq %rax, %rbx
leaq 0x90(%rsp), %rdi
callq 0xb230
jmp 0x1ff3e
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0xb230
jmp 0x1ff4d
movq %rax, %rbx
leaq 0x30(%rsp), %rdi
callq 0xb230
jmp 0x1ff5c
movq %rax, %rbx
leaq 0x70(%rsp), %rdi
jmp 0x1ff70
movq %rax, %rbx
jmp 0x1ff75
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0xb230
movq %rbx, %rdi
callq 0xb9a0
nop