// File: mh0fm4[P]SCDC/src/components/dataprov/dataprov.cc
// Function: scdc_dataprov::config_do_cmd_param(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, scdc_config_result&, bool&)
bool scdc_dataprov::config_do_cmd_param(const std::string &cmd, const std::string &param, std::string val, scdc_config_result &result, bool &done)
{
  SCDC_TRACE("config_do_cmd_param: cmd: '" << cmd << "', param: '" << param << "', val: '" << val << "', result: '" << result << "'");

  string c(cmd), p(param);
  done = true;
  bool ret = true;

  if (p == "")
  {
    if (c == "info")
    {
      ret = scdc_dataprov_config::info(result, type.c_str());

    } else if (c == "ls")
    {
      ret = scdc_dataprov_config::ls(result, "type");

    } else done = false;

  } else if (p == "type")
  {
    if (c == "info")
    {
      ret = scdc_dataprov_config::info(result, p, "type of the data provider");

    } else if (c == "get")
    {
      ret = scdc_dataprov_config::get<string>(result, p, type);

    } else done = false;

  } else done = false;

  if (done && !ret)
  {
    SCDC_FAIL("config_do_cmd_param: cmd '" << cmd << "' not implemented");
    return false;
  }

  return ret;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xf0, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movq %r8, -0x30(%rbp)
movq %r9, -0x38(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x98(%rbp)
jmp 0x5f890
movq -0x18(%rbp), %rsi
leaq -0x58(%rbp), %rdi
callq 0xc270
movq -0x20(%rbp), %rsi
leaq -0x78(%rbp), %rdi
callq 0xc270
jmp 0x5f8ac
movq -0x38(%rbp), %rax
movb $0x1, (%rax)
movb $0x1, -0x85(%rbp)
leaq 0x46ce3(%rip), %rsi     # 0xa65a4
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x99(%rbp)
jmp 0x5f8d2
movb -0x99(%rbp), %al
testb $0x1, %al
jne 0x5f8e1
jmp 0x5f9d5
leaq 0x46f8b(%rip), %rsi     # 0xa6873
leaq -0x58(%rbp), %rdi
callq 0x25b80
movb %al, -0x9a(%rbp)
jmp 0x5f8f9
movb -0x9a(%rbp), %al
testb $0x1, %al
jne 0x5f905
jmp 0x5f97b
movq -0x98(%rbp), %rdi
movq -0x30(%rbp), %rax
movq %rax, -0xa8(%rbp)
addq $0x8, %rdi
callq 0xc260
movq -0xa8(%rbp), %rdi
movq %rax, %rsi
callq 0x278f0
movb %al, -0x9b(%rbp)
jmp 0x5f937
movb -0x9b(%rbp), %al
andb $0x1, %al
movb %al, -0x85(%rbp)
jmp 0x5f9d0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x5fc1c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x78(%rbp), %rdi
callq 0xc3e0
jmp 0x5fc1c
leaq 0x471ae(%rip), %rsi     # 0xa6b30
leaq -0x58(%rbp), %rdi
callq 0x25b80
movb %al, -0xa9(%rbp)
jmp 0x5f993
movb -0xa9(%rbp), %al
testb $0x1, %al
jne 0x5f99f
jmp 0x5f9c7
movq -0x30(%rbp), %rdi
leaq 0x48434(%rip), %rsi     # 0xa7dde
callq 0x27920
movb %al, -0xaa(%rbp)
jmp 0x5f9b7
movb -0xaa(%rbp), %al
andb $0x1, %al
movb %al, -0x85(%rbp)
jmp 0x5f9ce
movq -0x38(%rbp), %rax
movb $0x0, (%rax)
jmp 0x5f9d0
jmp 0x5fab4
leaq 0x48402(%rip), %rsi     # 0xa7dde
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0xab(%rbp)
jmp 0x5f9ed
movb -0xab(%rbp), %al
testb $0x1, %al
jne 0x5f9fc
jmp 0x5faab
leaq 0x46e70(%rip), %rsi     # 0xa6873
leaq -0x58(%rbp), %rdi
callq 0x25b80
movb %al, -0xac(%rbp)
jmp 0x5fa14
movb -0xac(%rbp), %al
testb $0x1, %al
jne 0x5fa20
jmp 0x5fa4c
movq -0x30(%rbp), %rdi
leaq 0x483b8(%rip), %rdx     # 0xa7de3
leaq -0x78(%rbp), %rsi
callq 0x27950
movb %al, -0xad(%rbp)
jmp 0x5fa3c
movb -0xad(%rbp), %al
andb $0x1, %al
movb %al, -0x85(%rbp)
jmp 0x5faa9
leaq 0x47178(%rip), %rsi     # 0xa6bcb
leaq -0x58(%rbp), %rdi
callq 0x25b80
movb %al, -0xae(%rbp)
jmp 0x5fa64
movb -0xae(%rbp), %al
testb $0x1, %al
jne 0x5fa70
jmp 0x5faa0
movq -0x98(%rbp), %rdx
movq -0x30(%rbp), %rdi
addq $0x8, %rdx
leaq -0x78(%rbp), %rsi
callq 0x600f0
movb %al, -0xaf(%rbp)
jmp 0x5fa90
movb -0xaf(%rbp), %al
andb $0x1, %al
movb %al, -0x85(%rbp)
jmp 0x5faa7
movq -0x38(%rbp), %rax
movb $0x0, (%rax)
jmp 0x5faa9
jmp 0x5fab2
movq -0x38(%rbp), %rax
movb $0x0, (%rax)
jmp 0x5fab4
movq -0x38(%rbp), %rax
testb $0x1, (%rax)
je 0x5fbe7
testb $0x1, -0x85(%rbp)
jne 0x5fbe7
jmp 0x5fad0
leaq 0x74bd1(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x257e0
movq %rax, -0xb8(%rbp)
jmp 0x5fae8
movq -0xb8(%rbp), %rax
cmpq $0x0, %rax
je 0x5fbd3
leaq 0x74ba8(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x25800
jmp 0x5fb0a
leaq 0x74b97(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x257e0
movq %rax, -0xc0(%rbp)
jmp 0x5fb22
movq -0xc0(%rbp), %rdi
leaq 0x46680(%rip), %rsi     # 0xa61b0
callq 0xc670
movq %rax, -0xc8(%rbp)
jmp 0x5fb3e
movq -0xc8(%rbp), %rdi
leaq 0x48150(%rip), %rsi     # 0xa7c9c
callq 0xc670
movq %rax, -0xd0(%rbp)
jmp 0x5fb5a
movq -0xd0(%rbp), %rdi
leaq 0x46dd6(%rip), %rsi     # 0xa693e
callq 0xc670
movq %rax, -0xd8(%rbp)
jmp 0x5fb76
movq -0xd8(%rbp), %rdi
movq -0x18(%rbp), %rsi
callq 0xc5b0
movq %rax, -0xe0(%rbp)
jmp 0x5fb8f
movq -0xe0(%rbp), %rdi
leaq 0x48260(%rip), %rsi     # 0xa7dfd
callq 0xc670
movq %rax, -0xe8(%rbp)
jmp 0x5fbab
movq -0xe8(%rbp), %rdi
movq 0x74407(%rip), %rsi     # 0xd3fc0
callq 0xc6d0
jmp 0x5fbc0
leaq 0x74ae1(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x25820
jmp 0x5fbd1
jmp 0x5fbd3
jmp 0x5fbd5
jmp 0x5fbd7
movb $0x0, -0x1(%rbp)
movl $0x1, -0x8c(%rbp)
jmp 0x5fbfc
movb -0x85(%rbp), %al
andb $0x1, %al
movb %al, -0x1(%rbp)
movl $0x1, -0x8c(%rbp)
leaq -0x78(%rbp), %rdi
callq 0xc3e0
leaq -0x58(%rbp), %rdi
callq 0xc3e0
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0xf0, %rsp
popq %rbp
retq
leaq -0x58(%rbp), %rdi
callq 0xc3e0
movq -0x80(%rbp), %rdi
callq 0xcba0
nop