// File: /workspace/github_cpp_makefile_star2_O2/mh0fm4[P]SCDC/src/components/dataprov/dataprov_jobrun.cc
// Function: scdc_dataprov_jobrun::open(char const*, scdc_args*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
bool scdc_dataprov_jobrun::open(const char *conf, scdc_args *args, scdc_result &result)
{
  SCDC_TRACE(__func__ << ": '" << conf << "'");

  if (!scdc_dataprov::open(conf, args, result))
  {
    SCDC_FAIL("open: opening base");
    return false;
  }

  dataset_cmds_add("cd", static_cast<dataset_cmds_do_cmd_f>(&scdc_dataset_jobrun::do_cmd_cd));
  dataset_cmds_add("pwd", static_cast<dataset_cmds_do_cmd_f>(&scdc_dataset_jobrun::do_cmd_pwd));
  dataset_cmds_add("ls", static_cast<dataset_cmds_do_cmd_f>(&scdc_dataset_jobrun::do_cmd_ls));
  dataset_cmds_add("info", static_cast<dataset_cmds_do_cmd_f>(&scdc_dataset_jobrun::do_cmd_info));
  dataset_cmds_add("put", static_cast<dataset_cmds_do_cmd_f>(&scdc_dataset_jobrun::do_cmd_put));
  dataset_cmds_add("get", static_cast<dataset_cmds_do_cmd_f>(&scdc_dataset_jobrun::do_cmd_get));
  dataset_cmds_add("rm", static_cast<dataset_cmds_do_cmd_f>(&scdc_dataset_jobrun::do_cmd_rm));

#if SCDC_LOCK
  pthread_mutex_init(&libscdc_lock, NULL);
#endif

  sched_init();

  return true;
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x28, %rsp
movq %rdi, %r14
callq 0x2deba
movl %eax, %ebx
testb %al, %al
je 0x3c32f
leaq 0x159fe(%rip), %rsi     # 0x51bbc
leaq 0x8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x1a132
leaq 0x8(%rsp), %rsi
pushq $0x21
popq %rdx
movq %r14, %rdi
xorl %ecx, %ecx
callq 0x20aa0
leaq 0x8(%rsp), %rdi
callq 0xb230
leaq 0x15812(%rip), %rsi     # 0x51a02
leaq 0x8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x1a132
leaq 0x8(%rsp), %rsi
pushq $0x29
popq %rdx
movq %r14, %rdi
xorl %ecx, %ecx
callq 0x20aa0
leaq 0x8(%rsp), %rdi
callq 0xb230
leaq 0x15bdb(%rip), %rsi     # 0x51dfd
leaq 0x8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x1a132
leaq 0x41b4(%rip), %rdx      # 0x403ec
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
xorl %ecx, %ecx
callq 0x20aa0
leaq 0x8(%rsp), %rdi
callq 0xb230
leaq 0x155f8(%rip), %rsi     # 0x51850
leaq 0x8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x1a132
leaq 0x8(%rsp), %rsi
pushq $0x19
popq %rdx
movq %r14, %rdi
xorl %ecx, %ecx
callq 0x20aa0
leaq 0x8(%rsp), %rdi
callq 0xb230
leaq 0x15816(%rip), %rsi     # 0x51aa0
leaq 0x8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x1a132
leaq 0x42f2(%rip), %rdx      # 0x40592
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
xorl %ecx, %ecx
callq 0x20aa0
leaq 0x8(%rsp), %rdi
callq 0xb230
leaq 0x15858(%rip), %rsi     # 0x51b18
leaq 0x8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x1a132
leaq 0x4678(%rip), %rdx      # 0x4094e
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
xorl %ecx, %ecx
callq 0x20aa0
leaq 0x8(%rsp), %rdi
callq 0xb230
leaq 0x171c9(%rip), %rsi     # 0x534bf
leaq 0x8(%rsp), %rdi
leaq 0x7(%rsp), %rdx
callq 0x1a132
leaq 0x487c(%rip), %rdx      # 0x40b88
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
xorl %ecx, %ecx
callq 0x20aa0
leaq 0x8(%rsp), %rdi
callq 0xb230
movq %r14, %rdi
callq 0x3c3ca
jmp 0x3c38e
leaq 0x3924a(%rip), %r14     # 0x75580
movq (%r14), %rdi
cmpq $0x0, 0x8(%rdi)
je 0x3c38e
addq $0x20, %rdi
callq 0xb800
movq (%r14), %rax
movq 0x8(%rax), %rdi
leaq 0x14e31(%rip), %rsi     # 0x51188
callq 0xb520
leaq 0x17709(%rip), %rsi     # 0x53a6c
movq %rax, %rdi
callq 0xb520
leaq 0x1676b(%rip), %rsi     # 0x52add
movq %rax, %rdi
callq 0xb520
movq %rax, %rdi
callq 0xb270
movq (%r14), %rdi
addq $0x20, %rdi
callq 0xb3e0
movl %ebx, %eax
addq $0x28, %rsp
popq %rbx
popq %r14
retq
jmp 0x3c3b0
jmp 0x3c3bf
jmp 0x3c3b0
jmp 0x3c3bf
jmp 0x3c3b0
jmp 0x3c3bf
jmp 0x3c3b0
jmp 0x3c3bf
jmp 0x3c3b0
jmp 0x3c3bf
jmp 0x3c3b0
jmp 0x3c3bf
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0xb230
jmp 0x3c3c2
movq %rax, %rbx
movq %rbx, %rdi
callq 0xb9a0