// File: /workspace/github_cpp_makefile_star2_O1/Kei18[P]pibt/./src/solver/iecbs.cpp
// Function: iECBS::init()
void iECBS::init() {
  w2 = 2;
  wdists = Eigen::MatrixXf::Zero(G->getNodesNum(), G->getNodesNum());
  highwayFile = G->getMapName() + ".highway";
  std::ifstream file(highwayFile);
  if (!file) {
    std::cout << "error@iECBS::init, file "
              << highwayFile
              << " does not exist" << "\n";
    std::exit(1);
  }

  int w = G->getW();
  int x, y;
  std::string key, line;
  Node *v, *u;

  y = 0;
  while (getline(file, line)) {
    if (line.size() != w) {
      std::cout << "error@iECBS::init, width is different, "
                << "not " << line.size() << ", should be " << w << "\n";
      std::exit(1);
    }

    x = 0;
    for (auto s : line) {
      v = G->getNode(x, y);
      if (v == nullptr) {
        ++x;
        continue;
      }

      // right
      u = G->getNode(x + 1, y);
      if (u != nullptr) {
        key = std::to_string(v->getId()) + "-" + std::to_string(u->getId());
        if (s == 'r' || s == 'x' || s == 'z') {
          highway.emplace(key, 1);
        } else {
          highway.emplace(key, w2);
        }
      }

      // left
      u = G->getNode(x - 1, y);
      if (u != nullptr) {
        key = std::to_string(v->getId()) + "-" + std::to_string(u->getId());
        if (s == 'l' || s == 'y' || s == 'w') {
          highway.emplace(key, 1);
        } else {
          highway.emplace(key, w2);
        }
      }

      // up
      u = G->getNode(x, y - 1);
      if (u != nullptr) {
        key = std::to_string(v->getId()) + "-" + std::to_string(u->getId());
        if (s == 'u' || s == 'z' || s == 'w') {
          highway.emplace(key, 1);
        } else {
          highway.emplace(key, w2);
        }
      }

      // down
      u = G->getNode(x, y + 1);
      if (u != nullptr) {
        key = std::to_string(v->getId()) + "-" + std::to_string(u->getId());
        if (s == 'd' || s == 'x' || s == 'y') {
          highway.emplace(key, 1);
        } else {
          highway.emplace(key, w2);
        }
      }

      ++x;
    }
    ++y;
  }
  if (y != G->getH()) {
    std::cout << "error@iECBS::init, height is different, "
              << "not " << y + 1 << ", should be " << G->getH() << "\n";
    std::exit(1);
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x328, %rsp            # imm = 0x328
movl $0x40000000, 0xe8(%rdi) # imm = 0x40000000
movq 0x38(%rdi), %rax
movq 0x18(%rax), %rcx
subq 0x10(%rax), %rcx
shrq $0x3, %rcx
movslq %ecx, %rax
movq %rax, 0x120(%rsp)
movq %rax, 0x128(%rsp)
movl $0x0, 0x130(%rsp)
testq %rax, %rax
js 0x32aea
movq %rdi, %r12
addq $0x148, %rdi            # imm = 0x148
leaq 0x120(%rsp), %rsi
leaq 0x90(%rsp), %rdx
callq 0x359b7
movq 0x38(%r12), %rsi
movq (%rsi), %rax
leaq 0x90(%rsp), %rbx
movq %rbx, %rdi
callq *0x58(%rax)
leaq 0x18c51(%rip), %rsi     # 0x4a749
movq %rbx, %rdi
callq 0x6690
leaq 0x130(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x31b30
movq %rdx, 0x120(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x130(%rsp)
jmp 0x31b37
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq 0x120(%rsp), %r14
movq %rdx, 0x8(%r14)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xf0(%r12), %rbx
movq %rbx, %rdi
movq %r14, %rsi
callq 0x6460
movq (%r14), %rdi
cmpq %r15, %rdi
je 0x31b81
movq 0x130(%rsp), %rsi
incq %rsi
callq 0x6380
leaq 0xa0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x31ba2
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x6380
leaq 0x120(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rsi
movl $0x8, %edx
callq 0x6590
movq (%r14), %rax
movq -0x18(%rax), %rax
testb $0x5, 0x140(%rsp,%rax)
movq %r12, 0x60(%rsp)
jne 0x32b09
movq 0x38(%r12), %rdi
movq (%rdi), %rax
callq *(%rax)
movl %eax, %ecx
leaq 0xe8(%r12), %rax
movq %rax, 0xc0(%rsp)
leaq 0x90(%rsp), %rdx
leaq 0xa0(%rsp), %rax
movq %rax, (%rdx)
xorl %ebx, %ebx
movq %rbx, 0x8(%rdx)
movb %bl, 0x10(%rdx)
leaq 0xf8(%rsp), %rax
movq %rax, -0x10(%rax)
movq %rbx, -0x8(%rax)
movb %bl, (%rax)
movl %ecx, 0xdc(%rsp)
movslq %ecx, %rax
movq %rax, 0x108(%rsp)
leaq 0x110(%r12), %rax
movq %rax, 0x88(%rsp)
leaq 0x40(%rsp), %rbp
movq 0x120(%rsp), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x6350
movsbl %al, %edx
movq %r14, %rdi
leaq 0xe8(%rsp), %rsi
callq 0x6650
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
testb $0x5, 0x20(%rax,%rcx)
jne 0x329eb
movq 0xf0(%rsp), %rax
cmpq 0x108(%rsp), %rax
jne 0x32a67
testq %rax, %rax
je 0x329dc
movq 0xe8(%rsp), %rcx
addq %rcx, %rax
leal -0x1(%rbx), %edx
movl %edx, 0xe4(%rsp)
leal 0x1(%rbx), %edx
movl %edx, 0xe0(%rsp)
xorl %r13d, %r13d
movq %rbx, 0xc8(%rsp)
movq %rax, 0x110(%rsp)
movq %rcx, 0x118(%rsp)
movzbl (%rcx), %r14d
movq 0x38(%r12), %rdi
movl %r13d, %esi
movl %ebx, %edx
callq 0x1a0d6
movq %rax, 0xb0(%rsp)
cmpq $0x0, 0xb0(%rsp)
je 0x31d8d
movq 0x38(%r12), %rdi
leal 0x1(%r13), %esi
movl %esi, 0xbc(%rsp)
movl %ebx, %edx
callq 0x1a0d6
movq %rax, %r15
testq %rax, %rax
movq %r14, 0xd0(%rsp)
je 0x32048
movq 0xb0(%rsp), %rax
movl (%rax), %r14d
movl %r14d, %ebx
negl %ebx
cmovsl %r14d, %ebx
movl $0x1, %r12d
cmpl $0xa, %ebx
jb 0x31da6
movl $0x4, %r12d
movl %ebx, %eax
movl $0xd1b71759, %edx       # imm = 0xD1B71759
cmpl $0x63, %eax
jbe 0x31d9d
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x31da3
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x31da6
movl %eax, %ecx
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x31d5d
addl $-0x3, %r12d
jmp 0x31da6
incl %r13d
movl %r13d, 0xbc(%rsp)
jmp 0x329b6
addl $-0x2, %r12d
jmp 0x31da6
decl %r12d
shrl $0x1f, %r14d
leal (%r12,%r14), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %rbp
movq %rbp, %rdi
movl $0x2d, %edx
callq 0x6410
addq 0x68(%rsp), %r14
movq %r14, %rdi
movl %r12d, %esi
movl %ebx, %edx
callq 0xb762
movq %rbp, %rdi
leaq 0x1a011(%rip), %rsi     # 0x4bdf7
callq 0x6690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x31e13
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x31e19
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x60(%rsp), %r12
leaq 0x40(%rsp), %rbp
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl (%r15), %r14d
movl %r14d, %ebx
negl %ebx
cmovsl %r14d, %ebx
movl $0x1, %r15d
cmpl $0xa, %ebx
jb 0x31e98
movl $0x4, %r15d
movl %ebx, %eax
movl $0xd1b71759, %edx       # imm = 0xD1B71759
cmpl $0x63, %eax
jbe 0x31e8f
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x31e95
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x31e98
movl %eax, %ecx
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r15d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x31e5f
addl $-0x3, %r15d
jmp 0x31e98
addl $-0x2, %r15d
jmp 0x31e98
decl %r15d
shrl $0x1f, %r14d
leal (%r15,%r14), %esi
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq %rsp, %rdi
movl $0x2d, %edx
callq 0x6410
addq (%rsp), %r14
movq %r14, %rdi
movl %r15d, %esi
movl %ebx, %edx
callq 0xb762
movq 0x20(%rsp), %rcx
movl $0xf, %esi
leaq 0x30(%rsp), %r14
cmpq %r14, %rcx
je 0x31ee0
movq 0x30(%rsp), %rsi
movq 0x28(%rsp), %r8
movq 0x8(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
leaq 0x50(%rsp), %rbx
jbe 0x31f12
movl $0xf, %esi
leaq 0x10(%rsp), %rdi
cmpq %rdi, (%rsp)
je 0x31f0d
movq 0x10(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x31f22
movq (%rsp), %rsi
leaq 0x20(%rsp), %rdi
callq 0x6120
jmp 0x31f2e
movq %rsp, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x63d0
movq %rbx, 0x40(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x31f4e
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x31f54
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x90(%rsp), %rdi
movq %rbp, %rsi
callq 0x6460
movq 0x40(%rsp), %rdi
cmpq %rbx, %rdi
je 0x31f98
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6380
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x31fb3
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x20(%rsp), %rdi
cmpq %r14, %rdi
je 0x31fca
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
movq 0xc8(%rsp), %rbx
movq 0xd0(%rsp), %r14
je 0x31ff6
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x6380
leal -0x72(%r14), %eax
cmpl $0x8, %eax
ja 0x3202b
movl $0x141, %ecx            # imm = 0x141
btl %eax, %ecx
jae 0x3202b
movl $0x1, 0x40(%rsp)
movq 0x88(%rsp), %rdi
leaq 0x90(%rsp), %rsi
movq %rbp, %rdx
callq 0x35b92
jmp 0x32048
movq 0x88(%rsp), %rdi
leaq 0x90(%rsp), %rsi
movq 0xc0(%rsp), %rdx
callq 0x35f86
movq 0x38(%r12), %rdi
leal -0x1(%r13), %esi
movl %ebx, %edx
callq 0x1a0d6
movq %rax, %r15
testq %rax, %rax
je 0x3236b
movq 0xb0(%rsp), %rax
movl (%rax), %r14d
movl %r14d, %ebx
negl %ebx
cmovsl %r14d, %ebx
movl $0x1, %r12d
cmpl $0xa, %ebx
jb 0x320c9
movl $0x4, %r12d
movl %ebx, %eax
movl $0xd1b71759, %edx       # imm = 0xD1B71759
cmpl $0x63, %eax
jbe 0x320c0
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x320c6
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x320c9
movl %eax, %ecx
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x32090
addl $-0x3, %r12d
jmp 0x320c9
addl $-0x2, %r12d
jmp 0x320c9
decl %r12d
shrl $0x1f, %r14d
leal (%r12,%r14), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %rbp
movq %rbp, %rdi
movl $0x2d, %edx
callq 0x6410
addq 0x68(%rsp), %r14
movq %r14, %rdi
movl %r12d, %esi
movl %ebx, %edx
callq 0xb762
movq %rbp, %rdi
leaq 0x19cee(%rip), %rsi     # 0x4bdf7
callq 0x6690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x32136
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x3213c
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x60(%rsp), %r12
leaq 0x40(%rsp), %rbp
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl (%r15), %r14d
movl %r14d, %ebx
negl %ebx
cmovsl %r14d, %ebx
movl $0x1, %r15d
cmpl $0xa, %ebx
jb 0x321bb
movl $0x4, %r15d
movl %ebx, %eax
movl $0xd1b71759, %edx       # imm = 0xD1B71759
cmpl $0x63, %eax
jbe 0x321b2
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x321b8
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x321bb
movl %eax, %ecx
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r15d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x32182
addl $-0x3, %r15d
jmp 0x321bb
addl $-0x2, %r15d
jmp 0x321bb
decl %r15d
shrl $0x1f, %r14d
leal (%r15,%r14), %esi
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq %rsp, %rdi
movl $0x2d, %edx
callq 0x6410
addq (%rsp), %r14
movq %r14, %rdi
movl %r15d, %esi
movl %ebx, %edx
callq 0xb762
movq 0x20(%rsp), %rcx
movl $0xf, %esi
leaq 0x30(%rsp), %r14
cmpq %r14, %rcx
je 0x32203
movq 0x30(%rsp), %rsi
movq 0x28(%rsp), %r8
movq 0x8(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
leaq 0x50(%rsp), %rbx
jbe 0x32235
movl $0xf, %esi
leaq 0x10(%rsp), %rdi
cmpq %rdi, (%rsp)
je 0x32230
movq 0x10(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x32245
movq (%rsp), %rsi
leaq 0x20(%rsp), %rdi
callq 0x6120
jmp 0x32251
movq %rsp, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x63d0
movq %rbx, 0x40(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x32271
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x32277
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x90(%rsp), %rdi
movq %rbp, %rsi
callq 0x6460
movq 0x40(%rsp), %rdi
cmpq %rbx, %rdi
je 0x322bb
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6380
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x322d6
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x20(%rsp), %rdi
cmpq %r14, %rdi
je 0x322ed
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
movq 0xc8(%rsp), %rbx
movq 0xd0(%rsp), %r14
je 0x32319
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x6380
leal -0x6c(%r14), %eax
cmpl $0xd, %eax
ja 0x3234e
movl $0x2801, %ecx           # imm = 0x2801
btl %eax, %ecx
jae 0x3234e
movl $0x1, 0x40(%rsp)
movq 0x88(%rsp), %rdi
leaq 0x90(%rsp), %rsi
movq %rbp, %rdx
callq 0x35b92
jmp 0x3236b
movq 0x88(%rsp), %rdi
leaq 0x90(%rsp), %rsi
movq 0xc0(%rsp), %rdx
callq 0x35f86
movq 0x38(%r12), %rdi
movl %r13d, %esi
movl 0xe4(%rsp), %edx
callq 0x1a0d6
movq %rax, %r15
testq %rax, %rax
je 0x32692
movq 0xb0(%rsp), %rax
movl (%rax), %r14d
movl %r14d, %ebx
negl %ebx
cmovsl %r14d, %ebx
movl $0x1, %r12d
cmpl $0xa, %ebx
jb 0x323f0
movl $0x4, %r12d
movl %ebx, %eax
movl $0xd1b71759, %edx       # imm = 0xD1B71759
cmpl $0x63, %eax
jbe 0x323e7
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x323ed
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x323f0
movl %eax, %ecx
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x323b7
addl $-0x3, %r12d
jmp 0x323f0
addl $-0x2, %r12d
jmp 0x323f0
decl %r12d
shrl $0x1f, %r14d
leal (%r12,%r14), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
leaq 0x68(%rsp), %rbp
movq %rbp, %rdi
movl $0x2d, %edx
callq 0x6410
addq 0x68(%rsp), %r14
movq %r14, %rdi
movl %r12d, %esi
movl %ebx, %edx
callq 0xb762
movq %rbp, %rdi
leaq 0x199c7(%rip), %rsi     # 0x4bdf7
callq 0x6690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x3245d
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x32463
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x60(%rsp), %r12
leaq 0x40(%rsp), %rbp
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl (%r15), %r14d
movl %r14d, %ebx
negl %ebx
cmovsl %r14d, %ebx
movl $0x1, %r15d
cmpl $0xa, %ebx
jb 0x324e2
movl $0x4, %r15d
movl %ebx, %eax
movl $0xd1b71759, %edx       # imm = 0xD1B71759
cmpl $0x63, %eax
jbe 0x324d9
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x324df
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x324e2
movl %eax, %ecx
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r15d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x324a9
addl $-0x3, %r15d
jmp 0x324e2
addl $-0x2, %r15d
jmp 0x324e2
decl %r15d
shrl $0x1f, %r14d
leal (%r15,%r14), %esi
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq %rsp, %rdi
movl $0x2d, %edx
callq 0x6410
addq (%rsp), %r14
movq %r14, %rdi
movl %r15d, %esi
movl %ebx, %edx
callq 0xb762
movq 0x20(%rsp), %rcx
movl $0xf, %esi
leaq 0x30(%rsp), %r14
cmpq %r14, %rcx
je 0x3252a
movq 0x30(%rsp), %rsi
movq 0x28(%rsp), %r8
movq 0x8(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
leaq 0x50(%rsp), %rbx
jbe 0x3255c
movl $0xf, %esi
leaq 0x10(%rsp), %rdi
cmpq %rdi, (%rsp)
je 0x32557
movq 0x10(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x3256c
movq (%rsp), %rsi
leaq 0x20(%rsp), %rdi
callq 0x6120
jmp 0x32578
movq %rsp, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x63d0
movq %rbx, 0x40(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x32598
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x3259e
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x90(%rsp), %rdi
movq %rbp, %rsi
callq 0x6460
movq 0x40(%rsp), %rdi
cmpq %rbx, %rdi
je 0x325e2
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6380
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x325fd
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x20(%rsp), %rdi
cmpq %r14, %rdi
je 0x32614
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
movq 0xc8(%rsp), %rbx
movq 0xd0(%rsp), %r14
je 0x32640
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x6380
leal -0x75(%r14), %eax
cmpl $0x5, %eax
ja 0x32675
movl $0x25, %ecx
btl %eax, %ecx
jae 0x32675
movl $0x1, 0x40(%rsp)
movq 0x88(%rsp), %rdi
leaq 0x90(%rsp), %rsi
movq %rbp, %rdx
callq 0x35b92
jmp 0x32692
movq 0x88(%rsp), %rdi
leaq 0x90(%rsp), %rsi
movq 0xc0(%rsp), %rdx
callq 0x35f86
movq 0x38(%r12), %rdi
movl %r13d, %esi
movl 0xe0(%rsp), %edx
callq 0x1a0d6
movq %rax, %r15
testq %rax, %rax
leaq 0x68(%rsp), %r13
je 0x329b6
movq 0xb0(%rsp), %rax
movl (%rax), %r14d
movl %r14d, %ebx
negl %ebx
cmovsl %r14d, %ebx
movl $0x1, %r12d
cmpl $0xa, %ebx
jb 0x3271c
movl $0x4, %r12d
movl %ebx, %eax
movl $0xd1b71759, %edx       # imm = 0xD1B71759
cmpl $0x63, %eax
jbe 0x32713
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x32719
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x3271c
movl %eax, %ecx
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r12d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x326e3
addl $-0x3, %r12d
jmp 0x3271c
addl $-0x2, %r12d
jmp 0x3271c
decl %r12d
shrl $0x1f, %r14d
leal (%r12,%r14), %esi
leaq 0x78(%rsp), %rax
movq %rax, 0x68(%rsp)
movq %r13, %rdi
movl $0x2d, %edx
callq 0x6410
addq 0x68(%rsp), %r14
movq %r14, %rdi
movl %r12d, %esi
movl %ebx, %edx
callq 0xb762
movq %r13, %rdi
leaq 0x196a0(%rip), %rsi     # 0x4bdf7
callq 0x6690
leaq 0x30(%rsp), %rsi
movq %rsi, 0x20(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x32784
movq %rdx, 0x20(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x30(%rsp)
jmp 0x3278a
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x60(%rsp), %r12
movq 0x8(%rax), %rdx
movq %rdx, 0x28(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl (%r15), %r14d
movl %r14d, %ebx
negl %ebx
cmovsl %r14d, %ebx
movl $0x1, %r15d
cmpl $0xa, %ebx
jb 0x32804
movl $0x4, %r15d
movl %ebx, %eax
movl $0xd1b71759, %edx       # imm = 0xD1B71759
cmpl $0x63, %eax
jbe 0x327fb
cmpl $0x3e7, %eax            # imm = 0x3E7
jbe 0x32801
cmpl $0x2710, %eax           # imm = 0x2710
jb 0x32804
movl %eax, %ecx
imulq %rdx, %rcx
shrq $0x2d, %rcx
addl $0x4, %r15d
cmpl $0x1869f, %eax          # imm = 0x1869F
movl %ecx, %eax
ja 0x327cb
addl $-0x3, %r15d
jmp 0x32804
addl $-0x2, %r15d
jmp 0x32804
decl %r15d
shrl $0x1f, %r14d
leal (%r15,%r14), %esi
leaq 0x10(%rsp), %rax
movq %rax, (%rsp)
movq %rsp, %rdi
movl $0x2d, %edx
callq 0x6410
addq (%rsp), %r14
movq %r14, %rdi
movl %r15d, %esi
movl %ebx, %edx
callq 0xb762
movq 0x20(%rsp), %rcx
movl $0xf, %esi
leaq 0x30(%rsp), %r14
cmpq %r14, %rcx
je 0x3284c
movq 0x30(%rsp), %rsi
movq 0x28(%rsp), %r8
movq 0x8(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
leaq 0x50(%rsp), %rbx
jbe 0x3287e
movl $0xf, %esi
leaq 0x10(%rsp), %rdi
cmpq %rdi, (%rsp)
je 0x32879
movq 0x10(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x3288e
movq (%rsp), %rsi
leaq 0x20(%rsp), %rdi
callq 0x6120
jmp 0x3289a
movq %rsp, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x63d0
movq %rbx, 0x40(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x328ba
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x328c0
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x90(%rsp), %rdi
movq %rbp, %rsi
callq 0x6460
movq 0x40(%rsp), %rdi
cmpq %rbx, %rdi
je 0x32904
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6380
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x3291f
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x20(%rsp), %rdi
cmpq %r14, %rdi
je 0x32936
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
movq 0xc8(%rsp), %rbx
movq 0xd0(%rsp), %r14
je 0x32962
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x6380
addl $-0x64, %r14d
cmpl $0x15, %r14d
ja 0x32999
movl $0x300001, %eax         # imm = 0x300001
btl %r14d, %eax
jae 0x32999
movl $0x1, 0x40(%rsp)
movq 0x88(%rsp), %rdi
leaq 0x90(%rsp), %rsi
movq %rbp, %rdx
callq 0x35b92
jmp 0x329b6
movq 0x88(%rsp), %rdi
leaq 0x90(%rsp), %rsi
movq 0xc0(%rsp), %rdx
callq 0x35f86
movq 0x118(%rsp), %rcx
incq %rcx
movl 0xbc(%rsp), %eax
movl %eax, %r13d
movq 0x110(%rsp), %rax
cmpq %rax, %rcx
jne 0x31cd4
incl %ebx
leaq 0x120(%rsp), %r14
jmp 0x31c45
movq 0x38(%r12), %rdi
movq (%rdi), %rax
callq *0x8(%rax)
cmpl %eax, %ebx
jne 0x32b6b
movq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rax
cmpq %rax, %rdi
je 0x32a23
movq 0xf8(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x32a48
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x6380
leaq 0x120(%rsp), %rdi
callq 0x60f0
addq $0x328, %rsp            # imm = 0x328
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x2f53a(%rip), %rdi     # 0x61fa8
leaq 0x17cf6(%rip), %rsi     # 0x4a76b
movl $0x27, %edx
callq 0x63f0
movq 0x2f522(%rip), %rdi     # 0x61fa8
leaq 0x18b44(%rip), %rsi     # 0x4b5d1
movl $0x4, %edx
callq 0x63f0
movq 0xf0(%rsp), %rsi
movq 0x2f502(%rip), %rdi     # 0x61fa8
callq 0x6270
movq %rax, %rbx
leaq 0x17473(%rip), %rsi     # 0x49f28
movl $0xc, %edx
movq %rax, %rdi
callq 0x63f0
movq %rbx, %rdi
movl 0xdc(%rsp), %esi
callq 0x6610
leaq 0x15a8b(%rip), %rsi     # 0x48563
movq %rax, %rdi
callq 0x6360
movl $0x1, %edi
callq 0x6440
leaq 0x17d29(%rip), %rdi     # 0x4a81a
leaq 0x17db7(%rip), %rsi     # 0x4a8af
leaq 0x17de4(%rip), %rcx     # 0x4a8e3
movl $0x4a, %edx
callq 0x6260
movq 0x2f498(%rip), %rdi     # 0x61fa8
leaq 0x17c3b(%rip), %rsi     # 0x4a752
movl $0x18, %edx
callq 0x63f0
movq 0x60(%rsp), %rax
movq 0xf0(%rax), %rsi
movq 0xf8(%rax), %rdx
movq 0x2f46d(%rip), %rdi     # 0x61fa8
callq 0x63f0
movq %rax, %rbx
leaq 0x1578e(%rip), %rsi     # 0x482d8
movl $0xf, %edx
movq %rax, %rdi
callq 0x63f0
leaq 0x15a05(%rip), %rsi     # 0x48563
movq %rbx, %rdi
callq 0x6360
jmp 0x32ae0
movq 0x2f436(%rip), %rdi     # 0x61fa8
leaq 0x17c1a(%rip), %rsi     # 0x4a793
movl $0x28, %edx
callq 0x63f0
movq 0x2f41e(%rip), %rdi     # 0x61fa8
leaq 0x18a40(%rip), %rsi     # 0x4b5d1
movl $0x4, %edx
callq 0x63f0
incl %ebx
movq 0x2f404(%rip), %rdi     # 0x61fa8
movl %ebx, %esi
callq 0x6610
movq %rax, %rbx
leaq 0x17373(%rip), %rsi     # 0x49f28
movl $0xc, %edx
movq %rax, %rdi
callq 0x63f0
movq 0x38(%r12), %rdi
movq (%rdi), %rax
callq *0x8(%rax)
movq %rbx, %rdi
movl %eax, %esi
callq 0x6610
leaq 0x15985(%rip), %rsi     # 0x48563
movq %rax, %rdi
callq 0x6360
jmp 0x32ae0
jmp 0x32bed
movq %rax, %rbx
jmp 0x32d03
movq %rax, %rbx
leaq 0xa0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x32d10
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x6380
jmp 0x32d10
jmp 0x32cb6
jmp 0x32cb6
jmp 0x32cb6
jmp 0x32cb6
jmp 0x32cb6
jmp 0x32cb6
jmp 0x32c4e
jmp 0x32cb6
jmp 0x32c5c
jmp 0x32cb6
jmp 0x32c4e
jmp 0x32c5c
jmp 0x32c95
jmp 0x32c95
jmp 0x32c4e
jmp 0x32cb6
movq %rax, %rbx
leaq 0x30(%rsp), %r14
jmp 0x32c7a
jmp 0x32c5c
jmp 0x32cb6
movq %rax, %rbx
movq (%rsp), %rdi
leaq 0x10(%rsp), %rax
cmpq %rax, %rdi
je 0x32c7a
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x20(%rsp), %rdi
cmpq %r14, %rdi
je 0x32c98
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x6380
jmp 0x32c98
jmp 0x32c95
movq %rax, %rbx
movq 0x68(%rsp), %rdi
leaq 0x78(%rsp), %rax
cmpq %rax, %rdi
je 0x32cb9
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x6380
jmp 0x32cb9
movq %rax, %rbx
movq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rax
cmpq %rax, %rdi
je 0x32cde
movq 0xf8(%rsp), %rsi
incq %rsi
callq 0x6380
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x32d03
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x6380
leaq 0x120(%rsp), %rdi
callq 0x60f0
movq %rbx, %rdi
callq 0x6620