// File: mh0fm4[P]SCDC/src/components/node/node_tcp.cc
// Function: scdc_nodeport_tcp::open_config_conf(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, scdc_args*, bool&)
bool scdc_nodeport_tcp::open_config_conf(const std::string &conf, scdc_args *args, bool &done)
{
  done = true;
  bool ret = true;

  if (conf == "address")
  {
    const char *a;

    if (args->get<const char *>(SCDC_ARGS_TYPE_CSTR, &a) == SCDC_ARG_REF_NULL)
    {
      SCDC_ERROR("open_config_conf: getting address");
      ret = false;

    } else
    {
      SCDC_TRACE("open_config_conf: address: '" << address << "'");
      address = a;
    }

  } else if (conf == "port")
  {
    if (args->get<int>(SCDC_ARGS_TYPE_INT, &port) == SCDC_ARG_REF_NULL)
    {
      SCDC_ERROR("open_config_conf: getting port");
      ret = false;

    } else
    {
      SCDC_TRACE("open_config_conf: port: " << port);
    }

  } else
  {
    done = false;
    ret = scdc_nodeport::open_config_conf(conf, args, done);
  }

  return ret;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x20(%rbp), %rax
movb $0x1, (%rax)
movb $0x1, -0x21(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x15724(%rip), %rsi     # 0xa979a
callq 0x25b80
testb $0x1, %al
jne 0x94084
jmp 0x94147
movq -0x18(%rbp), %rdi
movl $0x4, %esi
leaq -0x30(%rbp), %rdx
xorl %ecx, %ecx
callq 0x4d6c0
cmpq $0x0, %rax
jne 0x9412a
jmp 0x940a4
leaq 0x405fd(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e8e0
cmpq $0x0, %rax
je 0x94122
leaq 0x405e8(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e900
leaq 0x405d9(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e8e0
movq %rax, %rdi
leaq 0x123c7(%rip), %rsi     # 0xa64a8
callq 0xc670
movq %rax, %rdi
leaq 0x1561d(%rip), %rsi     # 0xa970d
callq 0xc670
movq %rax, %rdi
leaq 0x15681(%rip), %rsi     # 0xa9780
callq 0xc670
movq %rax, %rdi
movq 0x3feb2(%rip), %rsi     # 0xd3fc0
callq 0xc6d0
leaq 0x4058e(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e920
jmp 0x94124
movb $0x0, -0x21(%rbp)
jmp 0x94142
jmp 0x9412c
jmp 0x9412e
movq -0x38(%rbp), %rdi
movq -0x30(%rbp), %rsi
addq $0x98, %rdi
callq 0xc920
jmp 0x94238
movq -0x10(%rbp), %rdi
leaq 0x1566a(%rip), %rsi     # 0xa97bc
callq 0x25b80
testb $0x1, %al
jne 0x94160
jmp 0x94215
movq -0x38(%rbp), %rdx
movq -0x18(%rbp), %rdi
addq $0xb8, %rdx
movl $0x1, %esi
xorl %ecx, %ecx
callq 0x4d490
cmpq $0x0, %rax
jne 0x9420d
jmp 0x94187
leaq 0x4051a(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e8e0
cmpq $0x0, %rax
je 0x94205
leaq 0x40505(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e900
leaq 0x404f6(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e8e0
movq %rax, %rdi
leaq 0x122e4(%rip), %rsi     # 0xa64a8
callq 0xc670
movq %rax, %rdi
leaq 0x1553a(%rip), %rsi     # 0xa970d
callq 0xc670
movq %rax, %rdi
leaq 0x155c0(%rip), %rsi     # 0xa97a2
callq 0xc670
movq %rax, %rdi
movq 0x3fdcf(%rip), %rsi     # 0xd3fc0
callq 0xc6d0
leaq 0x404ab(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e920
jmp 0x94207
movb $0x0, -0x21(%rbp)
jmp 0x94213
jmp 0x9420f
jmp 0x94211
jmp 0x94213
jmp 0x94236
movq -0x38(%rbp), %rdi
movq -0x20(%rbp), %rax
movb $0x0, (%rax)
movq -0x10(%rbp), %rsi
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rcx
callq 0x960e0
andb $0x1, %al
movb %al, -0x21(%rbp)
jmp 0x94238
movb -0x21(%rbp), %al
andb $0x1, %al
addq $0x40, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)