// File: /workspace/github_cpp_makefile_star2_O3/atfrank[P]PCASA/lib/Prmtop.cpp
// Function: Prmtop::readTopology(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)
void Prmtop::readTopology(const std::string& topin){
  std::ifstream topFile;
  std::istream* topinp;
  std::string line;
  std::vector<std::string> s;
  double m; //mass
  double c; //charge
  std::map<std::string, double> massRef;
  std::string resname;
  std::string word;

  resname.clear();

  if (topin.length() > 0){
    topFile.open(topin.c_str(), std::ios::in);
    topinp=&topFile;

    if (topinp->good() == false){
      std::cerr << "Warning: Topology file \"" << topin;
      std::cerr << " could not be read!" << std::endl;
    }

    while (topinp->good() && !(topinp->eof())){
      getline(*topinp, line);
      word=Misc::toupper(Misc::trim(line).substr(0,4));
      if (word.compare(0,4,"MASS") == 0){
        Misc::splitStr(line, " \t", s, false);
        if (s.size() >= 4){
          std::stringstream(s.at(3)) >> m;
          massRef.insert(std::make_pair(s.at(2), m));
          atomTypes.push_back(s.at(2));
        }
      }
      else if (word.compare(0,4,"RESI") == 0 || Misc::trim(line).compare(0,4,"PRES") == 0){
        Misc::splitStr(line, " \t", s, false);
        if (s.size() >= 3){
          resname=s.at(1);
        }
      }
      else if (word.compare(0,4,"ATOM") == 0){
        Misc::splitStr(line, " \t", s, false);
        if (s.size() >= 3){
          atmtype.insert(std::make_pair(std::make_pair(resname, s.at(1)), s.at(2)));
          mass.insert(std::make_pair(std::make_pair(resname, s.at(1)), massRef[s.at(2)]));
          std::stringstream(s.at(3)) >> c;
          charge.insert(std::make_pair(std::make_pair(resname, s.at(1)), c));
        }
      }
      else{
        //Do nothing
      }
    }
  }

  //Sort, remove duplicates, and resize atom type vector
  std::sort(atomTypes.begin(), atomTypes.end());
  std::vector<std::string>::iterator it=std::unique(atomTypes.begin(), atomTypes.end());
  atomTypes.resize(distance(atomTypes.begin(),it));

}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x518, %rsp            # imm = 0x518
movq %rsi, %rbx
movq %rdi, 0x60(%rsp)
leaq 0x310(%rsp), %rdi
callq 0x4330
leaq 0x128(%rsp), %rcx
movq %rcx, -0x10(%rcx)
xorl %eax, %eax
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
movq %rax, 0x10(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, (%rsp)
leaq 0x2e8(%rsp), %rcx
movl $0x0, (%rcx)
movq %rax, 0x8(%rcx)
movq %rcx, 0x10(%rcx)
movq %rcx, 0x18(%rcx)
movq %rax, 0x20(%rcx)
leaq 0x80(%rsp), %rcx
movq %rcx, -0x10(%rcx)
leaq 0xf8(%rsp), %rdx
movq %rdx, -0x10(%rdx)
movq %rax, -0x8(%rdx)
movb %al, (%rdx)
movq %rax, -0x8(%rcx)
movb %al, (%rcx)
cmpq %rax, 0x8(%rbx)
je 0x2d214
movq (%rbx), %rsi
leaq 0x310(%rsp), %rdi
movl $0x8, %edx
callq 0x41c0
movq 0x310(%rsp), %rax
movq -0x18(%rax), %rax
cmpl $0x0, 0x330(%rsp,%rax)
je 0x2d332
movq 0x3c2e60(%rip), %rdi    # 0x3efff0
leaq 0xf5a3(%rip), %rsi      # 0x3c73a
movl $0x18, %edx
callq 0x4340
movq (%rbx), %rsi
movq 0x8(%rbx), %rdx
movq 0x3c2e41(%rip), %rdi    # 0x3efff0
callq 0x4340
movq 0x3c2e35(%rip), %rbx    # 0x3efff0
leaq 0xf591(%rip), %rsi      # 0x3c753
movl $0x13, %edx
movq %rbx, %rdi
callq 0x4340
movq (%rbx), %rax
addq -0x18(%rax), %rbx
movq %rbx, %rdi
movl $0xa, %esi
callq 0x42a0
movsbl %al, %esi
movq 0x3c2e03(%rip), %rdi    # 0x3efff0
callq 0x4040
movq %rax, %rdi
callq 0x41f0
movq 0x310(%rsp), %rax
movq -0x18(%rax), %rax
cmpl $0x0, 0x330(%rsp,%rax)
je 0x2d332
movq 0x60(%rsp), %rax
movq 0x90(%rax), %r14
movq 0x98(%rax), %rbx
cmpq %rbx, %r14
je 0x2d26c
movq %rbx, %rax
subq %r14, %rax
sarq $0x5, %rax
bsrq %rax, %rdx
xorl $0x3f, %edx
addl %edx, %edx
xorq $0x7e, %rdx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x287d8
movq %r14, %rdi
movq %rbx, %rsi
callq 0x288ac
movq 0x60(%rsp), %rax
movq 0x90(%rax), %r14
movq 0x98(%rax), %rbx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x1ff1a
movq 0x60(%rsp), %rdi
addq $0x90, %rdi
subq (%rdi), %rax
sarq $0x5, %rax
movq %rax, %rsi
callq 0x1fc0e
movq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rax
cmpq %rax, %rdi
je 0x2d2b7
movq 0xf8(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x2d2d9
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x42e0
leaq 0x2e0(%rsp), %rdi
callq 0x1fc92
movq %rsp, %rdi
callq 0x6412
movq 0x118(%rsp), %rdi
leaq 0x128(%rsp), %rax
cmpq %rax, %rdi
je 0x2d313
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x42e0
leaq 0x310(%rsp), %rdi
callq 0x40c0
addq $0x518, %rsp            # imm = 0x518
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq (%rsp,%rax), %rdi
addq $0x310, %rdi            # imm = 0x310
leaq 0x168(%rsp), %rbx
movq 0x60(%rsp), %rax
leaq 0x60(%rax), %rcx
movq %rcx, 0xd8(%rsp)
leaq 0x158(%rsp), %r12
leaq 0x80(%r12), %rcx
movq %rcx, 0x68(%rsp)
leaq 0x30(%rax), %rcx
movq %rcx, 0xd0(%rsp)
addq $0x90, %rax
movq %rax, 0xe0(%rsp)
leaq 0x118(%rsp), %r13
leaq 0xe8(%rsp), %r14
movl $0xa, %esi
callq 0x42a0
movsbl %al, %edx
leaq 0x310(%rsp), %rdi
movq %r13, %rsi
callq 0x4570
leaq 0xc0(%rsp), %rax
movq %rax, 0xb0(%rsp)
leaq 0xb0(%rsp), %r15
movq %r15, %rdi
leaq 0xf2ac(%rip), %rsi      # 0x3c680
leaq 0xf2a6(%rip), %rdx      # 0x3c681
callq 0x6512
leaq 0x138(%rsp), %rbp
movq %rbp, %rdi
movq %r13, %rsi
movq %r15, %rdx
callq 0x21d86
movl $0x4, %ecx
leaq 0x20(%rsp), %r15
movq %r15, %rdi
movq %rbp, %rsi
xorl %edx, %edx
callq 0x4300
movq %r12, %rdi
movq %r15, %rsi
callq 0x21fea
movq %r14, %rdi
movq %r12, %rsi
callq 0x4370
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2d440
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x2d45c
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x138(%rsp), %rdi
leaq 0x148(%rsp), %rax
cmpq %rax, %rdi
je 0x2d481
movq 0x148(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0xb0(%rsp), %rdi
leaq 0xc0(%rsp), %rax
cmpq %rax, %rdi
je 0x2d4a6
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0x42e0
movl $0x4, %edx
movq %r14, %rdi
xorl %esi, %esi
leaq 0xf2b0(%rip), %rcx      # 0x3c767
callq 0x43c0
testl %eax, %eax
je 0x2d7fd
movl $0x4, %edx
movq %r14, %rdi
xorl %esi, %esi
leaq 0xf297(%rip), %rcx      # 0x3c76c
callq 0x43c0
testl %eax, %eax
je 0x2d789
leaq 0xa0(%rsp), %rax
movq %rax, 0x90(%rsp)
leaq 0x90(%rsp), %r15
movq %r15, %rdi
leaq 0xf17c(%rip), %rsi      # 0x3c680
leaq 0xf176(%rip), %rdx      # 0x3c681
callq 0x6512
movq %r12, %rdi
movq %r13, %rsi
movq %r15, %rdx
callq 0x21d86
movl $0x4, %edx
movq %r12, %rdi
xorl %esi, %esi
leaq 0xf242(%rip), %rcx      # 0x3c771
callq 0x43c0
movl %eax, %r15d
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2d554
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x2d579
movq 0xa0(%rsp), %rsi
incq %rsi
callq 0x42e0
testl %r15d, %r15d
je 0x2d789
movl $0x4, %edx
movq %r14, %rdi
xorl %esi, %esi
leaq 0xe0bd(%rip), %rcx      # 0x3b650
callq 0x43c0
testl %eax, %eax
jne 0x2d937
movq %rbx, 0x158(%rsp)
movq %r12, %rdi
leaq 0xdf02(%rip), %rsi      # 0x3b4b4
leaq 0xdefd(%rip), %rdx      # 0x3b4b6
callq 0x6512
movq %r13, %rdi
movq %r12, %rsi
movq %rsp, %rdx
xorl %ecx, %ecx
callq 0x21994
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2d5eb
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x42e0
movq (%rsp), %rdx
movq 0x8(%rsp), %rax
subq %rdx, %rax
cmpq $0x41, %rax
jb 0x2d937
addq $0x20, %rdx
leaq 0x20(%rsp), %rdi
leaq 0x70(%rsp), %rsi
callq 0x2152c
movq (%rsp), %rax
movq 0x8(%rsp), %rdx
subq %rax, %rdx
sarq $0x5, %rdx
cmpq $0x2, %rdx
jbe 0x2dc6a
addq $0x40, %rax
movq %r12, %rdi
leaq 0x20(%rsp), %rsi
movq %rax, %rdx
callq 0x2e6b8
movq 0xd8(%rsp), %rdi
movq %r12, %rsi
callq 0x2eb12
movq 0x198(%rsp), %rdi
leaq 0x1a8(%rsp), %rax
cmpq %rax, %rdi
je 0x2d677
movq 0x1a8(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x178(%rsp), %rdi
leaq 0x188(%rsp), %rax
cmpq %rax, %rdi
je 0x2d69c
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2d6b9
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x2d6d5
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x2d6f1
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x42e0
movq (%rsp), %rax
movq 0x8(%rsp), %rdx
subq %rax, %rdx
sarq $0x5, %rdx
cmpq $0x1, %rdx
jbe 0x2dc7d
addq $0x20, %rax
leaq 0x20(%rsp), %rdi
leaq 0x70(%rsp), %rsi
movq %rax, %rdx
callq 0x2152c
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
subq %rsi, %rdx
sarq $0x5, %rdx
cmpq $0x2, %rdx
jbe 0x2dc90
addq $0x40, %rsi
leaq 0x2e0(%rsp), %rdi
callq 0x2e4ce
movq %rbx, 0x158(%rsp)
movq 0x20(%rsp), %rcx
leaq 0x30(%rsp), %rsi
cmpq %rsi, %rcx
leaq 0x188(%rsp), %rdi
je 0x2d95d
movq %rcx, 0x158(%rsp)
movq 0x30(%rsp), %rcx
movq %rcx, 0x168(%rsp)
jmp 0x2d963
movq %rbx, 0x158(%rsp)
movq %r12, %rdi
leaq 0xdd19(%rip), %rsi      # 0x3b4b4
leaq 0xdd14(%rip), %rdx      # 0x3b4b6
callq 0x6512
movq %r13, %rdi
movq %r12, %rsi
movq %rsp, %rdx
xorl %ecx, %ecx
callq 0x21994
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2d7d4
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x42e0
movq (%rsp), %rsi
movq 0x8(%rsp), %rax
subq %rsi, %rax
cmpq $0x41, %rax
jb 0x2d937
addq $0x20, %rsi
leaq 0x70(%rsp), %rdi
callq 0x4180
jmp 0x2d937
movq %rbx, 0x158(%rsp)
movq %r12, %rdi
leaq 0xdca5(%rip), %rsi      # 0x3b4b4
leaq 0xdca0(%rip), %rdx      # 0x3b4b6
callq 0x6512
movq %r13, %rdi
movq %r12, %rsi
movq %rsp, %rdx
xorl %ecx, %ecx
callq 0x21994
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2d848
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x42e0
movq (%rsp), %rsi
movq 0x8(%rsp), %rax
subq %rsi, %rax
cmpq $0x61, %rax
jb 0x2d937
addq $0x60, %rsi
movq %r12, %rdi
movl $0x18, %edx
callq 0x4490
movq %r12, %rdi
leaq 0x110(%rsp), %rsi
callq 0x41d0
movq %r12, %rdi
movq 0x3c271f(%rip), %rsi    # 0x3effa8
callq 0x4240
movq 0x68(%rsp), %rdi
callq 0x4110
movq (%rsp), %rax
movq 0x8(%rsp), %rdx
subq %rax, %rdx
sarq $0x5, %rdx
cmpq $0x2, %rdx
jbe 0x2dc44
movq %rbx, 0x158(%rsp)
movq 0x40(%rax), %rsi
movq 0x48(%rax), %rdx
addq %rsi, %rdx
movq %r12, %rdi
callq 0x647c
movsd 0x110(%rsp), %xmm0
movsd %xmm0, 0x178(%rsp)
leaq 0x2e0(%rsp), %rdi
movq %r12, %rsi
callq 0x2012e
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2d90c
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x42e0
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
subq %rsi, %rdx
sarq $0x5, %rdx
cmpq $0x2, %rdx
jbe 0x2dc57
addq $0x40, %rsi
movq 0xe0(%rsp), %rdi
callq 0x62ec
movq 0x310(%rsp), %rax
movq -0x18(%rax), %rax
leaq (%rsp,%rax), %rdi
addq $0x310, %rdi            # imm = 0x310
cmpl $0x0, 0x20(%rdi)
je 0x2d395
jmp 0x2d214
movups (%rsi), %xmm0
movups %xmm0, (%rbx)
movq 0x28(%rsp), %rdx
movq 0x40(%rsp), %rcx
movq %rdx, 0x160(%rsp)
movq %rsi, 0x20(%rsp)
movq $0x0, 0x28(%rsp)
movb $0x0, 0x30(%rsp)
movq %rdi, 0x178(%rsp)
leaq 0x50(%rsp), %rdx
cmpq %rdx, %rcx
je 0x2d9b1
movq %rcx, 0x178(%rsp)
movq 0x50(%rsp), %rcx
movq %rcx, 0x188(%rsp)
jmp 0x2d9b7
movups (%rdx), %xmm0
movups %xmm0, (%rdi)
movq 0x48(%rsp), %rcx
movq %rcx, 0x180(%rsp)
movq %rdx, 0x40(%rsp)
movq $0x0, 0x48(%rsp)
movb $0x0, 0x50(%rsp)
movsd (%rax), %xmm0
movsd %xmm0, 0x198(%rsp)
movq 0x60(%rsp), %rdi
movq %r12, %rsi
callq 0x2ee46
movq 0x178(%rsp), %rdi
leaq 0x188(%rsp), %rax
cmpq %rax, %rdi
je 0x2da16
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2da33
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x2da4f
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x2da6b
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x42e0
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
subq %rsi, %rdx
sarq $0x5, %rdx
cmpq $0x3, %rdx
jbe 0x2dca3
addq $0x60, %rsi
movq %r12, %rdi
movl $0x18, %edx
callq 0x4490
movq %r12, %rdi
leaq 0x108(%rsp), %rsi
callq 0x41d0
movq %r12, %rdi
movq 0x3c24f8(%rip), %rsi    # 0x3effa8
callq 0x4240
movq 0x68(%rsp), %rdi
callq 0x4110
movq (%rsp), %rax
movq 0x8(%rsp), %rdx
subq %rax, %rdx
sarq $0x5, %rdx
cmpq $0x1, %rdx
jbe 0x2dcb6
addq $0x20, %rax
leaq 0x20(%rsp), %rdi
leaq 0x70(%rsp), %rsi
movq %rax, %rdx
callq 0x2152c
movq %rbx, 0x158(%rsp)
movq 0x20(%rsp), %rax
leaq 0x30(%rsp), %rdx
cmpq %rdx, %rax
leaq 0x188(%rsp), %rsi
leaq 0x50(%rsp), %rdi
je 0x2db2a
movq %rax, 0x158(%rsp)
movq 0x30(%rsp), %rax
movq %rax, 0x168(%rsp)
jmp 0x2db30
movups (%rdx), %xmm0
movups %xmm0, (%rbx)
movq 0x28(%rsp), %rcx
movq 0x40(%rsp), %rax
movq %rcx, 0x160(%rsp)
movq %rdx, 0x20(%rsp)
movq $0x0, 0x28(%rsp)
movb $0x0, 0x30(%rsp)
movq %rsi, 0x178(%rsp)
cmpq %rdi, %rax
je 0x2db79
movq %rax, 0x178(%rsp)
movq 0x50(%rsp), %rax
movq %rax, 0x188(%rsp)
jmp 0x2db7f
movups (%rdi), %xmm0
movups %xmm0, (%rsi)
movq 0x48(%rsp), %rax
movq %rax, 0x180(%rsp)
movq %rdi, 0x40(%rsp)
movq $0x0, 0x48(%rsp)
movb $0x0, 0x50(%rsp)
movsd 0x108(%rsp), %xmm0
movsd %xmm0, 0x198(%rsp)
movq 0xd0(%rsp), %rdi
movq %r12, %rsi
callq 0x2ee46
movq 0x178(%rsp), %rdi
leaq 0x188(%rsp), %rax
cmpq %rax, %rdi
je 0x2dbe6
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2dc03
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x2dc1f
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x2d937
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x42e0
jmp 0x2d937
leaq 0xd6de(%rip), %rdi      # 0x3b329
movl $0x2, %esi
xorl %eax, %eax
callq 0x4440
leaq 0xd6cb(%rip), %rdi      # 0x3b329
movl $0x2, %esi
xorl %eax, %eax
callq 0x4440
leaq 0xd6b8(%rip), %rdi      # 0x3b329
movl $0x2, %esi
xorl %eax, %eax
callq 0x4440
leaq 0xd6a5(%rip), %rdi      # 0x3b329
movl $0x1, %esi
xorl %eax, %eax
callq 0x4440
leaq 0xd692(%rip), %rdi      # 0x3b329
movl $0x2, %esi
xorl %eax, %eax
callq 0x4440
leaq 0xd67f(%rip), %rdi      # 0x3b329
movl $0x3, %esi
xorl %eax, %eax
callq 0x4440
leaq 0xd66c(%rip), %rdi      # 0x3b329
movl $0x1, %esi
xorl %eax, %eax
callq 0x4440
jmp 0x2dce1
jmp 0x2de62
jmp 0x2de62
jmp 0x2dd44
jmp 0x2de62
jmp 0x2de62
movq %rax, %r14
leaq 0x158(%rsp), %rdi
callq 0x2e54a
jmp 0x2dd18
jmp 0x2dd15
jmp 0x2dd15
jmp 0x2de62
jmp 0x2de62
movq %rax, %r14
leaq 0x158(%rsp), %rdi
callq 0x2e480
jmp 0x2dd18
jmp 0x2dd15
movq %rax, %r14
leaq 0x20(%rsp), %rdi
callq 0x21590
jmp 0x2de65
jmp 0x2de62
jmp 0x2dd76
jmp 0x2de62
jmp 0x2de62
jmp 0x2dd76
jmp 0x2de62
jmp 0x2de62
movq %rax, %r14
movq 0x3c225a(%rip), %rsi    # 0x3effa8
leaq 0x158(%rsp), %rdi
callq 0x4240
movq 0x68(%rsp), %rdi
callq 0x4110
jmp 0x2de65
jmp 0x2de62
jmp 0x2dd76
jmp 0x2de62
movq %rax, %r14
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2de65
movq 0x168(%rsp), %rsi
jmp 0x2de58
jmp 0x2de62
jmp 0x2de62
movq %rax, %r14
movq 0x158(%rsp), %rdi
cmpq %rbx, %rdi
je 0x2ddc6
movq 0x168(%rsp), %rsi
incq %rsi
callq 0x42e0
jmp 0x2ddc6
movq %rax, %r14
movq 0x90(%rsp), %rdi
leaq 0xa0(%rsp), %rax
cmpq %rax, %rdi
je 0x2de65
movq 0xa0(%rsp), %rsi
jmp 0x2de58
jmp 0x2de62
jmp 0x2de62
movq %rax, %r14
jmp 0x2de3b
movq %rax, %r14
jmp 0x2de16
movq %rax, %r14
movq 0x20(%rsp), %rdi
leaq 0x30(%rsp), %rax
cmpq %rax, %rdi
je 0x2de16
movq 0x30(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x138(%rsp), %rdi
leaq 0x148(%rsp), %rax
cmpq %rax, %rdi
je 0x2de3b
movq 0x148(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0xb0(%rsp), %rdi
leaq 0xc0(%rsp), %rax
cmpq %rax, %rdi
je 0x2de65
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0x42e0
jmp 0x2de65
movq %rax, %r14
movq 0xe8(%rsp), %rdi
leaq 0xf8(%rsp), %rax
cmpq %rax, %rdi
je 0x2de8a
movq 0xf8(%rsp), %rsi
incq %rsi
callq 0x42e0
movq 0x70(%rsp), %rdi
leaq 0x80(%rsp), %rax
cmpq %rax, %rdi
je 0x2deac
movq 0x80(%rsp), %rsi
incq %rsi
callq 0x42e0
leaq 0x2e0(%rsp), %rdi
callq 0x1fc92
movq %rsp, %rdi
callq 0x6412
movq 0x118(%rsp), %rdi
leaq 0x128(%rsp), %rax
cmpq %rax, %rdi
je 0x2dee6
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x42e0
leaq 0x310(%rsp), %rdi
callq 0x40c0
movq %r14, %rdi
callq 0x4550
nop