// File: mh0fm4[P]SCDC/src/components/dataprov/dataprov_fs2.cc
// Function: scdc_dataset_fs2_store::do_cmd_get(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, _scdc_dataset_inout_t*, _scdc_dataset_inout_t*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
bool do_cmd_get(const string &params, scdc_dataset_input_t *input, scdc_dataset_output_t *output, scdc_result &result)
    {
      SCDC_TRACE("do_cmd_get: '" << params << "'");

      scdc_dataprov_fs2 *dataprov_fs2 = static_cast<scdc_dataprov_fs2 *>(dataprov);

      if (params.empty())
      {
        result = "empty path";
        SCDC_FAIL(__func__ << ": writing to store failed: " << result);
        return false;

      } else if (pwd.empty())
      {
        result = "no store selected";
        SCDC_FAIL(__func__ << ": getting entry failed: " << result);
        return false;

      } else
      {
        SCDC_TRACE("do_cmd_get: getting entry '" << params << "'");

        string store_path;
        dataprov_fs2->do_full_path(0, store_path);

        store_path += DIR_STORE_PREFIX + pwd + "/";

        SCDC_TRACE("do_cmd_put: store_path: '" << store_path << "'");

        string entry_path = store_path + DIR_ENTRY_PREFIX + params + DIR_ENTRY_SUFFIX;

        SCDC_TRACE("do_cmd_put: entry_path: '" << entry_path.c_str() << "'");

        if (!z_fs_is_file(entry_path.c_str()))
        {
          result = "entry does not exist";
          SCDC_FAIL("do_cmd_get: getting entry " << entry_path << " failed: " << result);
          return false;
        }

        /* FIXME */
        string entry_format;

        if (scdc_dataset_output_redirect(output, "from:file", entry_path.c_str()) != SCDC_SUCCESS)
        {
          result = "output redirection failed";
          SCDC_FAIL("do_cmd_get: getting entry " << entry_path << " failed: " << result);
          return false;
        }
      }

      return true;
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1d0, %rsp            # imm = 0x1D0
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x138(%rbp)
jmp 0x760cc
movq -0x138(%rbp), %rax
movq 0x8(%rax), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
callq 0xcb60
testb $0x1, %al
jne 0x760ed
jmp 0x761a5
movq -0x30(%rbp), %rdi
leaq 0x3253b(%rip), %rsi     # 0xa8633
callq 0xc920
leaq 0x5e5a4(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x257e0
cmpq $0x0, %rax
je 0x7619a
leaq 0x5e58b(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x25800
leaq 0x5e57c(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x257e0
movq %rax, %rdi
leaq 0x30072(%rip), %rsi     # 0xa61b0
callq 0xc670
movq %rax, %rdi
leaq 0x32485(%rip), %rsi     # 0xa85d2
callq 0xc670
movq %rax, %rdi
leaq 0x30a68(%rip), %rsi     # 0xa6bc4
callq 0xc670
movq %rax, %rdi
leaq 0x324d3(%rip), %rsi     # 0xa863e
callq 0xc670
movq %rax, %rdi
movq -0x30(%rbp), %rsi
callq 0xc5b0
movq %rax, %rdi
movq 0x5de3a(%rip), %rsi     # 0xd3fc0
callq 0xc6d0
leaq 0x5e516(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x25820
jmp 0x7619c
movb $0x0, -0x1(%rbp)
jmp 0x76759
movq -0x138(%rbp), %rdi
addq $0x18, %rdi
callq 0xcb60
testb $0x1, %al
jne 0x761be
jmp 0x76276
movq -0x30(%rbp), %rdi
leaq 0x324ba(%rip), %rsi     # 0xa8683
callq 0xc920
leaq 0x5e4d3(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x257e0
cmpq $0x0, %rax
je 0x7626b
leaq 0x5e4ba(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x25800
leaq 0x5e4ab(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x257e0
movq %rax, %rdi
leaq 0x2ffa1(%rip), %rsi     # 0xa61b0
callq 0xc670
movq %rax, %rdi
leaq 0x323b4(%rip), %rsi     # 0xa85d2
callq 0xc670
movq %rax, %rdi
leaq 0x30997(%rip), %rsi     # 0xa6bc4
callq 0xc670
movq %rax, %rdi
leaq 0x324b2(%rip), %rsi     # 0xa86ee
callq 0xc670
movq %rax, %rdi
movq -0x30(%rbp), %rsi
callq 0xc5b0
movq %rax, %rdi
movq 0x5dd69(%rip), %rsi     # 0xd3fc0
callq 0xc6d0
leaq 0x5e445(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x25820
jmp 0x7626d
movb $0x0, -0x1(%rbp)
jmp 0x76759
jmp 0x76278
jmp 0x7627a
leaq -0x58(%rbp), %rdi
movq %rdi, -0x140(%rbp)
callq 0xc960
movq -0x140(%rbp), %rdx
movq -0x38(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x716b0
jmp 0x762a0
movq -0x138(%rbp), %rdx
addq $0x18, %rdx
leaq 0x3235d(%rip), %rsi     # 0xa860f
leaq -0xa8(%rbp), %rdi
callq 0x25900
jmp 0x762c0
leaq 0x300a6(%rip), %rdx     # 0xa636d
leaq -0x88(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x2eef0
jmp 0x762dc
leaq -0x58(%rbp), %rdi
leaq -0x88(%rbp), %rsi
callq 0xc8a0
jmp 0x762ee
leaq -0x88(%rbp), %rdi
callq 0xc3e0
leaq -0xa8(%rbp), %rdi
callq 0xc3e0
jmp 0x76308
jmp 0x7630a
leaq 0x3230c(%rip), %rdx     # 0xa861d
leaq -0x108(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x31740
jmp 0x76323
movq -0x18(%rbp), %rdx
leaq -0xe8(%rbp), %rdi
leaq -0x108(%rbp), %rsi
callq 0x34a30
jmp 0x7633c
leaq 0x30261(%rip), %rdx     # 0xa65a4
leaq -0xc8(%rbp), %rdi
leaq -0xe8(%rbp), %rsi
callq 0x2eef0
jmp 0x76358
leaq -0xe8(%rbp), %rdi
callq 0xc3e0
leaq -0x108(%rbp), %rdi
callq 0xc3e0
jmp 0x76372
jmp 0x76374
leaq -0xc8(%rbp), %rdi
callq 0xc260
movq %rax, %rdi
callq 0x5d4c0
movq %rax, -0x148(%rbp)
jmp 0x76391
movq -0x148(%rbp), %rax
cmpq $0x0, %rax
jne 0x76565
movq -0x30(%rbp), %rdi
leaq 0x3235a(%rip), %rsi     # 0xa8707
callq 0xc920
jmp 0x763b4
jmp 0x763b6
leaq 0x5e2eb(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x257e0
cmpq $0x0, %rax
je 0x7654e
leaq 0x5e2d2(%rip), %rax     # 0xd46a8
movq %rax, -0x158(%rbp)
movq (%rax), %rdi
callq 0x25800
movq -0x158(%rbp), %rax
movq (%rax), %rdi
callq 0x257e0
movq %rax, %rdi
leaq 0x2fdb2(%rip), %rsi     # 0xa61b0
callq 0xc670
movq %rax, -0x150(%rbp)
jmp 0x7640c
movq -0x150(%rbp), %rdi
leaq 0x321b8(%rip), %rsi     # 0xa85d2
callq 0xc670
movq %rax, -0x160(%rbp)
jmp 0x76428
movq -0x160(%rbp), %rdi
leaq 0x322e6(%rip), %rsi     # 0xa871c
callq 0xc670
movq %rax, -0x168(%rbp)
jmp 0x76444
movq -0x168(%rbp), %rdi
leaq -0xc8(%rbp), %rsi
callq 0xc5b0
movq %rax, -0x170(%rbp)
jmp 0x76460
movq -0x170(%rbp), %rdi
leaq 0x3055b(%rip), %rsi     # 0xa69c9
callq 0xc670
movq %rax, -0x178(%rbp)
jmp 0x7647c
movq -0x178(%rbp), %rdi
movq -0x30(%rbp), %rsi
callq 0xc5b0
movq %rax, -0x180(%rbp)
jmp 0x76495
movq -0x180(%rbp), %rdi
movq 0x5db1d(%rip), %rsi     # 0xd3fc0
callq 0xc6d0
jmp 0x764aa
leaq 0x5e1f7(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x25820
jmp 0x7654e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x76748
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x764f5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x88(%rbp), %rdi
callq 0xc3e0
leaq -0xa8(%rbp), %rdi
callq 0xc3e0
jmp 0x76748
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x7652c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0xe8(%rbp), %rdi
callq 0xc3e0
leaq -0x108(%rbp), %rdi
callq 0xc3e0
jmp 0x76748
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x7673c
jmp 0x76550
jmp 0x76552
movb $0x0, -0x1(%rbp)
movl $0x1, -0x10c(%rbp)
jmp 0x76717
leaq -0x130(%rbp), %rdi
callq 0xc960
movq -0x28(%rbp), %rax
movq %rax, -0x190(%rbp)
leaq -0xc8(%rbp), %rdi
callq 0xc260
movq -0x190(%rbp), %rdi
movq %rax, %rdx
leaq 0x3219e(%rip), %rsi     # 0xa8737
xorl %eax, %eax
callq 0x47200
movq %rax, -0x188(%rbp)
jmp 0x765a9
movq -0x188(%rbp), %rax
cmpq $0x1, %rax
je 0x76701
movq -0x30(%rbp), %rdi
leaq 0x31eda(%rip), %rsi     # 0xa849f
callq 0xc920
jmp 0x765cc
jmp 0x765ce
leaq 0x5e0d3(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x257e0
cmpq $0x0, %rax
je 0x766ed
leaq 0x5e0ba(%rip), %rax     # 0xd46a8
movq %rax, -0x1a0(%rbp)
movq (%rax), %rdi
callq 0x25800
movq -0x1a0(%rbp), %rax
movq (%rax), %rdi
callq 0x257e0
movq %rax, %rdi
leaq 0x2fb9a(%rip), %rsi     # 0xa61b0
callq 0xc670
movq %rax, -0x198(%rbp)
jmp 0x76624
movq -0x198(%rbp), %rdi
leaq 0x31fa0(%rip), %rsi     # 0xa85d2
callq 0xc670
movq %rax, -0x1a8(%rbp)
jmp 0x76640
movq -0x1a8(%rbp), %rdi
leaq 0x320ce(%rip), %rsi     # 0xa871c
callq 0xc670
movq %rax, -0x1b0(%rbp)
jmp 0x7665c
movq -0x1b0(%rbp), %rdi
leaq -0xc8(%rbp), %rsi
callq 0xc5b0
movq %rax, -0x1b8(%rbp)
jmp 0x76678
movq -0x1b8(%rbp), %rdi
leaq 0x30343(%rip), %rsi     # 0xa69c9
callq 0xc670
movq %rax, -0x1c0(%rbp)
jmp 0x76694
movq -0x1c0(%rbp), %rdi
movq -0x30(%rbp), %rsi
callq 0xc5b0
movq %rax, -0x1c8(%rbp)
jmp 0x766ad
movq -0x1c8(%rbp), %rdi
movq 0x5d905(%rip), %rsi     # 0xd3fc0
callq 0xc6d0
jmp 0x766c2
leaq 0x5dfdf(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x25820
jmp 0x766ed
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x130(%rbp), %rdi
callq 0xc3e0
jmp 0x7673c
jmp 0x766ef
jmp 0x766f1
movb $0x0, -0x1(%rbp)
movl $0x1, -0x10c(%rbp)
jmp 0x7670b
movl $0x0, -0x10c(%rbp)
leaq -0x130(%rbp), %rdi
callq 0xc3e0
leaq -0xc8(%rbp), %rdi
callq 0xc3e0
leaq -0x58(%rbp), %rdi
callq 0xc3e0
movl -0x10c(%rbp), %eax
testl %eax, %eax
je 0x7673a
jmp 0x76738
jmp 0x76759
jmp 0x76753
leaq -0xc8(%rbp), %rdi
callq 0xc3e0
leaq -0x58(%rbp), %rdi
callq 0xc3e0
jmp 0x76767
jmp 0x76755
movb $0x1, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x1d0, %rsp            # imm = 0x1D0
popq %rbp
retq
movq -0x60(%rbp), %rdi
callq 0xcba0