// File: mh0fm4[P]SCDC/src/components/dataprov/dataprov_pool.cc
// Function: scdc_dataprov_pool::open(char const*, char const*, scdc_args*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
scdc_dataprov *scdc_dataprov_pool::open(const char *base_path, const char *conf, scdc_args *args, scdc_result &result)
{
  SCDC_TRACE("open: base_path: '" << base_path << "', conf: '" << conf << "'");

  stringlist confs(':', conf);
  string dp_type = confs.front_pop();

  if (dp_type == "fs") // deprecated
  {
    string s = confs.front();
    if (s == "access")
    {
      confs.front_pop();
      dp_type = "fs_access";

    } else if (s == "store")
    {
      confs.front_pop();
      dp_type = "fs_store";

    } else dp_type = "fs_access";

  } else if (dp_type == "mysql")
  {
    string s = confs.front();
    if (s == "store")
    {
      confs.front_pop();
      dp_type = "mysql_store";

    } else dp_type = "mysql_store";

  } else if (dp_type == "webdav")
  {
    string s = confs.front();
    if (s == "access")
    {
      confs.front_pop();
      dp_type = "webdav_access";

    } else if (s == "store")
    {
      confs.front_pop();
      dp_type = "webdav_store";

    } else dp_type = "webdav_access";

  } else if (dp_type == "nfs")
  {
    string s = confs.front();
    if (s == "access")
    {
      confs.front_pop();
      dp_type = "nfs_access";

    } else if (s == "store")
    {
      confs.front_pop();
      dp_type = "nfs_store";

    } else dp_type = "nfs_access";

  } else if (dp_type == "access")
  {
    string s = confs.front();
    if (s == "stub")
    {
      confs.front_pop();
      dp_type = "access_stub";

    } else if (s == "fs")
    {
      confs.front_pop();
      dp_type = "access_fs";

    } else if (s == "nfs")
    {
      confs.front_pop();
      dp_type = "access_nfs";

    } else if (s == "webdav")
    {
      confs.front_pop();
      dp_type = "access_webdav";

    } else if (s == "none")
    {
      confs.front_pop();
      dp_type = "access_none";

    } else dp_type = "access_none";

  } else if (dp_type == "store")
  {
    string s = confs.front();
    if (s == "stub")
    {
      confs.front_pop();
      dp_type = "store_stub";

    } else if (s == "mem")
    {
      confs.front_pop();
      dp_type = "store_mem";

    } else if (s == "fs")
    {
      confs.front_pop();
      dp_type = "store_fs";

    } else if (s == "nfs")
    {
      confs.front_pop();
      dp_type = "store_nfs";

    } else if (s == "webdav")
    {
      confs.front_pop();
      dp_type = "store_webdav";

    } else if (s == "mysql")
    {
      confs.front_pop();
      dp_type = "store_mysql";

    } else if (s == "none")
    {
      confs.front_pop();
      dp_type = "store_none";

    } else dp_type = "store_none";

  } else if (dp_type == "jobrun")
  {
    string s = confs.front();
    if (s == "system")
    {
      confs.front_pop();
      dp_type = "jobrun_system";

    } else if (s == "handler")
    {
      confs.front_pop();
      dp_type = "jobrun_handler";

    } else if (s == "relay")
    {
      confs.front_pop();
      dp_type = "jobrun_relay";

    } else dp_type = "jobrun_system";
  }

  scdc_dataprov *dataprov = 0;

  if (dp_type == "access_stub") dataprov = new scdc_dataprov_access_stub();
  else if (dp_type == "access_fs" || dp_type == "fs_access") dataprov = new scdc_dataprov_access_fs();
  else if (dp_type == "store_stub") dataprov = new scdc_dataprov_store_stub();
  else if (dp_type == "store_mem") dataprov = new scdc_dataprov_store_mem();
  else if (dp_type == "store_fs" || dp_type == "fs_store") dataprov = new scdc_dataprov_store_fs();
  else if (dp_type == "fs2_access") dataprov = new scdc_dataprov_fs2_access(); // deprecated
  else if (dp_type == "fs2_store") dataprov = new scdc_dataprov_fs2_store(); // deprecated
#if USE_MYSQL
  else if (dp_type == "mysql_store" || dp_type == "store_mysql") dataprov = new scdc_dataprov_mysql_store();
#endif
#if USE_WEBDAV
  else if (dp_type == "webdav_access" || dp_type == "access_webdav") dataprov = new scdc_dataprov_access_webdav();
  else if (dp_type == "webdav_store" || dp_type == "store_webdav") dataprov = new scdc_dataprov_store_webdav();
  else if (dp_type == "webdav2_access") dataprov = new scdc_dataprov_webdav2_access();
#endif
#if USE_NFS
  else if (dp_type == "nfs_access" || dp_type == "access_nfs") dataprov = new scdc_dataprov_access_nfs();
  else if (dp_type == "nfs_store" || dp_type == "store_nfs") dataprov = new scdc_dataprov_store_nfs();
  else if (dp_type == "nfs2_store") dataprov = new scdc_dataprov_nfs2_store();
#endif
  else if (dp_type == "bench" || dp_type == "gen") dataprov = new scdc_dataprov_bench();
  else if (dp_type == "hook" || dp_type == "config") dataprov = new scdc_dataprov_hook();
  else if (dp_type == "register") dataprov = new scdc_dataprov_register();
  else if (dp_type == "relay") dataprov = new scdc_dataprov_relay();
  else if (dp_type == "jobrun_system") dataprov = new scdc_dataprov_jobrun_system();
  else if (dp_type == "jobrun_handler") dataprov = new scdc_dataprov_jobrun_handler();
  else if (dp_type == "jobrun_relay") dataprov = new scdc_dataprov_jobrun_relay();
  else SCDC_ERROR("unknown dataprov '" << dp_type << "'");

  if (!dataprov) return 0;

  /* use the given config string as type instead of the implementation defined type (i.e., "fs:store" and "store:fs" use the same implementation, but different types) */
  dataprov->set_type(dp_type);

  if (!dataprov->open(confs.conflate().c_str(), args, result))
  {
    delete dataprov;
    return 0;
  }

  pair<iterator, bool> ret = insert(value_type(trim(base_path, "/"), dataprov));

  if (!ret.second)
  {
    delete dataprov;
    return 0;
  }

  return dataprov;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x630, %rsp            # imm = 0x630
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, -0x4c8(%rbp)
jmp 0x2bffc
movq -0x20(%rbp), %rdx
leaq -0x58(%rbp), %rdi
movq %rdi, -0x4d0(%rbp)
movl $0x3a, %esi
movq $-0x1, %rcx
callq 0x25a70
movq -0x4d0(%rbp), %rsi
leaq -0x78(%rbp), %rdi
callq 0x25b00
jmp 0x2c02e
leaq 0x7c467(%rip), %rsi     # 0xa849c
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x4d1(%rbp)
jmp 0x2c046
movb -0x4d1(%rbp), %al
testb $0x1, %al
jne 0x2c055
jmp 0x2c18b
leaq -0xa8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x267a0
jmp 0x2c067
leaq 0x7c306(%rip), %rsi     # 0xa8374
leaq -0xa8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4d2(%rbp)
jmp 0x2c082
movb -0x4d2(%rbp), %al
testb $0x1, %al
jne 0x2c08e
jmp 0x2c10b
leaq -0xc8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c0a0
leaq -0xc8(%rbp), %rdi
callq 0xc3e0
leaq 0x7a301(%rip), %rsi     # 0xa63b4
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c0be
jmp 0x2c17a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x2d6a5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x2d69c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0xa8(%rbp), %rdi
callq 0xc3e0
jmp 0x2d69c
leaq 0x7aaac(%rip), %rsi     # 0xa6bbe
leaq -0xa8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4d3(%rbp)
jmp 0x2c126
movb -0x4d3(%rbp), %al
testb $0x1, %al
jne 0x2c132
jmp 0x2c164
leaq -0xe8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c144
leaq -0xe8(%rbp), %rdi
callq 0xc3e0
leaq 0x7a268(%rip), %rsi     # 0xa63bf
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c162
jmp 0x2c178
leaq 0x7a249(%rip), %rsi     # 0xa63b4
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c176
jmp 0x2c178
jmp 0x2c17a
leaq -0xa8(%rbp), %rdi
callq 0xc3e0
jmp 0x2cbb7
leaq 0x7a2ac(%rip), %rsi     # 0xa643e
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x4d4(%rbp)
jmp 0x2c1a3
movb -0x4d4(%rbp), %al
testb $0x1, %al
jne 0x2c1b2
jmp 0x2c262
leaq -0x108(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x267a0
jmp 0x2c1c4
leaq 0x7a9f3(%rip), %rsi     # 0xa6bbe
leaq -0x108(%rbp), %rdi
callq 0x25b80
movb %al, -0x4d5(%rbp)
jmp 0x2c1df
movb -0x4d5(%rbp), %al
testb $0x1, %al
jne 0x2c1eb
jmp 0x2c23d
leaq -0x128(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c1fd
leaq -0x128(%rbp), %rdi
callq 0xc3e0
leaq 0x7a17c(%rip), %rsi     # 0xa638c
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c21b
jmp 0x2c251
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x108(%rbp), %rdi
callq 0xc3e0
jmp 0x2d69c
leaq 0x7a148(%rip), %rsi     # 0xa638c
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c24f
jmp 0x2c251
leaq -0x108(%rbp), %rdi
callq 0xc3e0
jmp 0x2cbb5
leaq 0x7a1c8(%rip), %rsi     # 0xa6431
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x4d6(%rbp)
jmp 0x2c27a
movb -0x4d6(%rbp), %al
testb $0x1, %al
jne 0x2c289
jmp 0x2c397
leaq -0x148(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x267a0
jmp 0x2c29b
leaq 0x7c0d2(%rip), %rsi     # 0xa8374
leaq -0x148(%rbp), %rdi
callq 0x25b80
movb %al, -0x4d7(%rbp)
jmp 0x2c2b6
movb -0x4d7(%rbp), %al
testb $0x1, %al
jne 0x2c2c2
jmp 0x2c317
leaq -0x168(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c2d4
leaq -0x168(%rbp), %rdi
callq 0xc3e0
leaq 0x7a0b1(%rip), %rsi     # 0xa6398
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c2f2
jmp 0x2c386
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x148(%rbp), %rdi
callq 0xc3e0
jmp 0x2d69c
leaq 0x7a8a0(%rip), %rsi     # 0xa6bbe
leaq -0x148(%rbp), %rdi
callq 0x25b80
movb %al, -0x4d8(%rbp)
jmp 0x2c332
movb -0x4d8(%rbp), %al
testb $0x1, %al
jne 0x2c33e
jmp 0x2c370
leaq -0x188(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c350
leaq -0x188(%rbp), %rdi
callq 0xc3e0
leaq 0x7a043(%rip), %rsi     # 0xa63a6
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c36e
jmp 0x2c384
leaq 0x7a021(%rip), %rsi     # 0xa6398
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c382
jmp 0x2c384
jmp 0x2c386
leaq -0x148(%rbp), %rdi
callq 0xc3e0
jmp 0x2cbb3
leaq 0x7a089(%rip), %rsi     # 0xa6427
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x4d9(%rbp)
jmp 0x2c3af
movb -0x4d9(%rbp), %al
testb $0x1, %al
jne 0x2c3be
jmp 0x2c4cc
leaq -0x1a8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x267a0
jmp 0x2c3d0
leaq 0x7bf9d(%rip), %rsi     # 0xa8374
leaq -0x1a8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4da(%rbp)
jmp 0x2c3eb
movb -0x4da(%rbp), %al
testb $0x1, %al
jne 0x2c3f7
jmp 0x2c44c
leaq -0x1c8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c409
leaq -0x1c8(%rbp), %rdi
callq 0xc3e0
leaq 0x79f97(%rip), %rsi     # 0xa63b3
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c427
jmp 0x2c4bb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x1a8(%rbp), %rdi
callq 0xc3e0
jmp 0x2d69c
leaq 0x7a76b(%rip), %rsi     # 0xa6bbe
leaq -0x1a8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4db(%rbp)
jmp 0x2c467
movb -0x4db(%rbp), %al
testb $0x1, %al
jne 0x2c473
jmp 0x2c4a5
leaq -0x1e8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c485
leaq -0x1e8(%rbp), %rdi
callq 0xc3e0
leaq 0x79f26(%rip), %rsi     # 0xa63be
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c4a3
jmp 0x2c4b9
leaq 0x79f07(%rip), %rsi     # 0xa63b3
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c4b7
jmp 0x2c4b9
jmp 0x2c4bb
leaq -0x1a8(%rbp), %rdi
callq 0xc3e0
jmp 0x2cbb1
leaq 0x7bea1(%rip), %rsi     # 0xa8374
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x4dc(%rbp)
jmp 0x2c4e4
movb -0x4dc(%rbp), %al
testb $0x1, %al
jne 0x2c4f3
jmp 0x2c718
leaq -0x208(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x267a0
jmp 0x2c505
leaq 0x7a9eb(%rip), %rsi     # 0xa6ef7
leaq -0x208(%rbp), %rdi
callq 0x25b80
movb %al, -0x4dd(%rbp)
jmp 0x2c520
movb -0x4dd(%rbp), %al
testb $0x1, %al
jne 0x2c52c
jmp 0x2c581
leaq -0x228(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c53e
leaq -0x228(%rbp), %rdi
callq 0xc3e0
leaq 0x79e77(%rip), %rsi     # 0xa63c8
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c55c
jmp 0x2c707
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x208(%rbp), %rdi
callq 0xc3e0
jmp 0x2d69c
leaq 0x7bf14(%rip), %rsi     # 0xa849c
leaq -0x208(%rbp), %rdi
callq 0x25b80
movb %al, -0x4de(%rbp)
jmp 0x2c59c
movb -0x4de(%rbp), %al
testb $0x1, %al
jne 0x2c5a8
jmp 0x2c5dd
leaq -0x248(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c5ba
leaq -0x248(%rbp), %rdi
callq 0xc3e0
leaq 0x79e07(%rip), %rsi     # 0xa63d4
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c5d8
jmp 0x2c705
leaq 0x79e43(%rip), %rsi     # 0xa6427
leaq -0x208(%rbp), %rdi
callq 0x25b80
movb %al, -0x4df(%rbp)
jmp 0x2c5f8
movb -0x4df(%rbp), %al
testb $0x1, %al
jne 0x2c604
jmp 0x2c639
leaq -0x268(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c616
leaq -0x268(%rbp), %rdi
callq 0xc3e0
leaq 0x79db5(%rip), %rsi     # 0xa63de
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c634
jmp 0x2c703
leaq 0x79df1(%rip), %rsi     # 0xa6431
leaq -0x208(%rbp), %rdi
callq 0x25b80
movb %al, -0x4e0(%rbp)
jmp 0x2c654
movb -0x4e0(%rbp), %al
testb $0x1, %al
jne 0x2c660
jmp 0x2c692
leaq -0x288(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c672
leaq -0x288(%rbp), %rdi
callq 0xc3e0
leaq 0x79d64(%rip), %rsi     # 0xa63e9
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c690
jmp 0x2c701
leaq 0x79db1(%rip), %rsi     # 0xa644a
leaq -0x208(%rbp), %rdi
callq 0x25b80
movb %al, -0x4e1(%rbp)
jmp 0x2c6ad
movb -0x4e1(%rbp), %al
testb $0x1, %al
jne 0x2c6b9
jmp 0x2c6eb
leaq -0x2a8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c6cb
leaq -0x2a8(%rbp), %rdi
callq 0xc3e0
leaq 0x79d19(%rip), %rsi     # 0xa63f7
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c6e9
jmp 0x2c6ff
leaq 0x79d05(%rip), %rsi     # 0xa63f7
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c6fd
jmp 0x2c6ff
jmp 0x2c701
jmp 0x2c703
jmp 0x2c705
jmp 0x2c707
leaq -0x208(%rbp), %rdi
callq 0xc3e0
jmp 0x2cbaf
leaq 0x7a49f(%rip), %rsi     # 0xa6bbe
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x4e2(%rbp)
jmp 0x2c730
movb -0x4e2(%rbp), %al
testb $0x1, %al
jne 0x2c73f
jmp 0x2ca20
leaq -0x2c8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x267a0
jmp 0x2c751
leaq 0x7a79f(%rip), %rsi     # 0xa6ef7
leaq -0x2c8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4e3(%rbp)
jmp 0x2c76c
movb -0x4e3(%rbp), %al
testb $0x1, %al
jne 0x2c778
jmp 0x2c7cd
leaq -0x2e8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c78a
leaq -0x2e8(%rbp), %rdi
callq 0xc3e0
leaq 0x79c66(%rip), %rsi     # 0xa6403
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c7a8
jmp 0x2ca0f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x2c8(%rbp), %rdi
callq 0xc3e0
jmp 0x2d69c
leaq 0x79c40(%rip), %rsi     # 0xa6414
leaq -0x2c8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4e4(%rbp)
jmp 0x2c7e8
movb -0x4e4(%rbp), %al
testb $0x1, %al
jne 0x2c7f4
jmp 0x2c829
leaq -0x308(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c806
leaq -0x308(%rbp), %rdi
callq 0xc3e0
leaq 0x79bf5(%rip), %rsi     # 0xa640e
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c824
jmp 0x2ca0d
leaq 0x7bc6c(%rip), %rsi     # 0xa849c
leaq -0x2c8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4e5(%rbp)
jmp 0x2c844
movb -0x4e5(%rbp), %al
testb $0x1, %al
jne 0x2c850
jmp 0x2c885
leaq -0x328(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c862
leaq -0x328(%rbp), %rdi
callq 0xc3e0
leaq 0x79ba3(%rip), %rsi     # 0xa6418
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c880
jmp 0x2ca0b
leaq 0x79b9b(%rip), %rsi     # 0xa6427
leaq -0x2c8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4e6(%rbp)
jmp 0x2c8a0
movb -0x4e6(%rbp), %al
testb $0x1, %al
jne 0x2c8ac
jmp 0x2c8e1
leaq -0x348(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c8be
leaq -0x348(%rbp), %rdi
callq 0xc3e0
leaq 0x79b50(%rip), %rsi     # 0xa6421
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c8dc
jmp 0x2ca09
leaq 0x79b49(%rip), %rsi     # 0xa6431
leaq -0x2c8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4e7(%rbp)
jmp 0x2c8fc
movb -0x4e7(%rbp), %al
testb $0x1, %al
jne 0x2c908
jmp 0x2c93d
leaq -0x368(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c91a
leaq -0x368(%rbp), %rdi
callq 0xc3e0
leaq 0x79afe(%rip), %rsi     # 0xa642b
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c938
jmp 0x2ca07
leaq 0x79afa(%rip), %rsi     # 0xa643e
leaq -0x2c8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4e8(%rbp)
jmp 0x2c958
movb -0x4e8(%rbp), %al
testb $0x1, %al
jne 0x2c964
jmp 0x2c996
leaq -0x388(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c976
leaq -0x388(%rbp), %rdi
callq 0xc3e0
leaq 0x79aaf(%rip), %rsi     # 0xa6438
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c994
jmp 0x2ca05
leaq 0x79aad(%rip), %rsi     # 0xa644a
leaq -0x2c8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4e9(%rbp)
jmp 0x2c9b1
movb -0x4e9(%rbp), %al
testb $0x1, %al
jne 0x2c9bd
jmp 0x2c9ef
leaq -0x3a8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2c9cf
leaq -0x3a8(%rbp), %rdi
callq 0xc3e0
leaq 0x79a62(%rip), %rsi     # 0xa6444
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2c9ed
jmp 0x2ca03
leaq 0x79a4e(%rip), %rsi     # 0xa6444
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2ca01
jmp 0x2ca03
jmp 0x2ca05
jmp 0x2ca07
jmp 0x2ca09
jmp 0x2ca0b
jmp 0x2ca0d
jmp 0x2ca0f
leaq -0x2c8(%rbp), %rdi
callq 0xc3e0
jmp 0x2cbad
leaq 0x79a28(%rip), %rsi     # 0xa644f
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x4ea(%rbp)
jmp 0x2ca38
movb -0x4ea(%rbp), %al
testb $0x1, %al
jne 0x2ca47
jmp 0x2cbab
leaq -0x3c8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x267a0
jmp 0x2ca59
leaq 0x7c3c9(%rip), %rsi     # 0xa8e29
leaq -0x3c8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4eb(%rbp)
jmp 0x2ca74
movb -0x4eb(%rbp), %al
testb $0x1, %al
jne 0x2ca80
jmp 0x2cad5
leaq -0x3e8(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2ca92
leaq -0x3e8(%rbp), %rdi
callq 0xc3e0
leaq 0x799b1(%rip), %rsi     # 0xa6456
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2cab0
jmp 0x2cb9f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x3c8(%rbp), %rdi
callq 0xc3e0
jmp 0x2d69c
leaq 0x7ceae(%rip), %rsi     # 0xa998a
leaq -0x3c8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4ec(%rbp)
jmp 0x2caf0
movb -0x4ec(%rbp), %al
testb $0x1, %al
jne 0x2cafc
jmp 0x2cb2e
leaq -0x408(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2cb0e
leaq -0x408(%rbp), %rdi
callq 0xc3e0
leaq 0x79943(%rip), %rsi     # 0xa6464
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2cb2c
jmp 0x2cb9d
leaq 0x79945(%rip), %rsi     # 0xa647a
leaq -0x3c8(%rbp), %rdi
callq 0x25b80
movb %al, -0x4ed(%rbp)
jmp 0x2cb49
movb -0x4ed(%rbp), %al
testb $0x1, %al
jne 0x2cb55
jmp 0x2cb87
leaq -0x428(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x25b00
jmp 0x2cb67
leaq -0x428(%rbp), %rdi
callq 0xc3e0
leaq 0x798f9(%rip), %rsi     # 0xa6473
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2cb85
jmp 0x2cb9b
leaq 0x798c8(%rip), %rsi     # 0xa6456
leaq -0x78(%rbp), %rdi
callq 0xc920
jmp 0x2cb99
jmp 0x2cb9b
jmp 0x2cb9d
jmp 0x2cb9f
leaq -0x3c8(%rbp), %rdi
callq 0xc3e0
jmp 0x2cbad
jmp 0x2cbaf
jmp 0x2cbb1
jmp 0x2cbb3
jmp 0x2cbb5
jmp 0x2cbb7
movq $0x0, -0x430(%rbp)
leaq 0x797ff(%rip), %rsi     # 0xa63c8
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x4ee(%rbp)
jmp 0x2cbda
movb -0x4ee(%rbp), %al
testb $0x1, %al
jne 0x2cbe6
jmp 0x2cc3f
movl $0x68, %edi
callq 0xc690
movq %rax, -0x4f8(%rbp)
jmp 0x2cbf9
movq -0x4f8(%rbp), %rdi
callq 0x2e450
jmp 0x2cc07
movq -0x4f8(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d44d
movq -0x4f8(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x68, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x7978e(%rip), %rsi     # 0xa63d4
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x4f9(%rbp)
jmp 0x2cc57
movb -0x4f9(%rbp), %al
testb $0x1, %al
jne 0x2cc87
jmp 0x2cc63
leaq 0x7974a(%rip), %rsi     # 0xa63b4
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x4fa(%rbp)
jmp 0x2cc7b
movb -0x4fa(%rbp), %al
testb $0x1, %al
jne 0x2cc87
jmp 0x2cce0
movl $0x88, %edi
callq 0xc690
movq %rax, -0x508(%rbp)
jmp 0x2cc9a
movq -0x508(%rbp), %rdi
callq 0x2e530
jmp 0x2cca8
movq -0x508(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d44b
movq -0x508(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x88, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x7971c(%rip), %rsi     # 0xa6403
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x509(%rbp)
jmp 0x2ccf8
movb -0x509(%rbp), %al
testb $0x1, %al
jne 0x2cd04
jmp 0x2cd5d
movl $0x68, %edi
callq 0xc690
movq %rax, -0x518(%rbp)
jmp 0x2cd17
movq -0x518(%rbp), %rdi
callq 0x2e620
jmp 0x2cd25
movq -0x518(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d449
movq -0x518(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x68, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x796aa(%rip), %rsi     # 0xa640e
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x519(%rbp)
jmp 0x2cd75
movb -0x519(%rbp), %al
testb $0x1, %al
jne 0x2cd81
jmp 0x2cdda
movl $0x80, %edi
callq 0xc690
movq %rax, -0x528(%rbp)
jmp 0x2cd94
movq -0x528(%rbp), %rdi
callq 0x2e700
jmp 0x2cda2
movq -0x528(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d447
movq -0x528(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x80, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x79637(%rip), %rsi     # 0xa6418
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x529(%rbp)
jmp 0x2cdf2
movb -0x529(%rbp), %al
testb $0x1, %al
jne 0x2ce22
jmp 0x2cdfe
leaq 0x795ba(%rip), %rsi     # 0xa63bf
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x52a(%rbp)
jmp 0x2ce16
movb -0x52a(%rbp), %al
testb $0x1, %al
jne 0x2ce22
jmp 0x2ce7b
movl $0x88, %edi
callq 0xc690
movq %rax, -0x538(%rbp)
jmp 0x2ce35
movq -0x538(%rbp), %rdi
callq 0x2e7f0
jmp 0x2ce43
movq -0x538(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d445
movq -0x538(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x88, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x795fe(%rip), %rsi     # 0xa6480
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x539(%rbp)
jmp 0x2ce93
movb -0x539(%rbp), %al
testb $0x1, %al
jne 0x2ce9f
jmp 0x2cef8
movl $0x88, %edi
callq 0xc690
movq %rax, -0x548(%rbp)
jmp 0x2ceb2
movq -0x548(%rbp), %rdi
callq 0x71950
jmp 0x2cec0
movq -0x548(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d443
movq -0x548(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x88, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x7958c(%rip), %rsi     # 0xa648b
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x549(%rbp)
jmp 0x2cf10
movb -0x549(%rbp), %al
testb $0x1, %al
jne 0x2cf1c
jmp 0x2cf75
movl $0x88, %edi
callq 0xc690
movq %rax, -0x558(%rbp)
jmp 0x2cf2f
movq -0x558(%rbp), %rdi
callq 0x720c0
jmp 0x2cf3d
movq -0x558(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d441
movq -0x558(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x88, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x79519(%rip), %rsi     # 0xa6495
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x559(%rbp)
jmp 0x2cf8d
movb -0x559(%rbp), %al
testb $0x1, %al
jne 0x2cfbd
jmp 0x2cf99
leaq 0x794fb(%rip), %rsi     # 0xa649b
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x55a(%rbp)
jmp 0x2cfb1
movb -0x55a(%rbp), %al
testb $0x1, %al
jne 0x2cfbd
jmp 0x2d016
movl $0x68, %edi
callq 0xc690
movq %rax, -0x568(%rbp)
jmp 0x2cfd0
movq -0x568(%rbp), %rdi
callq 0x63c60
jmp 0x2cfde
movq -0x568(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d43f
movq -0x568(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x68, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x7b8f3(%rip), %rsi     # 0xa8910
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x569(%rbp)
jmp 0x2d02e
movb -0x569(%rbp), %al
testb $0x1, %al
jne 0x2d05e
jmp 0x2d03a
leaq 0x792a3(%rip), %rsi     # 0xa62e4
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x56a(%rbp)
jmp 0x2d052
movb -0x56a(%rbp), %al
testb $0x1, %al
jne 0x2d05e
jmp 0x2d0b7
movl $0xc0, %edi
callq 0xc690
movq %rax, -0x578(%rbp)
jmp 0x2d071
movq -0x578(%rbp), %rdi
callq 0x78680
jmp 0x2d07f
movq -0x578(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d43d
movq -0x578(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0xc0, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x793e1(%rip), %rsi     # 0xa649f
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x579(%rbp)
jmp 0x2d0cf
movb -0x579(%rbp), %al
testb $0x1, %al
jne 0x2d0db
jmp 0x2d134
movl $0x98, %edi
callq 0xc690
movq %rax, -0x588(%rbp)
jmp 0x2d0ee
movq -0x588(%rbp), %rdi
callq 0x30410
jmp 0x2d0fc
movq -0x588(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d43b
movq -0x588(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x98, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x7933f(%rip), %rsi     # 0xa647a
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x589(%rbp)
jmp 0x2d14c
movb -0x589(%rbp), %al
testb $0x1, %al
jne 0x2d158
jmp 0x2d1b1
movl $0xc8, %edi
callq 0xc690
movq %rax, -0x598(%rbp)
jmp 0x2d16b
movq -0x598(%rbp), %rdi
callq 0x32af0
jmp 0x2d179
movq -0x598(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d439
movq -0x598(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0xc8, %esi
callq 0xc6a0
jmp 0x2d69c
leaq 0x7929e(%rip), %rsi     # 0xa6456
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x599(%rbp)
jmp 0x2d1c9
movb -0x599(%rbp), %al
testb $0x1, %al
jne 0x2d1d5
jmp 0x2d22e
movl $0x2a8, %edi            # imm = 0x2A8
callq 0xc690
movq %rax, -0x5a8(%rbp)
jmp 0x2d1e8
movq -0x5a8(%rbp), %rdi
callq 0x7e790
jmp 0x2d1f6
movq -0x5a8(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d437
movq -0x5a8(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x2a8, %esi            # imm = 0x2A8
callq 0xc6a0
jmp 0x2d69c
leaq 0x7922f(%rip), %rsi     # 0xa6464
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x5a9(%rbp)
jmp 0x2d246
movb -0x5a9(%rbp), %al
testb $0x1, %al
jne 0x2d252
jmp 0x2d2ab
movl $0x280, %edi            # imm = 0x280
callq 0xc690
movq %rax, -0x5b8(%rbp)
jmp 0x2d265
movq -0x5b8(%rbp), %rdi
callq 0x80dc0
jmp 0x2d273
movq -0x5b8(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d435
movq -0x5b8(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x280, %esi            # imm = 0x280
callq 0xc6a0
jmp 0x2d69c
leaq 0x791c1(%rip), %rsi     # 0xa6473
leaq -0x78(%rbp), %rdi
callq 0x25b80
movb %al, -0x5b9(%rbp)
jmp 0x2d2c3
movb -0x5b9(%rbp), %al
testb $0x1, %al
jne 0x2d2cf
jmp 0x2d328
movl $0x140, %edi            # imm = 0x140
callq 0xc690
movq %rax, -0x5c8(%rbp)
jmp 0x2d2e2
movq -0x5c8(%rbp), %rdi
callq 0x8cae0
jmp 0x2d2f0
movq -0x5c8(%rbp), %rax
movq %rax, -0x430(%rbp)
jmp 0x2d433
movq -0x5c8(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
movl $0x140, %esi            # imm = 0x140
callq 0xc6a0
jmp 0x2d69c
jmp 0x2d32a
leaq 0xa7377(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e8e0
movq %rax, -0x5d0(%rbp)
jmp 0x2d342
movq -0x5d0(%rbp), %rax
cmpq $0x0, %rax
je 0x2d42d
leaq 0xa734e(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e900
jmp 0x2d364
leaq 0xa733d(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e8e0
movq %rax, -0x5d8(%rbp)
jmp 0x2d37c
movq -0x5d8(%rbp), %rdi
leaq 0x7911e(%rip), %rsi     # 0xa64a8
callq 0xc670
movq %rax, -0x5e0(%rbp)
jmp 0x2d398
movq -0x5e0(%rbp), %rdi
leaq 0x7910f(%rip), %rsi     # 0xa64b5
callq 0xc670
movq %rax, -0x5e8(%rbp)
jmp 0x2d3b4
movq -0x5e8(%rbp), %rdi
leaq 0x79103(%rip), %rsi     # 0xa64c5
callq 0xc670
movq %rax, -0x5f0(%rbp)
jmp 0x2d3d0
movq -0x5f0(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0xc5b0
movq %rax, -0x5f8(%rbp)
jmp 0x2d3e9
movq -0x5f8(%rbp), %rdi
leaq 0x7afdc(%rip), %rsi     # 0xa83d3
callq 0xc670
movq %rax, -0x600(%rbp)
jmp 0x2d405
movq -0x600(%rbp), %rdi
movq 0xa6bad(%rip), %rsi     # 0xd3fc0
callq 0xc6d0
jmp 0x2d41a
leaq 0xa7287(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x2e920
jmp 0x2d42b
jmp 0x2d42d
jmp 0x2d42f
jmp 0x2d431
jmp 0x2d433
jmp 0x2d435
jmp 0x2d437
jmp 0x2d439
jmp 0x2d43b
jmp 0x2d43d
jmp 0x2d43f
jmp 0x2d441
jmp 0x2d443
jmp 0x2d445
jmp 0x2d447
jmp 0x2d449
jmp 0x2d44b
jmp 0x2d44d
cmpq $0x0, -0x430(%rbp)
jne 0x2d46e
movq $0x0, -0x8(%rbp)
movl $0x1, -0x434(%rbp)
jmp 0x2d67d
movq -0x430(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x2e940
jmp 0x2d480
movq -0x430(%rbp), %rax
movq %rax, -0x608(%rbp)
leaq -0x458(%rbp), %rdi
leaq -0x58(%rbp), %rsi
callq 0x2e970
jmp 0x2d4a0
leaq -0x458(%rbp), %rdi
callq 0xc260
movq -0x608(%rbp), %rdi
movq %rax, %rsi
movq -0x28(%rbp), %rdx
movq -0x30(%rbp), %rcx
movq (%rdi), %rax
movq 0x18(%rax), %rax
callq *%rax
movb %al, -0x609(%rbp)
jmp 0x2d4cf
movb -0x609(%rbp), %al
xorb $-0x1, %al
movb %al, -0x60a(%rbp)
leaq -0x458(%rbp), %rdi
callq 0xc3e0
movb -0x60a(%rbp), %al
testb $0x1, %al
jne 0x2d4f5
jmp 0x2d54d
movq -0x430(%rbp), %rax
movq %rax, -0x618(%rbp)
cmpq $0x0, %rax
je 0x2d516
movq -0x618(%rbp), %rdi
movq (%rdi), %rax
callq *0x8(%rax)
movq $0x0, -0x8(%rbp)
movl $0x1, -0x434(%rbp)
jmp 0x2d67d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x458(%rbp), %rdi
callq 0xc3e0
jmp 0x2d69c
movq -0x18(%rbp), %rsi
leaq 0x78e15(%rip), %rdx     # 0xa636d
leaq -0x4b0(%rbp), %rdi
callq 0x2d6c0
jmp 0x2d566
leaq -0x490(%rbp), %rdi
leaq -0x4b0(%rbp), %rsi
leaq -0x430(%rbp), %rdx
callq 0x2e9e0
jmp 0x2d582
movq -0x4c8(%rbp), %rdi
leaq -0x490(%rbp), %rsi
callq 0x2e9a0
movb %dl, -0x621(%rbp)
movq %rax, -0x620(%rbp)
jmp 0x2d5a4
movb -0x621(%rbp), %al
movq -0x620(%rbp), %rcx
movq %rcx, -0x4c0(%rbp)
movb %al, -0x4b8(%rbp)
movq -0x4c0(%rbp), %rax
movq %rax, -0x468(%rbp)
movb -0x4b8(%rbp), %al
movb %al, -0x460(%rbp)
leaq -0x490(%rbp), %rdi
callq 0x273e0
leaq -0x4b0(%rbp), %rdi
callq 0xc3e0
testb $0x1, -0x460(%rbp)
jne 0x2d668
movq -0x430(%rbp), %rax
movq %rax, -0x630(%rbp)
cmpq $0x0, %rax
je 0x2d61a
movq -0x630(%rbp), %rdi
movq (%rdi), %rax
callq *0x8(%rax)
movq $0x0, -0x8(%rbp)
movl $0x1, -0x434(%rbp)
jmp 0x2d67d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
jmp 0x2d65a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x80(%rbp)
movl %eax, -0x84(%rbp)
leaq -0x490(%rbp), %rdi
callq 0x273e0
leaq -0x4b0(%rbp), %rdi
callq 0xc3e0
jmp 0x2d69c
movq -0x430(%rbp), %rax
movq %rax, -0x8(%rbp)
movl $0x1, -0x434(%rbp)
leaq -0x78(%rbp), %rdi
callq 0xc3e0
leaq -0x58(%rbp), %rdi
callq 0x25c90
movq -0x8(%rbp), %rax
addq $0x630, %rsp            # imm = 0x630
popq %rbp
retq
leaq -0x78(%rbp), %rdi
callq 0xc3e0
leaq -0x58(%rbp), %rdi
callq 0x25c90
movq -0x80(%rbp), %rdi
callq 0xcba0
nopw (%rax,%rax)