// File: /workspace/github_c_makefile_star2_O3/deplinenoise[P]tundra/src/InspectMain.cpp
// Function: main
int main(int argc, char* argv[])
{
  MemoryMappedFile f;

  const char* fn = argc >=2 ? argv[1] : ".tundra2.dag";

  MmapFileInit(&f);
  MmapFileMap(&f, fn);

  if (MmapFileValid(&f))
  {
    const char* suffix = strrchr(fn, '.');

    if (0 == strcmp(suffix, ".dag"))
    {
      const DagData* data = (const DagData*) f.m_Address;
      if (data->m_MagicNumber == DagData::MagicNumber)
      {
        DumpDag(data);
      }
      else
      {
        fprintf(stderr, "%s: bad magic number\n", fn);
      }
    }
    else if (0 == strcmp(suffix, ".state"))
    {
      const StateData* data = (const StateData*) f.m_Address;
      if (data->m_MagicNumber == StateData::MagicNumber)
      {
        DumpState(data);
      }
      else
      {
        fprintf(stderr, "%s: bad magic number\n", fn);
      }
    }
    else if (0 == strcmp(suffix, ".scancache"))
    {
      const ScanData* data = (const ScanData*) f.m_Address;
      if (data->m_MagicNumber == ScanData::MagicNumber)
      {
        DumpScanCache(data);
      }
      else
      {
        fprintf(stderr, "%s: bad magic number\n", fn);
      }
    }
    else if (0 == strcmp(suffix, ".digestcache"))
    {
      const DigestCacheState* data = (const DigestCacheState*) f.m_Address;
      if (data->m_MagicNumber == DigestCacheState::MagicNumber)
      {
        DumpDigestCache(data);
      }
      else
      {
        fprintf(stderr, "%s: bad magic number\n", fn);
      }
    }
    else
    {
      fprintf(stderr, "%s: unknown file type\n", fn);
    }
  }
  else
  {
    fprintf(stderr, "%s: couldn't mmap file\n", fn);
  }

  MmapFileUnmap(&f);
  return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x78, %rsp
cmpl $0x2, %edi
jl 0x2a05
movq 0x8(%rsi), %rbx
jmp 0x2a0c
leaq 0x115f8(%rip), %rbx     # 0x14004
leaq 0x58(%rsp), %r14
movq %r14, %rdi
callq 0x3d34
movq %r14, %rdi
movq %rbx, %rsi
callq 0x3ddb
movq (%r14), %rbp
testq %rbp, %rbp
je 0x39a7
movq %rbx, %rdi
movl $0x2e, %esi
callq 0x23a0
movq %rax, %r14
leaq 0x115c5(%rip), %rsi     # 0x1400c
movq %rax, %rdi
callq 0x24a0
testl %eax, %eax
movq %rbp, (%rsp)
je 0x2bd8
leaq 0x130bf(%rip), %rsi     # 0x15b21
movq %r14, %rdi
callq 0x24a0
testl %eax, %eax
je 0x3678
leaq 0x130ed(%rip), %rsi     # 0x15b66
movq %r14, %rdi
callq 0x24a0
testl %eax, %eax
je 0x3838
leaq 0x13129(%rip), %rsi     # 0x15bb9
movq %r14, %rdi
callq 0x24a0
testl %eax, %eax
jne 0x39f0
cmpl $0x6a683db8, (%rbp)     # imm = 0x6A683DB8
jne 0x39ba
movl 0x4(%rbp), %esi
leaq 0x1193a(%rip), %rdi     # 0x143f1
xorl %eax, %eax
callq 0x2060
movslq 0x8(%rbp), %rax
testq %rax, %rax
leaq 0x8(%rax,%rbp), %r13
cmoveq %rax, %r13
movslq 0x4(%rbp), %rax
testq %rax, %rax
je 0x39d5
shlq $0x4, %rax
leaq (%rax,%rax,2), %r12
leaq 0x14(%r13), %rbx
addq $0x24, %r13
leaq 0x198be(%rip), %r14     # 0x1c3b0
leaq 0x11975(%rip), %r15     # 0x1446e
movslq 0x10(%rbx), %rax
leaq (%rax,%r13), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
leaq 0x118f4(%rip), %rdi     # 0x14403
xorl %eax, %eax
callq 0x2060
movl -0x4(%rbx), %esi
leaq 0x118f8(%rip), %rdi     # 0x14418
xorl %eax, %eax
callq 0x2060
leaq 0x30(%rsp), %rbp
movq %rbp, %rdi
movq %rbx, %rsi
callq 0x3cc3
leaq 0x118f1(%rip), %rdi     # 0x1442f
movq %rbp, %rsi
xorl %eax, %eax
callq 0x2060
movq -0xc(%rbx), %rax
movq %rax, 0x20(%rsp)
leaq 0x20(%rsp), %rbp
movq %rbp, %rdi
callq 0x2250
movl $0x80, %esi
movq %r14, %rdi
movq %r15, %rdx
movq %rax, %rcx
callq 0x22a0
leaq 0x118cc(%rip), %rdi     # 0x14444
movq %r14, %rsi
xorl %eax, %eax
callq 0x2060
movq -0x14(%rbx), %rax
movq %rax, 0x20(%rsp)
movq %rbp, %rdi
callq 0x2250
movl $0x80, %esi
movq %r14, %rdi
movq %r15, %rdx
movq %rax, %rcx
callq 0x22a0
leaq 0x118ac(%rip), %rdi     # 0x14459
movq %r14, %rsi
xorl %eax, %eax
callq 0x2060
movl $0xa, %edi
callq 0x2490
addq $0x30, %rbx
addq $0x30, %r13
addq $-0x30, %r12
jne 0x2af9
jmp 0x39d5
cmpl $0x6d992313, (%rbp)     # imm = 0x6D992313
jne 0x39ba
movslq 0x4(%rbp), %rbx
leaq 0x11466(%rip), %rdi     # 0x14056
movl $0x6d992313, %esi       # imm = 0x6D992313
xorl %eax, %eax
callq 0x2060
leaq 0x11469(%rip), %rdi     # 0x1406c
movl %ebx, %esi
xorl %eax, %eax
callq 0x2060
movq %rbx, 0x10(%rsp)
testq %rbx, %rbx
jle 0x3188
leaq 0x8(%rbp), %rax
movq %rax, 0x18(%rsp)
leaq 0xc(%rbp), %rax
movq %rax, 0x28(%rsp)
leaq 0x114f8(%rip), %rbx     # 0x1412b
xorl %r14d, %r14d
leaq 0x1143f(%rip), %rdi     # 0x1407c
movl %r14d, %esi
xorl %eax, %eax
callq 0x2060
movq 0x18(%rsp), %rcx
movslq (%rcx), %rax
addq %rax, %rcx
testq %rax, %rax
cmoveq %rax, %rcx
movq %r14, %rsi
shlq $0x4, %rsi
addq %rcx, %rsi
leaq 0x30(%rsp), %rbp
movq %rbp, %rdi
callq 0x3cc3
movq 0x28(%rsp), %rcx
movslq (%rcx), %rax
leaq (%rax,%rcx), %r15
testq %rax, %rax
cmoveq %rax, %r15
leaq (%r14,%r14,8), %r13
leaq (%r15,%r13,8), %r12
leaq 0x113f4(%rip), %rdi     # 0x14086
movq %rbp, %rsi
xorl %eax, %eax
callq 0x2060
leaq 0x114b7(%rip), %rdi     # 0x1415a
xorl %eax, %eax
callq 0x2060
movl 0x44(%r15,%r13,8), %eax
testb $0x2, %al
je 0x2cc6
leaq 0x113d8(%rip), %rdi     # 0x14092
xorl %eax, %eax
callq 0x2060
movl 0x44(%r12), %eax
testb $0x1, %al
je 0x2cdd
leaq 0x113cb(%rip), %rdi     # 0x1409c
xorl %eax, %eax
callq 0x2060
movl 0x44(%r12), %eax
movq %r14, 0x8(%rsp)
testb $0x4, %al
je 0x2cf4
leaq 0x113ba(%rip), %rdi     # 0x140a7
xorl %eax, %eax
callq 0x2060
movslq (%r12), %rax
leaq (%rax,%r12), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
leaq 0x113a8(%rip), %rdi     # 0x140b2
xorl %eax, %eax
callq 0x2060
movslq 0x4(%r12), %rax
leaq (%rax,%r12), %rsi
addq $0x4, %rsi
testq %rsi, %rsi
leaq 0x113aa(%rip), %rcx     # 0x140d2
cmoveq %rcx, %rsi
testq %rax, %rax
cmoveq %rcx, %rsi
leaq 0x11387(%rip), %rdi     # 0x140c1
xorl %eax, %eax
callq 0x2060
movslq 0x8(%r12), %rax
testq %rax, %rax
leaq 0x8(%rax,%r12), %rsi
cmoveq %rax, %rsi
leaq 0x11380(%rip), %rdi     # 0x140d9
xorl %eax, %eax
callq 0x2060
movl 0xc(%r12), %esi
leaq 0x1137f(%rip), %rdi     # 0x140eb
xorl %eax, %eax
callq 0x2060
leaq 0x11383(%rip), %rdi     # 0x140fd
xorl %eax, %eax
callq 0x2060
movslq 0x14(%r12), %rax
testq %rax, %rax
leaq 0x14(%rax,%r12), %r15
cmoveq %rax, %r15
movslq 0x10(%r12), %r13
testq %r13, %r13
leaq 0x118b6(%rip), %r14     # 0x14657
je 0x2dc0
shlq $0x2, %r13
xorl %ebp, %ebp
movl (%r15,%rbp), %esi
movq %r14, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x4, %rbp
cmpq %rbp, %r13
jne 0x2da9
movl $0xa, %edi
callq 0x2490
leaq 0x1133c(%rip), %rdi     # 0x1410d
xorl %eax, %eax
callq 0x2060
movslq 0x1c(%r12), %rax
testq %rax, %rax
leaq 0x1c(%rax,%r12), %r15
cmoveq %rax, %r15
movslq 0x18(%r12), %r13
testq %r13, %r13
je 0x2e10
shlq $0x2, %r13
xorl %ebp, %ebp
movl (%r15,%rbp), %esi
movq %r14, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x4, %rbp
cmpq %rbp, %r13
jne 0x2df9
movl $0xa, %edi
callq 0x2490
leaq 0x116c9(%rip), %rdi     # 0x144ea
callq 0x2570
movslq 0x24(%r12), %rax
testq %rax, %rax
leaq 0x24(%rax,%r12), %r13
cmoveq %rax, %r13
movslq 0x20(%r12), %rax
testq %rax, %rax
leaq 0x112d4(%rip), %r14     # 0x1411a
je 0x2e80
leaq (,%rax,8), %r15
addq %r13, %r15
movq %r13, %rbp
movslq (%r13), %rax
leaq (%rax,%rbp), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movl 0x4(%r13), %edx
movq %r14, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x8, %r13
addq $0x8, %rbp
cmpq %r15, %r13
jne 0x2e56
leaq 0x116ea(%rip), %rdi     # 0x14571
callq 0x2570
movslq 0x2c(%r12), %rax
testq %rax, %rax
leaq 0x2c(%rax,%r12), %r13
cmoveq %rax, %r13
movslq 0x28(%r12), %rax
testq %rax, %rax
je 0x2edf
leaq (,%rax,8), %r15
addq %r13, %r15
movq %r13, %rbp
movslq (%r13), %rax
leaq (%rax,%rbp), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movl 0x4(%r13), %edx
movq %r14, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x8, %r13
addq $0x8, %rbp
cmpq %r15, %r13
jne 0x2eb5
leaq 0x1160e(%rip), %rdi     # 0x144f4
callq 0x2570
movslq 0x34(%r12), %rax
testq %rax, %rax
leaq 0x34(%rax,%r12), %r13
cmoveq %rax, %r13
movslq 0x30(%r12), %rax
testq %rax, %rax
je 0x2f3e
leaq (,%rax,8), %r15
addq %r13, %r15
movq %r13, %rbp
movslq (%r13), %rax
leaq (%rax,%rbp), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movl 0x4(%r13), %edx
movq %r14, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x8, %r13
addq $0x8, %rbp
cmpq %r15, %r13
jne 0x2f14
leaq 0x115be(%rip), %rdi     # 0x14503
callq 0x2570
movslq 0x3c(%r12), %rax
testq %rax, %rax
leaq 0x3c(%rax,%r12), %r15
cmoveq %rax, %r15
movslq 0x38(%r12), %rax
testq %rax, %rax
je 0x2fa1
leaq (%r15,%rax,8), %rbp
movq %r15, %r13
movslq (%r15), %rax
leaq (%rax,%r13), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movslq 0x4(%r15), %rax
testq %rax, %rax
leaq 0x4(%r13,%rax), %rdx
cmoveq %rax, %rdx
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x8, %r15
addq $0x8, %r13
cmpq %rbp, %r15
jne 0x2f6c
movslq 0x40(%r12), %rax
addq $0x40, %r12
testq %rax, %rax
sete %cl
addq %rax, %r12
sete %al
orb %cl, %al
jne 0x3160
leaq 0x1154d(%rip), %rdi     # 0x14512
callq 0x2570
movl (%r12), %eax
cmpl $0x1, %eax
leaq 0x11565(%rip), %rdi     # 0x1453d
leaq 0x1153e(%rip), %rcx     # 0x1451d
cmoveq %rcx, %rdi
testl %eax, %eax
leaq 0x11543(%rip), %rax     # 0x1452f
cmoveq %rax, %rdi
callq 0x2570
leaq 0x11554(%rip), %rdi     # 0x14550
callq 0x2570
movslq 0x8(%r12), %rax
testq %rax, %rax
leaq 0x8(%rax,%r12), %r13
cmoveq %rax, %r13
movslq 0x4(%r12), %r15
testq %r15, %r15
leaq 0x11117(%rip), %rbx     # 0x14138
je 0x3051
shlq $0x2, %r15
xorl %ebp, %ebp
movq %r13, %rsi
addq %rbp, %rsi
movslq (%r13,%rbp), %rax
addq %rax, %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x4, %rbp
cmpq %rbp, %r15
jne 0x3029
leaq 0xc(%r12), %rsi
leaq 0x30(%rsp), %r15
movq %r15, %rdi
callq 0x3cc3
leaq 0x110d8(%rip), %rdi     # 0x14142
movq %r15, %rsi
xorl %eax, %eax
callq 0x2060
cmpl $0x1, (%r12)
leaq 0x1113c(%rip), %rbp     # 0x141bc
jne 0x3160
movq %rbp, %r14
leaq 0x110c8(%rip), %rdi     # 0x14158
xorl %eax, %eax
callq 0x2060
movl 0x1c(%r12), %eax
testb $0x1, %al
je 0x30b3
leaq 0x110bc(%rip), %rdi     # 0x14163
xorl %eax, %eax
callq 0x2060
movl 0x1c(%r12), %eax
testb $0x2, %al
je 0x30ca
leaq 0x110b8(%rip), %rdi     # 0x14176
xorl %eax, %eax
callq 0x2060
movl 0x1c(%r12), %eax
testb $0x4, %al
je 0x30dc
leaq 0x110b0(%rip), %rdi     # 0x14185
xorl %eax, %eax
callq 0x2060
movl $0xa, %edi
callq 0x2490
leaq 0x11476(%rip), %rdi     # 0x14563
callq 0x2570
movslq 0x24(%r12), %rax
testq %rax, %rax
leaq 0x24(%rax,%r12), %r13
cmoveq %rax, %r13
movslq 0x20(%r12), %rax
testq %rax, %rax
leaq 0x110a6(%rip), %rbp     # 0x141b8
leaq 0x1107d(%rip), %rbx     # 0x14196
je 0x3160
leaq (,%rax,8), %r12
addq %r13, %r12
movq %r13, %r15
movslq (%r13), %rax
leaq (%r15,%rax), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
cmpb $0x0, 0x6(%r13)
movswl 0x4(%r13), %edx
movq %rbp, %rcx
cmoveq %r14, %rcx
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x8, %r13
addq $0x8, %r15
cmpq %r12, %r13
jne 0x3129
movl $0xa, %edi
callq 0x2490
movq 0x8(%rsp), %r14
incq %r14
cmpq 0x10(%rsp), %r14
movq (%rsp), %rbp
leaq 0x10fa9(%rip), %rbx     # 0x1412b
jne 0x2c36
movl 0x10(%rbp), %esi
leaq 0x1102d(%rip), %rdi     # 0x141bf
xorl %eax, %eax
callq 0x2060
movslq 0x14(%rbp), %rax
testq %rax, %rax
leaq 0x14(%rax,%rbp), %r14
cmoveq %rax, %r14
movslq 0x10(%rbp), %r15
testq %r15, %r15
je 0x31e5
shlq $0x2, %r15
leaq 0x11013(%rip), %rbx     # 0x141d0
xorl %r12d, %r12d
leaq (%r14,%r12), %rsi
movslq (%r14,%r12), %rax
addq %rax, %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x4, %r12
cmpq %r12, %r15
jne 0x31c0
movl 0x18(%rbp), %esi
leaq 0x10fed(%rip), %rdi     # 0x141dc
xorl %eax, %eax
callq 0x2060
cmpl $0x0, 0x18(%rbp)
jle 0x3261
leaq 0x1c(%rbp), %r15
leaq 0x20(%rbp), %r12
leaq 0x10fe4(%rip), %rbx     # 0x141ef
xorl %r13d, %r13d
xorl %r14d, %r14d
movslq 0x1c(%rbp), %rax
leaq (%rax,%r15), %rdx
testq %rax, %rax
cmoveq %rax, %rdx
movslq (%rdx,%r14,4), %rax
addq %r13, %rdx
addq %rax, %rdx
testq %rax, %rax
cmoveq %rax, %rdx
movslq 0x20(%rbp), %rax
leaq (%rax,%r12), %rcx
testq %rax, %rax
cmoveq %rax, %rcx
movl (%rcx,%r14,4), %ecx
movq %rbx, %rdi
movl %r14d, %esi
xorl %eax, %eax
callq 0x2060
incq %r14
movslq 0x18(%rbp), %rax
addq $0x4, %r13
cmpq %rax, %r14
jl 0x3211
movl 0x24(%rbp), %esi
leaq 0x10fa1(%rip), %rdi     # 0x1420c
xorl %eax, %eax
callq 0x2060
cmpl $0x0, 0x24(%rbp)
jle 0x32dd
leaq 0x28(%rbp), %r15
leaq 0x2c(%rbp), %r12
leaq 0x10f68(%rip), %rbx     # 0x141ef
xorl %r13d, %r13d
xorl %r14d, %r14d
movslq 0x28(%rbp), %rax
leaq (%rax,%r15), %rdx
testq %rax, %rax
cmoveq %rax, %rdx
movslq (%rdx,%r14,4), %rax
addq %r13, %rdx
addq %rax, %rdx
testq %rax, %rax
cmoveq %rax, %rdx
movslq 0x2c(%rbp), %rax
leaq (%rax,%r12), %rcx
testq %rax, %rax
cmoveq %rax, %rcx
movl (%rcx,%r14,4), %ecx
movq %rbx, %rdi
movl %r14d, %esi
xorl %eax, %eax
callq 0x2060
incq %r14
movslq 0x24(%rbp), %rax
addq $0x4, %r13
cmpq %rax, %r14
jl 0x328d
movl 0x30(%rbp), %esi
leaq 0x10f39(%rip), %rdi     # 0x14220
xorl %eax, %eax
callq 0x2060
cmpl $0x0, 0x30(%rbp)
jle 0x3359
leaq 0x34(%rbp), %r15
leaq 0x38(%rbp), %r12
leaq 0x10eec(%rip), %rbx     # 0x141ef
xorl %r13d, %r13d
xorl %r14d, %r14d
movslq 0x34(%rbp), %rax
leaq (%rax,%r15), %rdx
testq %rax, %rax
cmoveq %rax, %rdx
movslq (%rdx,%r14,4), %rax
addq %r13, %rdx
addq %rax, %rdx
testq %rax, %rax
cmoveq %rax, %rdx
movslq 0x38(%rbp), %rax
leaq (%rax,%r12), %rcx
testq %rax, %rax
cmoveq %rax, %rcx
movl (%rcx,%r14,4), %ecx
movq %rbx, %rdi
movl %r14d, %esi
xorl %eax, %eax
callq 0x2060
incq %r14
movslq 0x30(%rbp), %rax
addq $0x4, %r13
cmpq %rax, %r14
jl 0x3309
movl 0x44(%rbp), %esi
leaq 0x10ed4(%rip), %rdi     # 0x14237
xorl %eax, %eax
callq 0x2060
movl 0x48(%rbp), %esi
leaq 0x10ede(%rip), %rdi     # 0x14252
xorl %eax, %eax
callq 0x2060
movl 0x4c(%rbp), %esi
leaq 0x10ee8(%rip), %rdi     # 0x1426d
xorl %eax, %eax
callq 0x2060
leaq 0x110e7(%rip), %rdi     # 0x1447a
callq 0x2570
movslq 0x40(%rbp), %rax
testq %rax, %rax
leaq 0x40(%rax,%rbp), %r15
cmoveq %rax, %r15
movslq 0x3c(%rbp), %rax
testq %rax, %rax
je 0x3519
leaq (%rax,%rax,8), %rax
leaq (%r15,%rax,4), %rax
movq %rax, 0x8(%rsp)
leaq 0x10f12(%rip), %rbx     # 0x142db
leaq 0x11287(%rip), %r14     # 0x14657
movl (%r15), %esi
leaq 0x10eb1(%rip), %rdi     # 0x1428b
xorl %eax, %eax
callq 0x2060
movl 0x4(%r15), %esi
leaq 0x10eb5(%rip), %rdi     # 0x142a1
xorl %eax, %eax
callq 0x2060
movl 0x8(%r15), %esi
leaq 0x10e77(%rip), %rdi     # 0x14275
xorl %eax, %eax
callq 0x2060
leaq 0x10eab(%rip), %rdi     # 0x142b7
xorl %eax, %eax
callq 0x2060
movslq 0x18(%r15), %rax
testq %rax, %rax
leaq 0x18(%rax,%r15), %r13
cmoveq %rax, %r13
movslq 0x14(%r15), %r12
testq %r12, %r12
je 0x344a
shlq $0x2, %r12
xorl %ebp, %ebp
movl (%r13,%rbp), %esi
movq %r14, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x4, %rbp
cmpq %rbp, %r12
jne 0x3432
movl $0xa, %edi
callq 0x2490
leaq 0x10e6e(%rip), %rdi     # 0x142c9
xorl %eax, %eax
callq 0x2060
movslq 0x10(%r15), %rax
testq %rax, %rax
leaq 0x10(%rax,%r15), %r13
cmoveq %rax, %r13
movslq 0xc(%r15), %r12
testq %r12, %r12
je 0x3499
shlq $0x2, %r12
xorl %ebp, %ebp
movl (%r13,%rbp), %esi
movq %r14, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x4, %rbp
cmpq %rbp, %r12
jne 0x3481
movl $0xa, %edi
callq 0x2490
leaq 0x11033(%rip), %rdi     # 0x144dd
callq 0x2570
movslq 0x20(%r15), %rax
testq %rax, %rax
leaq 0x20(%rax,%r15), %r13
cmoveq %rax, %r13
movslq 0x1c(%r15), %rax
testq %rax, %rax
je 0x3500
leaq (,%rax,8), %rbp
addq %r13, %rbp
movq %r13, %r12
movslq (%r13), %rax
leaq (%r12,%rax), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movl 0x4(%r13), %edx
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x8, %r13
addq $0x8, %r12
cmpq %rbp, %r13
jne 0x34d6
movl $0xa, %edi
callq 0x2490
addq $0x24, %r15
cmpq 0x8(%rsp), %r15
jne 0x33d0
leaq 0x10f69(%rip), %rdi     # 0x14489
callq 0x2570
movq (%rsp), %rbp
movslq 0x54(%rbp), %rax
testq %rax, %rax
leaq 0x54(%rax,%rbp), %r15
cmoveq %rax, %r15
movslq 0x50(%rbp), %r12
testq %r12, %r12
je 0x358d
shlq $0x4, %r12
addq %r15, %r12
leaq 0x10d9b(%rip), %rbx     # 0x142eb
leaq 0x10daa(%rip), %r14     # 0x14301
movq %r15, %r13
movslq (%r15), %rax
leaq (%rax,%r13), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2060
movl 0x8(%r15), %esi
movq %r14, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x10, %r15
addq $0x10, %r13
cmpq %r12, %r15
jne 0x355a
leaq 0x10f07(%rip), %rdi     # 0x1449b
callq 0x2570
movslq 0x5c(%rbp), %rax
testq %rax, %rax
leaq 0x5c(%rax,%rbp), %r13
cmoveq %rax, %r13
movslq 0x58(%rbp), %rax
testq %rax, %rax
je 0x3613
shlq $0x2, %rax
leaq (%rax,%rax,4), %rbp
movq %r13, %rbx
addq $0x4, %rbx
leaq 0x30(%rsp), %r14
leaq 0x10d4a(%rip), %r15     # 0x14317
leaq 0x10d59(%rip), %r12     # 0x1432d
movq %r14, %rdi
movq %rbx, %rsi
callq 0x3cc3
movslq -0x4(%rbx), %rax
leaq (%rax,%r13), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movq %r15, %rdi
xorl %eax, %eax
callq 0x2060
movq %r12, %rdi
movq %r14, %rsi
xorl %eax, %eax
callq 0x2060
addq $0x14, %rbx
addq $0x14, %r13
addq $-0x14, %rbp
jne 0x35d4
leaq 0x10e93(%rip), %rdi     # 0x144ad
callq 0x2570
movq (%rsp), %r13
movslq 0x64(%r13), %rax
testq %rax, %rax
leaq 0x64(%rax,%r13), %r14
cmoveq %rax, %r14
movslq 0x60(%r13), %r15
testq %r15, %r15
je 0x3661
shlq $0x2, %r15
leaq 0x10cfc(%rip), %rbx     # 0x14343
xorl %r12d, %r12d
movl (%r14,%r12), %esi
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x4, %r12
cmpq %r12, %r15
jne 0x364a
movl 0x68(%r13), %esi
leaq 0x10cf1(%rip), %rdi     # 0x1435d
xorl %eax, %eax
callq 0x2060
jmp 0x39d5
cmpl $0x6d99231c, (%rbp)     # imm = 0x6D99231C
jne 0x39ba
movslq 0x4(%rbp), %rbx
leaq 0x109c6(%rip), %rdi     # 0x14056
movl $0x6d99231c, %esi       # imm = 0x6D99231C
xorl %eax, %eax
callq 0x2060
leaq 0x109c9(%rip), %rdi     # 0x1406c
movl %ebx, %esi
xorl %eax, %eax
callq 0x2060
movq %rbx, 0x8(%rsp)
testq %rbx, %rbx
jle 0x39d5
movq (%rsp), %rax
leaq 0xc(%rax), %rcx
movq %rcx, 0x10(%rsp)
addq $0x8, %rax
movq %rax, (%rsp)
leaq 0x10a64(%rip), %r13     # 0x1413a
xorl %ebp, %ebp
leaq 0x1099d(%rip), %rdi     # 0x1407c
movl %ebp, %esi
xorl %eax, %eax
callq 0x2060
movq 0x10(%rsp), %rcx
movslq (%rcx), %rax
leaq (%rax,%rcx), %r14
testq %rax, %rax
cmoveq %rax, %r14
leaq (,%rbp,8), %r15
addq %rbp, %r15
movq (%rsp), %rcx
movslq (%rcx), %rax
addq %rax, %rcx
testq %rax, %rax
cmoveq %rax, %rcx
leaq (%r14,%r15,4), %rbx
movq %rbp, %rsi
shlq $0x4, %rsi
addq %rcx, %rsi
leaq 0x30(%rsp), %r12
movq %r12, %rdi
callq 0x3cc3
leaq 0x1094d(%rip), %rdi     # 0x14086
movq %r12, %rsi
xorl %eax, %eax
callq 0x2060
leaq (%r14,%r15,4), %r14
addq $0x4, %r14
movl -0x4(%r14), %esi
leaq 0x10c20(%rip), %rdi     # 0x14376
xorl %eax, %eax
callq 0x2060
movq %r12, %rdi
movq %r14, %rsi
callq 0x3cc3
leaq 0x10c1b(%rip), %rdi     # 0x1438a
movq %r12, %rsi
xorl %eax, %eax
callq 0x2060
leaq 0x10df1(%rip), %rdi     # 0x14571
callq 0x2570
movslq 0x14(%r14), %rax
testq %rax, %rax
leaq 0x18(%rax,%rbx), %r12
cmoveq %rax, %r12
movslq 0x10(%r14), %r14
testq %r14, %r14
je 0x37ca
shlq $0x2, %r14
xorl %r15d, %r15d
leaq (%r12,%r15), %rsi
movslq (%r12,%r15), %rax
addq %rax, %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movq %r13, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x4, %r15
cmpq %r15, %r14
jne 0x37a5
leaq 0x10dab(%rip), %rdi     # 0x1457c
callq 0x2570
movslq 0x20(%rbx), %rax
testq %rax, %rax
leaq 0x20(%rax,%rbx), %r14
cmoveq %rax, %r14
movslq 0x1c(%rbx), %rbx
testq %rbx, %rbx
je 0x381b
shlq $0x2, %rbx
xorl %r15d, %r15d
leaq (%r14,%r15), %rsi
movslq (%r14,%r15), %rax
addq %rax, %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movq %r13, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x4, %r15
cmpq %r15, %rbx
jne 0x37f6
movl $0xa, %edi
callq 0x2490
incq %rbp
cmpq 0x8(%rsp), %rbp
jne 0x36d8
jmp 0x39d5
cmpl $0x6d072210, (%rbp)     # imm = 0x6D072210
jne 0x39ba
movslq 0x4(%rbp), %rbx
leaq 0x10806(%rip), %rdi     # 0x14056
movl $0x6d072210, %esi       # imm = 0x6D072210
xorl %eax, %eax
callq 0x2060
leaq 0x10b3e(%rip), %rdi     # 0x143a1
movl %ebx, %esi
xorl %eax, %eax
callq 0x2060
movq %rbx, 0x8(%rsp)
testq %rbx, %rbx
jle 0x39d5
movq (%rsp), %rax
leaq 0xc(%rax), %rcx
movq %rcx, 0x10(%rsp)
leaq 0x8(%rax), %rcx
movq %rcx, 0x18(%rsp)
addq $0x10, %rax
movq %rax, (%rsp)
leaq 0x1087b(%rip), %r12     # 0x1411a
xorl %r15d, %r15d
leaq 0x10b09(%rip), %rdi     # 0x143b2
movl %r15d, %esi
xorl %eax, %eax
callq 0x2060
movq 0x10(%rsp), %rcx
movslq (%rcx), %rax
leaq (%rax,%rcx), %rbx
testq %rax, %rax
cmoveq %rax, %rbx
movq %r15, %r13
shlq $0x4, %r13
leaq (%rbx,%r13), %rbp
movq 0x18(%rsp), %rax
movslq (%rax), %rsi
addq %rsi, %rax
testq %rsi, %rsi
cmovneq %rax, %rsi
addq %r13, %rsi
leaq 0x30(%rsp), %r14
movq %r14, %rdi
callq 0x3cc3
leaq 0x1078c(%rip), %rdi     # 0x14086
movq %r14, %rsi
xorl %eax, %eax
callq 0x2060
movq (%rsp), %rcx
movslq (%rcx), %rax
addq %rax, %rcx
testq %rax, %rax
cmoveq %rax, %rcx
movq (%rcx,%r15,8), %rsi
leaq 0x10a9d(%rip), %rdi     # 0x143bd
xorl %eax, %eax
callq 0x2060
movq (%rbx,%r13), %rsi
leaq 0x10aa6(%rip), %rdi     # 0x143d8
xorl %eax, %eax
callq 0x2060
leaq 0x10c4b(%rip), %rdi     # 0x1458b
callq 0x2570
movslq 0xc(%rbx,%r13), %rax
testq %rax, %rax
leaq 0xc(%rax,%rbp), %rbp
cmoveq %rax, %rbp
movslq 0x8(%rbx,%r13), %rax
testq %rax, %rax
je 0x3997
leaq (,%rax,8), %rbx
addq %rbp, %rbx
movq %rbp, %r13
movslq (%rbp), %rax
leaq (%rax,%r13), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
movl 0x4(%rbp), %edx
movq %r12, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x8, %rbp
addq $0x8, %r13
cmpq %rbx, %rbp
jne 0x396e
incq %r15
cmpq 0x8(%rsp), %r15
jne 0x38a2
jmp 0x39d5
movq 0x18632(%rip), %rax     # 0x1bfe0
movq (%rax), %rdi
leaq 0x10686(%rip), %rsi     # 0x1403e
jmp 0x39cb
movq 0x1861f(%rip), %rax     # 0x1bfe0
movq (%rax), %rdi
leaq 0x10646(%rip), %rsi     # 0x14011
movq %rbx, %rdx
xorl %eax, %eax
callq 0x24b0
leaq 0x58(%rsp), %rdi
callq 0x3d44
xorl %eax, %eax
addq $0x78, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x185e9(%rip), %rax     # 0x1bfe0
movq (%rax), %rdi
leaq 0x10626(%rip), %rsi     # 0x14027
jmp 0x39cb
nop