// File: /workspace/github_c_makefile_star2_O1/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 0x125f8(%rip), %rbx     # 0x15004
leaq 0x58(%rsp), %r14
movq %r14, %rdi
callq 0x3cc4
movq %r14, %rdi
movq %rbx, %rsi
callq 0x3d6b
movq (%r14), %rbp
testq %rbp, %rbp
je 0x3998
movq %rbx, %rdi
movl $0x2e, %esi
callq 0x23a0
movq %rax, %r14
leaq 0x125c5(%rip), %rsi     # 0x1500c
movq %rax, %rdi
callq 0x24a0
testl %eax, %eax
movq %rbp, (%rsp)
je 0x2bd8
leaq 0x1406f(%rip), %rsi     # 0x16ad1
movq %r14, %rdi
callq 0x24a0
testl %eax, %eax
je 0x366f
leaq 0x1409d(%rip), %rsi     # 0x16b16
movq %r14, %rdi
callq 0x24a0
testl %eax, %eax
je 0x382c
leaq 0x140d9(%rip), %rsi     # 0x16b69
movq %r14, %rdi
callq 0x24a0
testl %eax, %eax
jne 0x39e1
cmpl $0x6a683db8, (%rbp)     # imm = 0x6A683DB8
jne 0x39ab
movl 0x4(%rbp), %esi
leaq 0x1293a(%rip), %rdi     # 0x153f1
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 0x39c6
shlq $0x4, %rax
leaq (%rax,%rax,2), %r12
leaq 0x14(%r13), %rbx
addq $0x24, %r13
leaq 0x1a8be(%rip), %r14     # 0x1d3b0
leaq 0x12975(%rip), %r15     # 0x1546e
movslq 0x10(%rbx), %rax
leaq (%rax,%r13), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
leaq 0x128f4(%rip), %rdi     # 0x15403
xorl %eax, %eax
callq 0x2060
movl -0x4(%rbx), %esi
leaq 0x128f8(%rip), %rdi     # 0x15418
xorl %eax, %eax
callq 0x2060
leaq 0x30(%rsp), %rbp
movq %rbp, %rdi
movq %rbx, %rsi
callq 0x3c5b
leaq 0x128f1(%rip), %rdi     # 0x1542f
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 0x128cc(%rip), %rdi     # 0x15444
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 0x128ac(%rip), %rdi     # 0x15459
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 0x39c6
movl (%rbp), %esi
cmpl $0x6d992313, %esi       # imm = 0x6D992313
jne 0x39ab
movslq 0x4(%rbp), %rbx
leaq 0x12464(%rip), %rdi     # 0x15056
xorl %eax, %eax
callq 0x2060
leaq 0x1246c(%rip), %rdi     # 0x1506c
movl %ebx, %esi
xorl %eax, %eax
callq 0x2060
movq %rbx, 0x10(%rsp)
testq %rbx, %rbx
jle 0x317f
leaq 0x8(%rbp), %rax
movq %rax, 0x18(%rsp)
leaq 0xc(%rbp), %rax
movq %rax, 0x28(%rsp)
leaq 0x124fb(%rip), %rbx     # 0x1512b
xorl %r14d, %r14d
leaq 0x12442(%rip), %rdi     # 0x1507c
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), %r13
movq %r13, %rdi
callq 0x3c5b
movq 0x28(%rsp), %rcx
movslq (%rcx), %rax
leaq (%rax,%rcx), %r15
testq %rax, %rax
cmoveq %rax, %r15
leaq (%r14,%r14,8), %r12
leaq 0x123fb(%rip), %rdi     # 0x15086
movq %r13, %rsi
xorl %eax, %eax
callq 0x2060
leaq 0x124be(%rip), %rdi     # 0x1515a
xorl %eax, %eax
callq 0x2060
testb $0x2, 0x44(%r15,%r12,8)
je 0x2cb9
leaq 0x123e0(%rip), %rdi     # 0x15092
xorl %eax, %eax
callq 0x2060
leaq (%r15,%r12,8), %r12
testb $0x1, 0x44(%r12)
je 0x2cd3
leaq 0x123d0(%rip), %rdi     # 0x1509c
xorl %eax, %eax
callq 0x2060
movq %r14, 0x8(%rsp)
testb $0x4, 0x44(%r12)
je 0x2cee
leaq 0x123c0(%rip), %rdi     # 0x150a7
xorl %eax, %eax
callq 0x2060
movslq (%r12), %rax
leaq (%rax,%r12), %rsi
testq %rax, %rax
cmoveq %rax, %rsi
leaq 0x123ae(%rip), %rdi     # 0x150b2
xorl %eax, %eax
callq 0x2060
movslq 0x4(%r12), %rax
testq %rax, %rax
leaq 0x4(%rax,%r12), %rsi
cmoveq %rax, %rsi
testq %rsi, %rsi
leaq 0x123ac(%rip), %rax     # 0x150d2
cmoveq %rax, %rsi
leaq 0x12390(%rip), %rdi     # 0x150c1
xorl %eax, %eax
callq 0x2060
movslq 0x8(%r12), %rax
testq %rax, %rax
leaq 0x8(%rax,%r12), %rsi
cmoveq %rax, %rsi
leaq 0x12389(%rip), %rdi     # 0x150d9
xorl %eax, %eax
callq 0x2060
movl 0xc(%r12), %esi
leaq 0x12388(%rip), %rdi     # 0x150eb
xorl %eax, %eax
callq 0x2060
leaq 0x1238c(%rip), %rdi     # 0x150fd
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 0x128af(%rip), %r14     # 0x15647
je 0x2db7
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 0x2da0
movl $0xa, %edi
callq 0x2490
leaq 0x12345(%rip), %rdi     # 0x1510d
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 0x2e07
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 0x2df0
movl $0xa, %edi
callq 0x2490
leaq 0x126d2(%rip), %rdi     # 0x154ea
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 0x122dd(%rip), %r14     # 0x1511a
je 0x2e77
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 0x2e4d
leaq 0x126f3(%rip), %rdi     # 0x15571
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 0x2ed6
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 0x2eac
leaq 0x12617(%rip), %rdi     # 0x154f4
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 0x2f35
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 0x2f0b
leaq 0x125c7(%rip), %rdi     # 0x15503
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 0x2f98
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 0x2f63
movslq 0x40(%r12), %rax
addq $0x40, %r12
testq %rax, %rax
sete %cl
addq %rax, %r12
sete %al
orb %cl, %al
jne 0x3157
leaq 0x12556(%rip), %rdi     # 0x15512
callq 0x2570
movl (%r12), %eax
cmpl $0x1, %eax
leaq 0x1256e(%rip), %rdi     # 0x1553d
leaq 0x12547(%rip), %rcx     # 0x1551d
cmoveq %rcx, %rdi
testl %eax, %eax
leaq 0x1254c(%rip), %rax     # 0x1552f
cmoveq %rax, %rdi
callq 0x2570
leaq 0x1255d(%rip), %rdi     # 0x15550
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 0x12120(%rip), %rbx     # 0x15138
je 0x3048
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 0x3020
leaq 0xc(%r12), %rsi
leaq 0x30(%rsp), %r15
movq %r15, %rdi
callq 0x3c5b
leaq 0x120e1(%rip), %rdi     # 0x15142
movq %r15, %rsi
xorl %eax, %eax
callq 0x2060
cmpl $0x1, (%r12)
leaq 0x12145(%rip), %rbp     # 0x151bc
jne 0x3157
movq %rbp, %r14
leaq 0x120d1(%rip), %rdi     # 0x15158
xorl %eax, %eax
callq 0x2060
testb $0x1, 0x1c(%r12)
je 0x30a4
leaq 0x120c6(%rip), %rdi     # 0x15163
xorl %eax, %eax
callq 0x2060
testb $0x2, 0x1c(%r12)
je 0x30ba
leaq 0x120c3(%rip), %rdi     # 0x15176
xorl %eax, %eax
callq 0x2060
testb $0x4, 0x1c(%r12)
je 0x30d0
leaq 0x120bc(%rip), %rdi     # 0x15185
xorl %eax, %eax
callq 0x2060
movl $0xa, %edi
callq 0x2490
leaq 0x12482(%rip), %rdi     # 0x15563
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 0x120b2(%rip), %rcx     # 0x151b8
leaq 0x12089(%rip), %rbp     # 0x15196
je 0x3157
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 %rcx, %rbx
cmoveq %r14, %rcx
movq %rbp, %rdi
xorl %eax, %eax
callq 0x2060
movq %rbx, %rcx
addq $0x8, %r13
addq $0x8, %r15
cmpq %r12, %r13
jne 0x311d
movl $0xa, %edi
callq 0x2490
movq 0x8(%rsp), %r14
incq %r14
cmpq 0x10(%rsp), %r14
movq (%rsp), %rbp
leaq 0x11fb2(%rip), %rbx     # 0x1512b
jne 0x2c33
movl 0x10(%rbp), %esi
leaq 0x12036(%rip), %rdi     # 0x151bf
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 0x31dc
shlq $0x2, %r15
leaq 0x1201c(%rip), %rbx     # 0x151d0
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 0x31b7
movl 0x18(%rbp), %esi
leaq 0x11ff6(%rip), %rdi     # 0x151dc
xorl %eax, %eax
callq 0x2060
cmpl $0x0, 0x18(%rbp)
jle 0x3258
leaq 0x1c(%rbp), %r15
leaq 0x20(%rbp), %r12
leaq 0x11fed(%rip), %rbx     # 0x151ef
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 0x3208
movl 0x24(%rbp), %esi
leaq 0x11faa(%rip), %rdi     # 0x1520c
xorl %eax, %eax
callq 0x2060
cmpl $0x0, 0x24(%rbp)
jle 0x32d4
leaq 0x28(%rbp), %r15
leaq 0x2c(%rbp), %r12
leaq 0x11f71(%rip), %rbx     # 0x151ef
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 0x3284
movl 0x30(%rbp), %esi
leaq 0x11f42(%rip), %rdi     # 0x15220
xorl %eax, %eax
callq 0x2060
cmpl $0x0, 0x30(%rbp)
jle 0x3350
leaq 0x34(%rbp), %r15
leaq 0x38(%rbp), %r12
leaq 0x11ef5(%rip), %rbx     # 0x151ef
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 0x3300
movl 0x44(%rbp), %esi
leaq 0x11edd(%rip), %rdi     # 0x15237
xorl %eax, %eax
callq 0x2060
movl 0x48(%rbp), %esi
leaq 0x11ee7(%rip), %rdi     # 0x15252
xorl %eax, %eax
callq 0x2060
movl 0x4c(%rbp), %esi
leaq 0x11ef1(%rip), %rdi     # 0x1526d
xorl %eax, %eax
callq 0x2060
leaq 0x120f0(%rip), %rdi     # 0x1547a
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 0x3510
leaq (%rax,%rax,8), %rax
leaq (%r15,%rax,4), %rax
movq %rax, 0x8(%rsp)
leaq 0x11f1b(%rip), %rbx     # 0x152db
leaq 0x12280(%rip), %r14     # 0x15647
movl (%r15), %esi
leaq 0x11eba(%rip), %rdi     # 0x1528b
xorl %eax, %eax
callq 0x2060
movl 0x4(%r15), %esi
leaq 0x11ebe(%rip), %rdi     # 0x152a1
xorl %eax, %eax
callq 0x2060
movl 0x8(%r15), %esi
leaq 0x11e80(%rip), %rdi     # 0x15275
xorl %eax, %eax
callq 0x2060
leaq 0x11eb4(%rip), %rdi     # 0x152b7
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 0x3441
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 0x3429
movl $0xa, %edi
callq 0x2490
leaq 0x11e77(%rip), %rdi     # 0x152c9
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 0x3490
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 0x3478
movl $0xa, %edi
callq 0x2490
leaq 0x1203c(%rip), %rdi     # 0x154dd
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 0x34f7
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 0x34cd
movl $0xa, %edi
callq 0x2490
addq $0x24, %r15
cmpq 0x8(%rsp), %r15
jne 0x33c7
leaq 0x11f72(%rip), %rdi     # 0x15489
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 0x3584
shlq $0x4, %r12
addq %r15, %r12
leaq 0x11da4(%rip), %rbx     # 0x152eb
leaq 0x11db3(%rip), %r14     # 0x15301
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 0x3551
leaq 0x11f10(%rip), %rdi     # 0x1549b
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 0x360a
shlq $0x2, %rax
leaq (%rax,%rax,4), %rbp
movq %r13, %rbx
addq $0x4, %rbx
leaq 0x30(%rsp), %r14
leaq 0x11d53(%rip), %r15     # 0x15317
leaq 0x11d62(%rip), %r12     # 0x1532d
movq %r14, %rdi
movq %rbx, %rsi
callq 0x3c5b
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 0x35cb
leaq 0x11e9c(%rip), %rdi     # 0x154ad
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 0x3658
shlq $0x2, %r15
leaq 0x11d05(%rip), %rbx     # 0x15343
xorl %r12d, %r12d
movl (%r14,%r12), %esi
movq %rbx, %rdi
xorl %eax, %eax
callq 0x2060
addq $0x4, %r12
cmpq %r12, %r15
jne 0x3641
movl 0x68(%r13), %esi
leaq 0x11cfa(%rip), %rdi     # 0x1535d
xorl %eax, %eax
callq 0x2060
jmp 0x39c6
movl (%rbp), %esi
cmpl $0x6d99231c, %esi       # imm = 0x6D99231C
jne 0x39ab
movslq 0x4(%rbp), %rbx
leaq 0x119cd(%rip), %rdi     # 0x15056
xorl %eax, %eax
callq 0x2060
leaq 0x119d5(%rip), %rdi     # 0x1506c
movl %ebx, %esi
xorl %eax, %eax
callq 0x2060
movq %rbx, 0x8(%rsp)
testq %rbx, %rbx
jle 0x39c6
movq (%rsp), %rax
leaq 0xc(%rax), %rcx
movq %rcx, 0x10(%rsp)
addq $0x8, %rax
movq %rax, (%rsp)
leaq 0x11a70(%rip), %r13     # 0x1513a
xorl %ebp, %ebp
leaq 0x119a9(%rip), %rdi     # 0x1507c
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 0x3c5b
leaq 0x11959(%rip), %rdi     # 0x15086
movq %r12, %rsi
xorl %eax, %eax
callq 0x2060
leaq (%r14,%r15,4), %r14
addq $0x4, %r14
movl -0x4(%r14), %esi
leaq 0x11c2c(%rip), %rdi     # 0x15376
xorl %eax, %eax
callq 0x2060
movq %r12, %rdi
movq %r14, %rsi
callq 0x3c5b
leaq 0x11c27(%rip), %rdi     # 0x1538a
movq %r12, %rsi
xorl %eax, %eax
callq 0x2060
leaq 0x11dfd(%rip), %rdi     # 0x15571
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 0x37be
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 0x3799
leaq 0x11db7(%rip), %rdi     # 0x1557c
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 0x380f
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 0x37ea
movl $0xa, %edi
callq 0x2490
incq %rbp
cmpq 0x8(%rsp), %rbp
jne 0x36cc
jmp 0x39c6
movl (%rbp), %esi
cmpl $0x6d072210, %esi       # imm = 0x6D072210
jne 0x39ab
movslq 0x4(%rbp), %rbx
leaq 0x11810(%rip), %rdi     # 0x15056
xorl %eax, %eax
callq 0x2060
leaq 0x11b4d(%rip), %rdi     # 0x153a1
movl %ebx, %esi
xorl %eax, %eax
callq 0x2060
movq %rbx, 0x8(%rsp)
testq %rbx, %rbx
jle 0x39c6
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 0x1188a(%rip), %r12     # 0x1511a
xorl %r15d, %r15d
leaq 0x11b18(%rip), %rdi     # 0x153b2
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 0x3c5b
leaq 0x1179b(%rip), %rdi     # 0x15086
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 0x11aac(%rip), %rdi     # 0x153bd
xorl %eax, %eax
callq 0x2060
movq (%rbx,%r13), %rsi
leaq 0x11ab5(%rip), %rdi     # 0x153d8
xorl %eax, %eax
callq 0x2060
leaq 0x11c5a(%rip), %rdi     # 0x1558b
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 0x3988
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 0x395f
incq %r15
cmpq 0x8(%rsp), %r15
jne 0x3893
jmp 0x39c6
movq 0x19641(%rip), %rax     # 0x1cfe0
movq (%rax), %rdi
leaq 0x11695(%rip), %rsi     # 0x1503e
jmp 0x39bc
movq 0x1962e(%rip), %rax     # 0x1cfe0
movq (%rax), %rdi
leaq 0x11655(%rip), %rsi     # 0x15011
movq %rbx, %rdx
xorl %eax, %eax
callq 0x24b0
leaq 0x58(%rsp), %rdi
callq 0x3cd4
xorl %eax, %eax
addq $0x78, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x195f8(%rip), %rax     # 0x1cfe0
movq (%rax), %rdi
leaq 0x11635(%rip), %rsi     # 0x15027
jmp 0x39bc