// File: Chrom3D[P]Chrom3D/src/Model.cpp
// Function: Model::readGtrack(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, bool, double)
void Model::readGtrack(string filename, bool scaleBeadSizes/*=false*/, double nuclearOccupancy /*=0.2*/) {
  string line;
  ifstream myfile(filename.c_str());
  uint line_counter = 0;
  if(!myfile.is_open()) throw std::runtime_error("Gtrack file not found or does not exist");

  typedef std::pair<std::string, std::string> idPair;
  
  vector<string> header;

  map<string,Chromosome> chromosomes;
  map<string, string> beadId2chr;
  vector<string> peripheryIds;
  vector<string> centerIds;
  vector<string> radialIds;
  vector<pair<string,string> > interactionIds;
  vector<pair<string,string> > interactionDistanceIds;
  vector<pair<string,string> > interactionLowerDistanceIds;
  vector<pair<string,string> > interactionUpperDistanceIds;
  //vector<pair<string,string> > nonInteractionDistanceIds;


  std::map<idPair,double> distInfo;
  std::map<string,double> radialDistInfo;
  
  std::map<idPair,double> weightInfo;
  std::map<string,double> peripheryWeight;
  std::map<string,double> centerWeight;

  double beadRadius;
  
  bool hasPeriphery = false;
  bool hasEdges = false;
  bool hasColor = false;
  bool hasBeadRadius = false;
  
  while(getline(myfile,line)) {    
    line_counter++;
    if(line.substr(0,3) == "###") {
      header = util::split(line.substr(3),'\t');
      hasPeriphery = find(header.begin(), header.end(), "periphery") != header.end();
      hasEdges = find(header.begin(), header.end(), "edges") != header.end();
      hasColor = find(header.begin(), header.end(), "color") != header.end();
      hasBeadRadius = find(header.begin(), header.end(), "radius") != header.end();
    }
    if(line.substr(0,1) == "#") { // Ignore comments
      continue;
    }

    if(hasPeriphery) {
      assert(this->hasNucleus);
    }

    
    vector<string> dataLine = util::split(line,'\t');
    map<string, string> fieldParser = util::makeMap(header, dataLine);
    
    
    if (chromosomes.find(fieldParser["seqid"]) == chromosomes.end() ) {
      Chromosome chr(fieldParser["seqid"]);
      chromosomes[fieldParser["seqid"]] = chr;
    }

    beadRadius = 0.5; // Default bead radius size
    if(hasBeadRadius) {
      beadRadius = boost::lexical_cast<double>(fieldParser["radius"]);
    }

    
    Bead myBead(boost::lexical_cast<int>(fieldParser["start"]), boost::lexical_cast<int>(fieldParser["end"]), beadRadius, fieldParser["id"]);
    myBead.setCoordinates(0,0,0); // Coordinates are not defined at this point, set all to zero.
    
    beadId2chr[fieldParser["id"]] = fieldParser["seqid"];
    
    if(hasColor) {
      vector<string> col = util::split(fieldParser["color"], ',');
      myBead.setColor(boost::lexical_cast<float>(col[0]), boost::lexical_cast<float>(col[1]), boost::lexical_cast<float>(col[2]));
    }
        
    chromosomes[fieldParser["seqid"]].addBead(myBead);

    if(hasPeriphery and fieldParser["periphery"] != ".") { 
      
      if (fieldParser["periphery"].find(",") != std::string::npos) { // has periphery-weights
	if( util::split(fieldParser["periphery"], ',')[0] == "1") {
	  peripheryIds.push_back(fieldParser["id"]);
	  peripheryWeight[fieldParser["id"]] = boost::lexical_cast<double>(util::split(fieldParser["periphery"], ',')[1]);
	}
	else if( util::split(fieldParser["periphery"], ',')[0] == "0") {
	  centerIds.push_back(fieldParser["id"]);
	  centerWeight[fieldParser["id"]] = boost::lexical_cast<double>(util::split(fieldParser["periphery"], ',')[1]);
	}
	else {
	  //assert(false); // 'periphery' can be either 0 or 1, when a weight is given.
            std::string error_line = util::errorLine(line_counter,filename);
            throw std::logic_error(error_line + "Periphery can be either 0 or 1, when a weight is given.");
	}
      }	// no weights:
      if (fieldParser["periphery"] == "1") {
	peripheryIds.push_back(fieldParser["id"]);
      }
      else if (fieldParser["periphery"] == "0") {
	centerIds.push_back(fieldParser["id"]);
      }
      else if (fieldParser["periphery"] != "."){
	radialDistInfo[fieldParser["id"]] =  boost::lexical_cast<double>(fieldParser["periphery"]);
        radialIds.push_back(fieldParser["id"]);
      }
    }

    if(hasEdges and fieldParser["edges"] != ".") {
      vector<string> edgeList = util::split(fieldParser["edges"], ';');
      idPair idPair1;
      string b2id;
      for(uint i=0; i!=edgeList.size(); i++) {
        b2id = edgeList[i];
        if(b2id.find("=") == std::string::npos){ // if edge information does not contain edge weights 
          idPair1 = make_pair(fieldParser["id"], b2id);
          //assert(idPair1.first != idPair1.second);	
          if(idPair1.first == idPair1.second)
          {
            std::string error_line = util::errorLine(line_counter,filename);
            throw std::logic_error(error_line + "Same beadId found in the edge column, please check the edge column of the above line");
          }
 
          if(find(interactionIds.begin(), interactionIds.end(), idPair1) == interactionIds.end())  {
            interactionIds.push_back(idPair1); // idPair2 should not be added here, since addConstraint will add both pairs automatically
          }
        }
        else {// edge information contains edge weights
          b2id = edgeList[i].substr(0,edgeList[i].find("="));
          string edgeInfoAll =  edgeList[i].substr(edgeList[i].find("=")+1);
          idPair1 = make_pair(fieldParser["id"], b2id);
          //assert(idPair1.first != idPair1.second);	
          if(idPair1.first == idPair1.second)
          {
            std::string error_line = util::errorLine(line_counter,filename);
            throw std::logic_error(error_line + "Same beadId found in the edge column, please check the edge column of the above line");
          }
         
          if(edgeInfoAll.find(".") == 0){//No weighting on edges: treat like ordinary interaction
            
            if(find(interactionIds.begin(), interactionIds.end(), idPair1) == interactionIds.end())  {
              interactionIds.push_back(idPair1); // idPair2 should not be added here, since addConstraint will add both pairs automatically
            }
          }
          else{ // split edge information
            vector<double> edgeInfoDetail = util::splitDbl(edgeInfoAll,',');
	    vector<string> edgeInfoDetailString = util::split(edgeInfoAll,',');
	    if(edgeInfoDetail.size() == 3) { // link information with 0) Distance, 1) Weight and 2) Boundary info
	      //assert(edgeInfoDetailString[2] == "0" or edgeInfoDetailString[2] == "1" or edgeInfoDetailString[2] == ".");
              if(edgeInfoDetailString[2] != "0" and edgeInfoDetailString[2] != "1" and edgeInfoDetailString[2] != ".")
              {
                std::string error_line = util::errorLine(line_counter,filename);
                throw std::logic_error(error_line + "Boundary information value can be 0, 1 or .");
              } 
	      // edgeInfoDetail contains [0]=weight (>0), [1]=distance (>0]), [2]=boundary (0/1). 
	      // If boundary is 1, define distance as the minimum required between the two "interacting" beads. (penalty for smaller distance than this defined distance)
	      // If boundary is 0, use distance as the maximum desired distance between the beads (penalty for larger distance than this defined distance)
	      // If boundary is . (missing), use the given distance as the desired distance (penalty for larger and smaller distances)

	      if(edgeInfoDetailString[2]=="0"){ // UpperBound
		interactionUpperDistanceIds.push_back(idPair1);
	      }
	      else if(edgeInfoDetailString[2]=="1") { // LowerBound
		interactionLowerDistanceIds.push_back(idPair1);
	      }
	      else if(edgeInfoDetailString[2]==".") { // Unbounded
		interactionDistanceIds.push_back(idPair1);
	      }
	      else {
		assert(false);
	      }
	      //assert(edgeInfoDetail[0] >= 0);
              if(edgeInfoDetail[0] < 0)
              {
                std::string error_line = util::errorLine(line_counter,filename);
                throw std::logic_error(error_line + "Weight should be above 0");
              }
	      //assert(edgeInfoDetail[1] >= 0);
              if(edgeInfoDetail[1] < 0)
              {
                std::string error_line = util::errorLine(line_counter,filename);
                throw std::logic_error(error_line + "Distance should be above 0");
              }
	      weightInfo[idPair1] = edgeInfoDetail[0];
	      distInfo[idPair1] = edgeInfoDetail[1];
	    }
	    else if(edgeInfoDetail.size() == 1) { // Only one number, gives the weight on that link.
	      //assert(edgeInfoDetail[0] > 0);
              if(edgeInfoDetail[0] < 0)
              {
                std::string error_line = util::errorLine(line_counter,filename);
                throw std::logic_error(error_line + "Weight should be above 0");
              }
	      interactionIds.push_back(idPair1);
	      weightInfo[idPair1] = edgeInfoDetail[0];	      
	    }
	    else {
	      //assert(false);
              std::string error_line = util::errorLine(line_counter,filename);
              throw std::logic_error(error_line + "Either only weight or all the information should be specified for a linked bead");
	    }
	    
          }
          
        }
    
      }
    }
  }


  myfile.close();
  

  // Adding the Chromosomes:
  for(map<string,Chromosome>::iterator it = chromosomes.begin(); it != chromosomes.end(); it++) {
    if(not hasColor) {
      double r = util::unif_real(0,1,randEngine);
      double g = util::unif_real(0,1,randEngine);
      double b = util::unif_real(0,1,randEngine);
      it->second.setColor(r,g,b);
    }
    this->addChromosome(it->second);
  }

  // Scale bead-sizes according to nuclear occupancy:
  if(scaleBeadSizes) {
    cerr << "# Rescaled bead sizes from " << this->getNuclearOccupancy();
    this->rescaleBeadSizes(nuclearOccupancy);
    cerr << " to " << this->getNuclearOccupancy() << endl;    
  }
  
  // Adding Interactions:
  for(vector<pair<string,string> >::iterator it = interactionIds.begin();  it != interactionIds.end(); it++) {
    //cout <<it->first << " " << it->second << endl;
    std::map<idPair,double>::iterator itWeight = weightInfo.find(*it);
    double weight = (itWeight != weightInfo.end()) ? itWeight->second : 1;
    if(beadId2chr[it->first] == beadId2chr[it->second]) {
      this->addInteractionConstraint(it->first, it->second, weight, INTERACTION_INTRA);
    }
    else {
      this->addInteractionConstraint(it->first, it->second, weight, INTERACTION_INTER);
    }
  }

  std::map<idPair,double>::iterator itDist;
  std::map<idPair,double>::iterator itWeight;

  // Adding non-bounded distances:
  for(vector<pair<string,string> >::iterator it = interactionDistanceIds.begin();  it != interactionDistanceIds.end(); it++) {    
    itDist = distInfo.find(*it);
    itWeight = weightInfo.find(*it);
       
    this->addInteractionDistanceConstraint(it->first, it->second, itDist->second, itWeight->second);
  }
  
    
  // Adding Lower-bound distances:
  for(vector<pair<string,string> >::iterator it = interactionLowerDistanceIds.begin();  it != interactionLowerDistanceIds.end(); it++) {    
    itDist = distInfo.find(*it);
    itWeight = weightInfo.find(*it);
   
    this->addInteractionLowerDistanceConstraint(it->first, it->second, itDist->second, itWeight->second);
  }

  // Adding Upper-bound distances:
  for(vector<pair<string,string> >::iterator it = interactionUpperDistanceIds.begin();  it != interactionUpperDistanceIds.end(); it++) {    
    itDist = distInfo.find(*it);
    itWeight = weightInfo.find(*it);
   
    this->addInteractionUpperDistanceConstraint(it->first, it->second, itDist->second, itWeight->second);
  }

  
  // Adding periphery:
  double w;
  for(vector<string>::iterator it = peripheryIds.begin();  it != peripheryIds.end(); it++) {
    w = 1.0;
    if(peripheryWeight.find(*it) != peripheryWeight.end()) {
      w = peripheryWeight[*it];
    }
    this->addPeripheryConstraint(*it,w);
  }

  // Adding radial:
  for(vector<string>::iterator it = radialIds.begin();  it != radialIds.end(); it++) {
    this->addBoundaryConstraint(*it, radialDistInfo[*it]);
  }

  // Adding center contraint:
  for(vector<string>::iterator it = centerIds.begin(); it != centerIds.end(); it++) {
    w = 1.0;
    if(centerWeight.find(*it) != centerWeight.end()) {
      w = centerWeight[*it];
    }    
    this->addCenterConstraint(*it,w);
  }

  // Assert all interactions specified twice:

  //assert(interactionSpecifiedSymmetricly(interactionIds));
  if(!interactionSpecifiedSymmetricly(interactionIds))
  {
    throw std::runtime_error("Advanced option: Edge column is not symmetrical for one or more beads. Interacting beads have to be specified twice in the corresponding edge column with the same information.");
  }
  //assert(interactionSpecifiedSymmetricly(interactionDistanceIds));
  if(!interactionSpecifiedSymmetricly(interactionDistanceIds))
  {
    throw std::runtime_error("Advanced option: Edge column is not symmetrical for one or more beads. Interacting beads have to be specified twice in the corresponding edge column with the same information.");
  }
  //assert(interactionSpecifiedSymmetricly(interactionLowerDistanceIds));
  if(!interactionSpecifiedSymmetricly(interactionLowerDistanceIds))
  {
    throw std::runtime_error("Advanced option: Edge column is not symmetrical for one or more beads. Interacting beads have to be specified twice in the corresponding edge column with the same boundary information [0,1,.].");
  }

  if(!interactionSpecifiedSymmetricly(interactionUpperDistanceIds))
  {
    throw std::runtime_error("Advanced option: Edge column is not symmetrical for one or more beads. Interacting beads have to be specified twice in the corresponding edge column with the same boundary information [0,1,.].");
  }

  // Assert all distances and weights specified (equally) twice:
  if(!interactionWeightsSpecifiedSymmetricly(distInfo))
  {
    throw std::runtime_error("Advanced option: Optimal distance specified is not the same for interacting beads. Please verify the edge column.");
  }
  if(!interactionWeightsSpecifiedSymmetricly(weightInfo))
  {
    throw std::runtime_error("Advanced option: Weight specified is not the same for interacting beads. Please verify the edge column.");
  }

  
  
  // Initialize structures randomly:
  
  this->resetAllChromosomes(1000); //, true);

  uint N=this->getNumberOfBeads();
  cerr << "# chromosomes: " << chromosomes.size() << endl;
  cerr << "# beads: " << N << endl;
  cerr << "# interactions: " << interactionIds.size() / 2 << endl; // Divide by 2, since each interact. is specified twice.
  cerr << "# interactions with given weight: " << weightInfo.size()  / 2 << endl;
  cerr << "# non-bounded interactions with given distance: " << interactionDistanceIds.size()  / 2 << endl;
  cerr << "# upper-bounded interactions with given distance: " << interactionUpperDistanceIds.size()  / 2 << endl;
  cerr << "# lower-bounded interactions with given distance: " << interactionLowerDistanceIds.size()  / 2 << endl;
  cerr << "# periphery beads: " << peripheryIds.size() << endl;
  cerr << "# periphery beads (with weights): " << peripheryWeight.size() << endl;
  cerr << "# center beads: " << centerIds.size() << endl;
  cerr << "# center beads (with weights): " << centerWeight.size() << endl;  

  }

// Assembly:
subq $0xec148, %rsp          # imm = 0xEC148
movq %rsi, 0x658(%rsp)
movb %dl, %al
movq %rdi, 0xec140(%rsp)
movq %rsi, 0xec138(%rsp)
andb $0x1, %al
movb %al, 0xec137(%rsp)
movsd %xmm0, 0xec128(%rsp)
movq 0xec140(%rsp), %rax
movq %rax, 0x650(%rsp)
leaq 0xec108(%rsp), %rdi
callq 0x8670
movq 0x658(%rsp), %rdi
callq 0x8220
movq %rax, %rsi
leaq 0xebf00(%rsp), %rdi
movl $0x8, %edx
callq 0x88c0
jmp 0x209a4
movl $0x0, 0xebef0(%rsp)
leaq 0xebf00(%rsp), %rdi
callq 0x8770
movb %al, 0x64f(%rsp)
jmp 0x209c5
movb 0x64f(%rsp), %al
testb $0x1, %al
jne 0x20a74
jmp 0x209d6
movl $0x10, %edi
callq 0x8280
movq %rax, %rdi
movq %rdi, %rax
movq %rax, 0x640(%rsp)
leaq 0x3017f(%rip), %rsi     # 0x50b74
callq 0x8200
jmp 0x209fc
movq 0x640(%rsp), %rdi
movq 0x495e5(%rip), %rsi     # 0x69ff0
movq 0x49566(%rip), %rdx     # 0x69f78
callq 0x8820
jmp 0x25e65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x25e4b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x25e3e
movq 0x640(%rsp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
callq 0x83a0
jmp 0x25e3e
leaq 0xebed8(%rsp), %rdi
callq 0xc560
leaq 0xebea8(%rsp), %rdi
callq 0x28df0
leaq 0xebe78(%rsp), %rdi
callq 0xc630
leaq 0xebe60(%rsp), %rdi
callq 0xc560
leaq 0xebe48(%rsp), %rdi
callq 0xc560
leaq 0xebe30(%rsp), %rdi
callq 0xc560
leaq 0xebe18(%rsp), %rdi
callq 0x28e00
leaq 0xebe00(%rsp), %rdi
callq 0x28e00
leaq 0xebde8(%rsp), %rdi
callq 0x28e00
leaq 0xebdd0(%rsp), %rdi
callq 0x28e00
leaq 0xebda0(%rsp), %rdi
callq 0x28e10
leaq 0xebd70(%rsp), %rdi
callq 0x28e20
leaq 0xebd40(%rsp), %rdi
callq 0x28e10
leaq 0xebd10(%rsp), %rdi
callq 0x28e20
leaq 0xebce0(%rsp), %rdi
callq 0x28e20
movb $0x0, 0xebcd7(%rsp)
movb $0x0, 0xebcd6(%rsp)
movb $0x0, 0xebcd5(%rsp)
movb $0x0, 0xebcd4(%rsp)
leaq 0xebf00(%rsp), %rdi
leaq 0xec108(%rsp), %rsi
callq 0x80d0
movq %rax, 0x638(%rsp)
jmp 0x20b76
movq 0x638(%rsp), %rdi
movq (%rdi), %rax
movq -0x18(%rax), %rax
addq %rax, %rdi
callq 0x85e0
movb %al, 0x637(%rsp)
jmp 0x20b96
movb 0x637(%rsp), %al
testb $0x1, %al
jne 0x20ba6
jmp 0x24573
movl 0xebef0(%rsp), %eax
incl %eax
movl %eax, 0xebef0(%rsp)
xorl %eax, %eax
movl %eax, %edx
leaq 0xebcb0(%rsp), %rdi
leaq 0xec108(%rsp), %rsi
movl $0x3, %ecx
callq 0x84c0
jmp 0x20bd6
leaq 0x2ffbf(%rip), %rsi     # 0x50b9c
leaq 0xebcb0(%rsp), %rdi
callq 0x28560
movb %al, 0x636(%rsp)
jmp 0x20bf3
leaq 0xebcb0(%rsp), %rdi
callq 0x8998
movb 0x636(%rsp), %al
testb $0x1, %al
jne 0x20c10
jmp 0x20f53
leaq 0xebc78(%rsp), %rdi
leaq 0xec108(%rsp), %rsi
movl $0x3, %edx
movq $-0x1, %rcx
callq 0x84c0
jmp 0x20c33
leaq 0xebc98(%rsp), %rdi
leaq 0xebc78(%rsp), %rsi
movl $0x9, %edx
callq 0xaaf0
jmp 0x20c4f
leaq 0xebed8(%rsp), %rdi
movq %rdi, 0x620(%rsp)
leaq 0xebc98(%rsp), %rsi
movq %rsi, 0x618(%rsp)
callq 0x28e30
movq 0x618(%rsp), %rdi
callq 0xc570
leaq 0xebc78(%rsp), %rdi
callq 0x8998
movq 0x620(%rsp), %rdi
callq 0x11f10
movq 0x620(%rsp), %rdi
movq %rax, 0xebc68(%rsp)
callq 0x11d80
movq %rax, 0xebc60(%rsp)
movq 0xebc68(%rsp), %rdi
movq 0xebc60(%rsp), %rsi
leaq 0x2fed1(%rip), %rdx     # 0x50ba0
callq 0x28eb0
movq %rax, 0x628(%rsp)
jmp 0x20cde
movq 0x628(%rsp), %rax
movq %rax, 0xebc70(%rsp)
leaq 0xebed8(%rsp), %rdi
movq %rdi, 0x608(%rsp)
callq 0x11d80
movq %rax, 0xebc58(%rsp)
leaq 0xebc70(%rsp), %rdi
leaq 0xebc58(%rsp), %rsi
callq 0x28e70
movq 0x608(%rsp), %rdi
movb %al, 0xebcd7(%rsp)
callq 0x11f10
movq 0x608(%rsp), %rdi
movq %rax, 0xebc48(%rsp)
callq 0x11d80
movq %rax, 0xebc40(%rsp)
movq 0xebc48(%rsp), %rdi
movq 0xebc40(%rsp), %rsi
leaq 0x2fe42(%rip), %rdx     # 0x50baa
callq 0x28f10
movq %rax, 0x610(%rsp)
jmp 0x20d77
movq 0x610(%rsp), %rax
movq %rax, 0xebc50(%rsp)
leaq 0xebed8(%rsp), %rdi
movq %rdi, 0x5f8(%rsp)
callq 0x11d80
movq %rax, 0xebc38(%rsp)
leaq 0xebc50(%rsp), %rdi
leaq 0xebc38(%rsp), %rsi
callq 0x28e70
movq 0x5f8(%rsp), %rdi
movb %al, 0xebcd6(%rsp)
callq 0x11f10
movq 0x5f8(%rsp), %rdi
movq %rax, 0xebc28(%rsp)
callq 0x11d80
movq %rax, 0xebc20(%rsp)
movq 0xebc28(%rsp), %rdi
movq 0xebc20(%rsp), %rsi
leaq 0x2fdaf(%rip), %rdx     # 0x50bb0
callq 0x28f10
movq %rax, 0x600(%rsp)
jmp 0x20e10
movq 0x600(%rsp), %rax
movq %rax, 0xebc30(%rsp)
leaq 0xebed8(%rsp), %rdi
movq %rdi, 0x5e8(%rsp)
callq 0x11d80
movq %rax, 0xebc18(%rsp)
leaq 0xebc30(%rsp), %rdi
leaq 0xebc18(%rsp), %rsi
callq 0x28e70
movq 0x5e8(%rsp), %rdi
movb %al, 0xebcd5(%rsp)
callq 0x11f10
movq 0x5e8(%rsp), %rdi
movq %rax, 0xebc08(%rsp)
callq 0x11d80
movq %rax, 0xebc00(%rsp)
movq 0xebc08(%rsp), %rdi
movq 0xebc00(%rsp), %rsi
leaq 0x2fd1c(%rip), %rdx     # 0x50bb6
callq 0x28f70
movq %rax, 0x5f0(%rsp)
jmp 0x20ea9
movq 0x5f0(%rsp), %rax
movq %rax, 0xebc10(%rsp)
leaq 0xebed8(%rsp), %rdi
callq 0x11d80
movq %rax, 0xebbf8(%rsp)
leaq 0xebc10(%rsp), %rdi
leaq 0xebbf8(%rsp), %rsi
callq 0x28e70
andb $0x1, %al
movb %al, 0xebcd4(%rsp)
jmp 0x20f53
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x25d7b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0xebcb0(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0xebc78(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
xorl %eax, %eax
movl %eax, %edx
leaq 0xebbd8(%rsp), %rdi
leaq 0xec108(%rsp), %rsi
movl $0x1, %ecx
callq 0x84c0
jmp 0x20f73
leaq 0x2e18f(%rip), %rsi     # 0x4f109
leaq 0xebbd8(%rsp), %rdi
callq 0x28560
movb %al, 0x5e7(%rsp)
jmp 0x20f90
leaq 0xebbd8(%rsp), %rdi
callq 0x8998
movb 0x5e7(%rsp), %al
testb $0x1, %al
jne 0x20faa
jmp 0x20fd5
jmp 0x20b57
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0xebbd8(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
testb $0x1, 0xebcd7(%rsp)
je 0x21013
movq 0x650(%rsp), %rax
testb $0x1, 0xa90(%rax)
je 0x20ff2
jmp 0x21011
leaq 0x2f9f0(%rip), %rdi     # 0x509e9
leaq 0x2f6cf(%rip), %rsi     # 0x506cf
movl $0x205, %edx            # imm = 0x205
leaq 0x2fbb1(%rip), %rcx     # 0x50bbd
callq 0x8340
jmp 0x21013
leaq 0xebbc0(%rsp), %rdi
leaq 0xec108(%rsp), %rsi
movl $0x9, %edx
callq 0xaaf0
jmp 0x2102f
leaq 0xebb78(%rsp), %rdi
leaq 0xebed8(%rsp), %rsi
callq 0x28fd0
jmp 0x21046
leaq 0xebb60(%rsp), %rdi
leaq 0xebbc0(%rsp), %rsi
callq 0x28fd0
jmp 0x2105d
leaq 0xebb90(%rsp), %rdi
leaq 0xebb78(%rsp), %rsi
leaq 0xebb60(%rsp), %rdx
callq 0xad40
jmp 0x2107c
leaq 0xebb60(%rsp), %rdi
callq 0xc570
leaq 0xebb78(%rsp), %rdi
callq 0xc570
leaq 0xebb37(%rsp), %rdi
movq %rdi, 0x5d8(%rsp)
callq 0x8880
movq 0x5d8(%rsp), %rdx
leaq 0x2fb30(%rip), %rsi     # 0x50bea
leaq 0xebb38(%rsp), %rdi
callq 0x1b100
jmp 0x210c9
leaq 0xebb90(%rsp), %rdi
leaq 0xebb38(%rsp), %rsi
callq 0x29120
movq %rax, 0x5d0(%rsp)
jmp 0x210e8
movq 0x5d0(%rsp), %rsi
leaq 0xebea8(%rsp), %rdi
callq 0x290f0
movq %rax, 0x5c8(%rsp)
jmp 0x21107
movq 0x5c8(%rsp), %rax
movq %rax, 0xebb58(%rsp)
leaq 0xebea8(%rsp), %rdi
callq 0x29210
movq %rax, 0xebb28(%rsp)
leaq 0xebb58(%rsp), %rdi
leaq 0xebb28(%rsp), %rsi
callq 0x290d0
movb %al, 0x5c7(%rsp)
leaq 0xebb38(%rsp), %rdi
callq 0x8998
leaq 0xebb37(%rsp), %rdi
callq 0x8500
movb 0x5c7(%rsp), %al
testb $0x1, %al
jne 0x21172
jmp 0x2143a
leaq 0x767b7(%rsp), %rdi
movq %rdi, 0x5b8(%rsp)
callq 0x8880
movq 0x5b8(%rsp), %rdx
leaq 0x2fa54(%rip), %rsi     # 0x50bea
leaq 0x767b8(%rsp), %rdi
callq 0x1b100
jmp 0x211a5
leaq 0xebb90(%rsp), %rdi
leaq 0x767b8(%rsp), %rsi
callq 0x29120
movq %rax, 0x5b0(%rsp)
jmp 0x211c4
movq 0x5b0(%rsp), %rsi
leaq 0x767d8(%rsp), %rdi
callq 0x8230
jmp 0x211db
leaq 0x767f8(%rsp), %rdi
leaq 0x767d8(%rsp), %rsi
callq 0x15240
jmp 0x211f2
leaq 0x767d8(%rsp), %rdi
callq 0x8998
leaq 0x767b8(%rsp), %rdi
callq 0x8998
leaq 0x767b7(%rsp), %rdi
callq 0x8500
leaq 0x7678f(%rsp), %rdi
movq %rdi, 0x5a8(%rsp)
callq 0x8880
movq 0x5a8(%rsp), %rdx
leaq 0x2f9ad(%rip), %rsi     # 0x50bea
leaq 0x76790(%rsp), %rdi
callq 0x1b100
jmp 0x2124c
leaq 0xebb90(%rsp), %rdi
leaq 0x76790(%rsp), %rsi
callq 0x29120
movq %rax, 0x5a0(%rsp)
jmp 0x2126b
movq 0x5a0(%rsp), %rsi
leaq 0xebea8(%rsp), %rdi
callq 0x29240
movq %rax, 0x598(%rsp)
jmp 0x2128a
movq 0x598(%rsp), %rdi
leaq 0x767f8(%rsp), %rsi
callq 0x29330
jmp 0x212a1
leaq 0x76790(%rsp), %rdi
callq 0x8998
leaq 0x7678f(%rsp), %rdi
callq 0x8500
leaq 0x767f8(%rsp), %rdi
callq 0x29390
jmp 0x2143a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24561
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x2131d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0xebb60(%rsp), %rdi
callq 0xc570
leaq 0xebb78(%rsp), %rdi
callq 0xc570
jmp 0x24561
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21366
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0xebb38(%rsp), %rdi
callq 0x8998
leaq 0xebb37(%rsp), %rdi
callq 0x8500
jmp 0x24554
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x213d2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x213c5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x767d8(%rsp), %rdi
callq 0x8998
leaq 0x767b8(%rsp), %rdi
callq 0x8998
leaq 0x767b7(%rsp), %rdi
callq 0x8500
jmp 0x24554
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x2141b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76790(%rsp), %rdi
callq 0x8998
leaq 0x7678f(%rsp), %rdi
callq 0x8500
leaq 0x767f8(%rsp), %rdi
callq 0x29390
jmp 0x24554
movsd 0x2f186(%rip), %xmm0    # 0x505c8
movsd %xmm0, 0xebcd8(%rsp)
testb $0x1, 0xebcd4(%rsp)
je 0x2153a
leaq 0x76767(%rsp), %rdi
movq %rdi, 0x590(%rsp)
callq 0x8880
movq 0x590(%rsp), %rdx
leaq 0x2f739(%rip), %rsi     # 0x50bb6
leaq 0x76768(%rsp), %rdi
callq 0x1b100
jmp 0x2148c
leaq 0xebb90(%rsp), %rdi
leaq 0x76768(%rsp), %rsi
callq 0x29120
movq %rax, 0x588(%rsp)
jmp 0x214ab
movq 0x588(%rsp), %rdi
callq 0x293c0
movsd %xmm0, 0x580(%rsp)
jmp 0x214c3
movsd 0x580(%rsp), %xmm0
movsd %xmm0, 0xebcd8(%rsp)
leaq 0x76768(%rsp), %rdi
callq 0x8998
leaq 0x76767(%rsp), %rdi
callq 0x8500
jmp 0x2153a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21528
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76768(%rsp), %rdi
callq 0x8998
leaq 0x76767(%rsp), %rdi
callq 0x8500
jmp 0x24554
leaq 0x766df(%rsp), %rdi
movq %rdi, 0x578(%rsp)
callq 0x8880
movq 0x578(%rsp), %rdx
leaq 0x2f692(%rip), %rsi     # 0x50bf0
leaq 0x766e0(%rsp), %rdi
callq 0x1b100
jmp 0x2156d
leaq 0xebb90(%rsp), %rdi
leaq 0x766e0(%rsp), %rsi
callq 0x29120
movq %rax, 0x570(%rsp)
jmp 0x2158c
movq 0x570(%rsp), %rdi
callq 0x29400
movl %eax, 0x56c(%rsp)
jmp 0x215a2
leaq 0x766b7(%rsp), %rdi
movq %rdi, 0x560(%rsp)
callq 0x8880
movq 0x560(%rsp), %rdx
leaq 0x2f630(%rip), %rsi     # 0x50bf6
leaq 0x766b8(%rsp), %rdi
callq 0x1b100
jmp 0x215d5
leaq 0xebb90(%rsp), %rdi
leaq 0x766b8(%rsp), %rsi
callq 0x29120
movq %rax, 0x558(%rsp)
jmp 0x215f4
movq 0x558(%rsp), %rdi
callq 0x29400
movl %eax, 0x554(%rsp)
jmp 0x2160a
movsd 0xebcd8(%rsp), %xmm0
movsd %xmm0, 0x540(%rsp)
leaq 0x7666f(%rsp), %rdi
movq %rdi, 0x548(%rsp)
callq 0x8880
movq 0x548(%rsp), %rdx
leaq 0x2ef6e(%rip), %rsi     # 0x505ae
leaq 0x76670(%rsp), %rdi
callq 0x1b100
jmp 0x2164f
leaq 0xebb90(%rsp), %rdi
leaq 0x76670(%rsp), %rsi
callq 0x29120
movq %rax, 0x538(%rsp)
jmp 0x2166e
movq 0x538(%rsp), %rsi
leaq 0x76690(%rsp), %rdi
callq 0x8230
jmp 0x21685
movsd 0x540(%rsp), %xmm0
movl 0x554(%rsp), %edx
movl 0x56c(%rsp), %esi
leaq 0x76700(%rsp), %rdi
leaq 0x76690(%rsp), %rcx
callq 0x14cc0
jmp 0x216b3
leaq 0x76690(%rsp), %rdi
callq 0x8998
leaq 0x76670(%rsp), %rdi
callq 0x8998
leaq 0x7666f(%rsp), %rdi
callq 0x8500
leaq 0x766b8(%rsp), %rdi
callq 0x8998
leaq 0x766b7(%rsp), %rdi
callq 0x8500
leaq 0x766e0(%rsp), %rdi
callq 0x8998
leaq 0x766df(%rsp), %rdi
callq 0x8500
leaq 0x76700(%rsp), %rdi
xorps %xmm2, %xmm2
movaps %xmm2, %xmm0
movaps %xmm2, %xmm1
callq 0x14dc0
jmp 0x21726
leaq 0x76647(%rsp), %rdi
movq %rdi, 0x530(%rsp)
callq 0x8880
movq 0x530(%rsp), %rdx
leaq 0x2f4a0(%rip), %rsi     # 0x50bea
leaq 0x76648(%rsp), %rdi
callq 0x1b100
jmp 0x21759
leaq 0xebb90(%rsp), %rdi
leaq 0x76648(%rsp), %rsi
callq 0x29120
movq %rax, 0x528(%rsp)
jmp 0x21778
leaq 0x7661f(%rsp), %rdi
movq %rdi, 0x520(%rsp)
callq 0x8880
movq 0x520(%rsp), %rdx
leaq 0x2ee12(%rip), %rsi     # 0x505ae
leaq 0x76620(%rsp), %rdi
callq 0x1b100
jmp 0x217ab
leaq 0xebb90(%rsp), %rdi
leaq 0x76620(%rsp), %rsi
callq 0x29120
movq %rax, 0x518(%rsp)
jmp 0x217ca
movq 0x518(%rsp), %rsi
leaq 0xebe78(%rsp), %rdi
callq 0xc660
movq %rax, 0x510(%rsp)
jmp 0x217e9
movq 0x528(%rsp), %rsi
movq 0x510(%rsp), %rdi
callq 0x8060
jmp 0x21800
leaq 0x76620(%rsp), %rdi
callq 0x8998
leaq 0x7661f(%rsp), %rdi
callq 0x8500
leaq 0x76648(%rsp), %rdi
callq 0x8998
leaq 0x76647(%rsp), %rdi
callq 0x8500
testb $0x1, 0xebcd5(%rsp)
je 0x21b8c
leaq 0x765df(%rsp), %rdi
movq %rdi, 0x508(%rsp)
callq 0x8880
movq 0x508(%rsp), %rdx
leaq 0x2f34a(%rip), %rsi     # 0x50bb0
leaq 0x765e0(%rsp), %rdi
callq 0x1b100
jmp 0x21875
leaq 0xebb90(%rsp), %rdi
leaq 0x765e0(%rsp), %rsi
callq 0x29120
movq %rax, 0x500(%rsp)
jmp 0x21894
movq 0x500(%rsp), %rsi
leaq 0x76600(%rsp), %rdi
movl $0x2c, %edx
callq 0xaaf0
jmp 0x218b0
leaq 0x765e0(%rsp), %rdi
callq 0x8998
leaq 0x765df(%rsp), %rdi
callq 0x8500
xorl %eax, %eax
movl %eax, %esi
leaq 0x76600(%rsp), %rdi
callq 0xc640
movq %rax, %rdi
callq 0x29440
movss %xmm0, 0x4fc(%rsp)
jmp 0x218ee
leaq 0x76600(%rsp), %rdi
movl $0x1, %esi
callq 0xc640
movq %rax, %rdi
callq 0x29440
movss %xmm0, 0x4f8(%rsp)
jmp 0x21913
leaq 0x76600(%rsp), %rdi
movl $0x2, %esi
callq 0xc640
movq %rax, %rdi
callq 0x29440
movss %xmm0, 0x4f4(%rsp)
jmp 0x21938
movss 0x4f4(%rsp), %xmm2
movss 0x4f8(%rsp), %xmm1
movss 0x4fc(%rsp), %xmm0
leaq 0x76700(%rsp), %rdi
callq 0x14ed0
jmp 0x21962
leaq 0x76600(%rsp), %rdi
callq 0xc570
jmp 0x21b8c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21a63
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21a56
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21a49
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21a3c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21a2f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21a22
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76690(%rsp), %rdi
callq 0x8998
leaq 0x76670(%rsp), %rdi
callq 0x8998
leaq 0x7666f(%rsp), %rdi
callq 0x8500
leaq 0x766b8(%rsp), %rdi
callq 0x8998
leaq 0x766b7(%rsp), %rdi
callq 0x8500
leaq 0x766e0(%rsp), %rdi
callq 0x8998
leaq 0x766df(%rsp), %rdi
callq 0x8500
jmp 0x24554
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21b0b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21afe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21af1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76620(%rsp), %rdi
callq 0x8998
leaq 0x7661f(%rsp), %rdi
callq 0x8500
leaq 0x76648(%rsp), %rdi
callq 0x8998
leaq 0x76647(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x21b54
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x765e0(%rsp), %rdi
callq 0x8998
leaq 0x765df(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76600(%rsp), %rdi
callq 0xc570
jmp 0x24547
leaq 0x765b7(%rsp), %rdi
movq %rdi, 0x4e8(%rsp)
callq 0x8880
movq 0x4e8(%rsp), %rdx
leaq 0x2f03a(%rip), %rsi     # 0x50bea
leaq 0x765b8(%rsp), %rdi
callq 0x1b100
jmp 0x21bbf
leaq 0xebb90(%rsp), %rdi
leaq 0x765b8(%rsp), %rsi
callq 0x29120
movq %rax, 0x4e0(%rsp)
jmp 0x21bde
movq 0x4e0(%rsp), %rsi
leaq 0xebea8(%rsp), %rdi
callq 0x29240
movq %rax, 0x4d8(%rsp)
jmp 0x21bfd
leaq 0x76550(%rsp), %rdi
leaq 0x76700(%rsp), %rsi
callq 0x18a70
jmp 0x21c14
movq 0x4d8(%rsp), %rdi
leaq 0x76550(%rsp), %rsi
callq 0x15300
jmp 0x21c2b
leaq 0x76550(%rsp), %rdi
callq 0x179e0
leaq 0x765b8(%rsp), %rdi
callq 0x8998
leaq 0x765b7(%rsp), %rdi
callq 0x8500
movb 0xebcd7(%rsp), %cl
movb $0x0, 0x7652e(%rsp)
movb $0x0, 0x7652d(%rsp)
xorl %eax, %eax
testb $0x1, %cl
movb %al, 0x4d7(%rsp)
je 0x21d0a
leaq 0x7652f(%rsp), %rdi
movq %rdi, 0x4c8(%rsp)
callq 0x8880
movq 0x4c8(%rsp), %rdx
movb $0x1, 0x7652e(%rsp)
leaq 0x2eef9(%rip), %rsi     # 0x50ba0
leaq 0x76530(%rsp), %rdi
callq 0x1b100
jmp 0x21cb6
movb $0x1, 0x7652d(%rsp)
leaq 0xebb90(%rsp), %rdi
leaq 0x76530(%rsp), %rsi
callq 0x29120
movq %rax, 0x4c0(%rsp)
jmp 0x21cdd
movq 0x4c0(%rsp), %rdi
leaq 0x2efc9(%rip), %rsi     # 0x50cb5
callq 0x29480
movb %al, 0x4bf(%rsp)
jmp 0x21cfa
movb 0x4bf(%rsp), %al
movb %al, 0x4d7(%rsp)
jmp 0x21d0a
movb 0x4d7(%rsp), %al
movb %al, 0x4be(%rsp)
testb $0x1, 0x7652d(%rsp)
jne 0x21d24
jmp 0x21d31
leaq 0x76530(%rsp), %rdi
callq 0x8998
testb $0x1, 0x7652e(%rsp)
jne 0x21d3d
jmp 0x21d4a
leaq 0x7652f(%rsp), %rdi
callq 0x8500
movb 0x4be(%rsp), %al
testb $0x1, %al
jne 0x21d5a
jmp 0x22f69
leaq 0x76507(%rsp), %rdi
movq %rdi, 0x4b0(%rsp)
callq 0x8880
movq 0x4b0(%rsp), %rdx
leaq 0x2ee22(%rip), %rsi     # 0x50ba0
leaq 0x76508(%rsp), %rdi
callq 0x1b100
jmp 0x21d8d
leaq 0xebb90(%rsp), %rdi
leaq 0x76508(%rsp), %rsi
callq 0x29120
movq %rax, 0x4a8(%rsp)
jmp 0x21dac
movq 0x4a8(%rsp), %rdi
leaq 0x2ee3f(%rip), %rsi     # 0x50bfa
xorl %eax, %eax
movl %eax, %edx
callq 0x8950
movq %rax, 0x4a0(%rsp)
leaq 0x76508(%rsp), %rdi
callq 0x8998
leaq 0x76507(%rsp), %rdi
callq 0x8500
movq 0x4a0(%rsp), %rax
cmpq $-0x1, %rax
je 0x22897
leaq 0x764c7(%rsp), %rdi
movq %rdi, 0x498(%rsp)
callq 0x8880
movq 0x498(%rsp), %rdx
leaq 0x2ed84(%rip), %rsi     # 0x50ba0
leaq 0x764c8(%rsp), %rdi
callq 0x1b100
jmp 0x21e2b
leaq 0xebb90(%rsp), %rdi
leaq 0x764c8(%rsp), %rsi
callq 0x29120
movq %rax, 0x490(%rsp)
jmp 0x21e4a
movq 0x490(%rsp), %rsi
leaq 0x764e8(%rsp), %rdi
movl $0x2c, %edx
callq 0xaaf0
jmp 0x21e66
xorl %eax, %eax
movl %eax, %esi
leaq 0x764e8(%rsp), %rdi
callq 0xc640
movq %rax, %rdi
leaq 0x2daa4(%rip), %rsi     # 0x4f925
callq 0x28560
movb %al, 0x48f(%rsp)
jmp 0x21e8f
leaq 0x764e8(%rsp), %rdi
callq 0xc570
leaq 0x764c8(%rsp), %rdi
callq 0x8998
leaq 0x764c7(%rsp), %rdi
callq 0x8500
movb 0x48f(%rsp), %al
testb $0x1, %al
jne 0x21ec6
jmp 0x2232a
leaq 0x7649f(%rsp), %rdi
movq %rdi, 0x480(%rsp)
callq 0x8880
movq 0x480(%rsp), %rdx
leaq 0x2e6c4(%rip), %rsi     # 0x505ae
leaq 0x764a0(%rsp), %rdi
callq 0x1b100
jmp 0x21ef9
leaq 0xebb90(%rsp), %rdi
leaq 0x764a0(%rsp), %rsi
callq 0x29120
movq %rax, 0x478(%rsp)
jmp 0x21f18
movq 0x478(%rsp), %rsi
leaq 0xebe60(%rsp), %rdi
callq 0xc4f0
jmp 0x21f2f
leaq 0x764a0(%rsp), %rdi
callq 0x8998
leaq 0x7649f(%rsp), %rdi
callq 0x8500
leaq 0x7645f(%rsp), %rdi
movq %rdi, 0x470(%rsp)
callq 0x8880
movq 0x470(%rsp), %rdx
leaq 0x2ec33(%rip), %rsi     # 0x50ba0
leaq 0x76460(%rsp), %rdi
callq 0x1b100
jmp 0x21f7c
leaq 0xebb90(%rsp), %rdi
leaq 0x76460(%rsp), %rsi
callq 0x29120
movq %rax, 0x468(%rsp)
jmp 0x21f9b
movq 0x468(%rsp), %rsi
leaq 0x76480(%rsp), %rdi
movl $0x2c, %edx
callq 0xaaf0
jmp 0x21fb7
leaq 0x76480(%rsp), %rdi
movl $0x1, %esi
callq 0xc640
movq %rax, %rdi
callq 0x293c0
movsd %xmm0, 0x460(%rsp)
jmp 0x21fdc
leaq 0x76437(%rsp), %rdi
movq %rdi, 0x458(%rsp)
callq 0x8880
movq 0x458(%rsp), %rdx
leaq 0x2e5ae(%rip), %rsi     # 0x505ae
leaq 0x76438(%rsp), %rdi
callq 0x1b100
jmp 0x2200f
leaq 0xebb90(%rsp), %rdi
leaq 0x76438(%rsp), %rsi
callq 0x29120
movq %rax, 0x450(%rsp)
jmp 0x2202e
movq 0x450(%rsp), %rsi
leaq 0xebd10(%rsp), %rdi
callq 0x294b0
movq %rax, 0x448(%rsp)
jmp 0x2204d
movq 0x448(%rsp), %rax
movsd 0x460(%rsp), %xmm0
movsd %xmm0, (%rax)
leaq 0x76438(%rsp), %rdi
callq 0x8998
leaq 0x76437(%rsp), %rdi
callq 0x8500
leaq 0x76480(%rsp), %rdi
callq 0xc570
leaq 0x76460(%rsp), %rdi
callq 0x8998
leaq 0x7645f(%rsp), %rdi
callq 0x8500
jmp 0x22895
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22102
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x220f5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76550(%rsp), %rdi
callq 0x179e0
leaq 0x765b8(%rsp), %rdi
callq 0x8998
leaq 0x765b7(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22159
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
testb $0x1, 0x7652d(%rsp)
jne 0x2214a
jmp 0x22157
leaq 0x76530(%rsp), %rdi
callq 0x8998
jmp 0x22159
testb $0x1, 0x7652e(%rsp)
jne 0x22165
jmp 0x22172
leaq 0x7652f(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x221ae
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76508(%rsp), %rdi
callq 0x8998
leaq 0x76507(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x2221a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x2220d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x764e8(%rsp), %rdi
callq 0xc570
leaq 0x764c8(%rsp), %rdi
callq 0x8998
leaq 0x764c7(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22263
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x764a0(%rsp), %rdi
callq 0x8998
leaq 0x7649f(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22318
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x2230b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x222fe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x222f1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76438(%rsp), %rdi
callq 0x8998
leaq 0x76437(%rsp), %rdi
callq 0x8500
leaq 0x76480(%rsp), %rdi
callq 0xc570
leaq 0x76460(%rsp), %rdi
callq 0x8998
leaq 0x7645f(%rsp), %rdi
callq 0x8500
jmp 0x24547
leaq 0x763f7(%rsp), %rdi
movq %rdi, 0x440(%rsp)
callq 0x8880
movq 0x440(%rsp), %rdx
leaq 0x2e852(%rip), %rsi     # 0x50ba0
leaq 0x763f8(%rsp), %rdi
callq 0x1b100
jmp 0x2235d
leaq 0xebb90(%rsp), %rdi
leaq 0x763f8(%rsp), %rsi
callq 0x29120
movq %rax, 0x438(%rsp)
jmp 0x2237c
movq 0x438(%rsp), %rsi
leaq 0x76418(%rsp), %rdi
movl $0x2c, %edx
callq 0xaaf0
jmp 0x22398
xorl %eax, %eax
movl %eax, %esi
leaq 0x76418(%rsp), %rdi
callq 0xc640
movq %rax, %rdi
leaq 0x2cd1d(%rip), %rsi     # 0x4f0d0
callq 0x28560
movb %al, 0x437(%rsp)
jmp 0x223c1
leaq 0x76418(%rsp), %rdi
callq 0xc570
leaq 0x763f8(%rsp), %rdi
callq 0x8998
leaq 0x763f7(%rsp), %rdi
callq 0x8500
movb 0x437(%rsp), %al
testb $0x1, %al
jne 0x223f8
jmp 0x22744
leaq 0x763cf(%rsp), %rdi
movq %rdi, 0x428(%rsp)
callq 0x8880
movq 0x428(%rsp), %rdx
leaq 0x2e192(%rip), %rsi     # 0x505ae
leaq 0x763d0(%rsp), %rdi
callq 0x1b100
jmp 0x2242b
leaq 0xebb90(%rsp), %rdi
leaq 0x763d0(%rsp), %rsi
callq 0x29120
movq %rax, 0x420(%rsp)
jmp 0x2244a
movq 0x420(%rsp), %rsi
leaq 0xebe48(%rsp), %rdi
callq 0xc4f0
jmp 0x22461
leaq 0x763d0(%rsp), %rdi
callq 0x8998
leaq 0x763cf(%rsp), %rdi
callq 0x8500
leaq 0x7638f(%rsp), %rdi
movq %rdi, 0x418(%rsp)
callq 0x8880
movq 0x418(%rsp), %rdx
leaq 0x2e701(%rip), %rsi     # 0x50ba0
leaq 0x76390(%rsp), %rdi
callq 0x1b100
jmp 0x224ae
leaq 0xebb90(%rsp), %rdi
leaq 0x76390(%rsp), %rsi
callq 0x29120
movq %rax, 0x410(%rsp)
jmp 0x224cd
movq 0x410(%rsp), %rsi
leaq 0x763b0(%rsp), %rdi
movl $0x2c, %edx
callq 0xaaf0
jmp 0x224e9
leaq 0x763b0(%rsp), %rdi
movl $0x1, %esi
callq 0xc640
movq %rax, %rdi
callq 0x293c0
movsd %xmm0, 0x408(%rsp)
jmp 0x2250e
leaq 0x76367(%rsp), %rdi
movq %rdi, 0x400(%rsp)
callq 0x8880
movq 0x400(%rsp), %rdx
leaq 0x2e07c(%rip), %rsi     # 0x505ae
leaq 0x76368(%rsp), %rdi
callq 0x1b100
jmp 0x22541
leaq 0xebb90(%rsp), %rdi
leaq 0x76368(%rsp), %rsi
callq 0x29120
movq %rax, 0x3f8(%rsp)
jmp 0x22560
movq 0x3f8(%rsp), %rsi
leaq 0xebce0(%rsp), %rdi
callq 0x294b0
movq %rax, 0x3f0(%rsp)
jmp 0x2257f
movq 0x3f0(%rsp), %rax
movsd 0x408(%rsp), %xmm0
movsd %xmm0, (%rax)
leaq 0x76368(%rsp), %rdi
callq 0x8998
leaq 0x76367(%rsp), %rdi
callq 0x8500
leaq 0x763b0(%rsp), %rdi
callq 0xc570
leaq 0x76390(%rsp), %rdi
callq 0x8998
leaq 0x7638f(%rsp), %rdi
callq 0x8500
jmp 0x22893
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22634
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22627
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76418(%rsp), %rdi
callq 0xc570
leaq 0x763f8(%rsp), %rdi
callq 0x8998
leaq 0x763f7(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x2267d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x763d0(%rsp), %rdi
callq 0x8998
leaq 0x763cf(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22732
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22725
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22718
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x2270b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76368(%rsp), %rdi
callq 0x8998
leaq 0x76367(%rsp), %rdi
callq 0x8500
leaq 0x763b0(%rsp), %rdi
callq 0xc570
leaq 0x76390(%rsp), %rdi
callq 0x8998
leaq 0x7638f(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq 0x658(%rsp), %rsi
movl 0xebef0(%rsp), %eax
movl %eax, 0x3ec(%rsp)
leaq 0x76320(%rsp), %rdi
callq 0x8230
jmp 0x22769
movl 0x3ec(%rsp), %esi
leaq 0x76340(%rsp), %rdi
leaq 0x76320(%rsp), %rdx
callq 0xaec0
jmp 0x22787
leaq 0x76320(%rsp), %rdi
callq 0x8998
movb $0x1, 0x762ff(%rsp)
movl $0x10, %edi
callq 0x8280
movq %rax, 0x3e0(%rsp)
leaq 0x2e447(%rip), %rdx     # 0x50bfc
leaq 0x76300(%rsp), %rdi
leaq 0x76340(%rsp), %rsi
callq 0x28d20
jmp 0x227cc
movq 0x3e0(%rsp), %rdi
leaq 0x76300(%rsp), %rsi
callq 0x86d0
jmp 0x227e3
movq 0x3e0(%rsp), %rdi
movb $0x0, 0x762ff(%rsp)
movq 0x477ce(%rip), %rsi     # 0x69fc8
movq 0x4778f(%rip), %rdx     # 0x69f90
callq 0x8820
jmp 0x25e65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76320(%rsp), %rdi
callq 0x8998
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22868
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76300(%rsp), %rdi
callq 0x8998
testb $0x1, 0x762ff(%rsp)
jne 0x22874
jmp 0x22881
movq 0x3e0(%rsp), %rdi
callq 0x83a0
leaq 0x76340(%rsp), %rdi
callq 0x8998
jmp 0x24547
jmp 0x22895
jmp 0x22897
leaq 0x762d7(%rsp), %rdi
movq %rdi, 0x3d8(%rsp)
callq 0x8880
movq 0x3d8(%rsp), %rdx
leaq 0x2e2e5(%rip), %rsi     # 0x50ba0
leaq 0x762d8(%rsp), %rdi
callq 0x1b100
jmp 0x228ca
leaq 0xebb90(%rsp), %rdi
leaq 0x762d8(%rsp), %rsi
callq 0x29120
movq %rax, 0x3d0(%rsp)
jmp 0x228e9
movq 0x3d0(%rsp), %rdi
leaq 0x2d02d(%rip), %rsi     # 0x4f925
callq 0x28560
movb %al, 0x3cf(%rsp)
jmp 0x22906
leaq 0x762d8(%rsp), %rdi
callq 0x8998
leaq 0x762d7(%rsp), %rdi
callq 0x8500
movb 0x3cf(%rsp), %al
testb $0x1, %al
jne 0x22930
jmp 0x22a4a
leaq 0x762af(%rsp), %rdi
movq %rdi, 0x3c0(%rsp)
callq 0x8880
movq 0x3c0(%rsp), %rdx
leaq 0x2dc5a(%rip), %rsi     # 0x505ae
leaq 0x762b0(%rsp), %rdi
callq 0x1b100
jmp 0x22963
leaq 0xebb90(%rsp), %rdi
leaq 0x762b0(%rsp), %rsi
callq 0x29120
movq %rax, 0x3b8(%rsp)
jmp 0x22982
movq 0x3b8(%rsp), %rsi
leaq 0xebe60(%rsp), %rdi
callq 0xc4f0
jmp 0x22999
leaq 0x762b0(%rsp), %rdi
callq 0x8998
leaq 0x762af(%rsp), %rdi
callq 0x8500
jmp 0x22f67
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x229ef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x762d8(%rsp), %rdi
callq 0x8998
leaq 0x762d7(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22a38
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x762b0(%rsp), %rdi
callq 0x8998
leaq 0x762af(%rsp), %rdi
callq 0x8500
jmp 0x24547
leaq 0x76287(%rsp), %rdi
movq %rdi, 0x3b0(%rsp)
callq 0x8880
movq 0x3b0(%rsp), %rdx
leaq 0x2e132(%rip), %rsi     # 0x50ba0
leaq 0x76288(%rsp), %rdi
callq 0x1b100
jmp 0x22a7d
leaq 0xebb90(%rsp), %rdi
leaq 0x76288(%rsp), %rsi
callq 0x29120
movq %rax, 0x3a8(%rsp)
jmp 0x22a9c
movq 0x3a8(%rsp), %rdi
leaq 0x2c625(%rip), %rsi     # 0x4f0d0
callq 0x28560
movb %al, 0x3a7(%rsp)
jmp 0x22ab9
leaq 0x76288(%rsp), %rdi
callq 0x8998
leaq 0x76287(%rsp), %rdi
callq 0x8500
movb 0x3a7(%rsp), %al
testb $0x1, %al
jne 0x22ae3
jmp 0x22bfd
leaq 0x7625f(%rsp), %rdi
movq %rdi, 0x398(%rsp)
callq 0x8880
movq 0x398(%rsp), %rdx
leaq 0x2daa7(%rip), %rsi     # 0x505ae
leaq 0x76260(%rsp), %rdi
callq 0x1b100
jmp 0x22b16
leaq 0xebb90(%rsp), %rdi
leaq 0x76260(%rsp), %rsi
callq 0x29120
movq %rax, 0x390(%rsp)
jmp 0x22b35
movq 0x390(%rsp), %rsi
leaq 0xebe48(%rsp), %rdi
callq 0xc4f0
jmp 0x22b4c
leaq 0x76260(%rsp), %rdi
callq 0x8998
leaq 0x7625f(%rsp), %rdi
callq 0x8500
jmp 0x22f65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22ba2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76288(%rsp), %rdi
callq 0x8998
leaq 0x76287(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22beb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76260(%rsp), %rdi
callq 0x8998
leaq 0x7625f(%rsp), %rdi
callq 0x8500
jmp 0x24547
leaq 0x76237(%rsp), %rdi
movq %rdi, 0x388(%rsp)
callq 0x8880
movq 0x388(%rsp), %rdx
leaq 0x2df7f(%rip), %rsi     # 0x50ba0
leaq 0x76238(%rsp), %rdi
callq 0x1b100
jmp 0x22c30
leaq 0xebb90(%rsp), %rdi
leaq 0x76238(%rsp), %rsi
callq 0x29120
movq %rax, 0x380(%rsp)
jmp 0x22c4f
movq 0x380(%rsp), %rdi
leaq 0x2e057(%rip), %rsi     # 0x50cb5
callq 0x29480
movb %al, 0x37f(%rsp)
jmp 0x22c6c
leaq 0x76238(%rsp), %rdi
callq 0x8998
leaq 0x76237(%rsp), %rdi
callq 0x8500
movb 0x37f(%rsp), %al
testb $0x1, %al
jne 0x22c96
jmp 0x22f63
leaq 0x7620f(%rsp), %rdi
movq %rdi, 0x370(%rsp)
callq 0x8880
movq 0x370(%rsp), %rdx
leaq 0x2dee6(%rip), %rsi     # 0x50ba0
leaq 0x76210(%rsp), %rdi
callq 0x1b100
jmp 0x22cc9
leaq 0xebb90(%rsp), %rdi
leaq 0x76210(%rsp), %rsi
callq 0x29120
movq %rax, 0x368(%rsp)
jmp 0x22ce8
movq 0x368(%rsp), %rdi
callq 0x293c0
movsd %xmm0, 0x360(%rsp)
jmp 0x22d00
leaq 0x761e7(%rsp), %rdi
movq %rdi, 0x358(%rsp)
callq 0x8880
movq 0x358(%rsp), %rdx
leaq 0x2d88a(%rip), %rsi     # 0x505ae
leaq 0x761e8(%rsp), %rdi
callq 0x1b100
jmp 0x22d33
leaq 0xebb90(%rsp), %rdi
leaq 0x761e8(%rsp), %rsi
callq 0x29120
movq %rax, 0x350(%rsp)
jmp 0x22d52
movq 0x350(%rsp), %rsi
leaq 0xebd70(%rsp), %rdi
callq 0x294b0
movq %rax, 0x348(%rsp)
jmp 0x22d71
movq 0x348(%rsp), %rax
movsd 0x360(%rsp), %xmm0
movsd %xmm0, (%rax)
leaq 0x761e8(%rsp), %rdi
callq 0x8998
leaq 0x761e7(%rsp), %rdi
callq 0x8500
leaq 0x76210(%rsp), %rdi
callq 0x8998
leaq 0x7620f(%rsp), %rdi
callq 0x8500
leaq 0x761bf(%rsp), %rdi
movq %rdi, 0x340(%rsp)
callq 0x8880
movq 0x340(%rsp), %rdx
leaq 0x2d7d0(%rip), %rsi     # 0x505ae
leaq 0x761c0(%rsp), %rdi
callq 0x1b100
jmp 0x22ded
leaq 0xebb90(%rsp), %rdi
leaq 0x761c0(%rsp), %rsi
callq 0x29120
movq %rax, 0x338(%rsp)
jmp 0x22e0c
movq 0x338(%rsp), %rsi
leaq 0xebe30(%rsp), %rdi
callq 0xc4f0
jmp 0x22e23
leaq 0x761c0(%rsp), %rdi
callq 0x8998
leaq 0x761bf(%rsp), %rdi
callq 0x8500
jmp 0x22f63
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22e79
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76238(%rsp), %rdi
callq 0x8998
leaq 0x76237(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22f08
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22efb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22eee
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x761e8(%rsp), %rdi
callq 0x8998
leaq 0x761e7(%rsp), %rdi
callq 0x8500
leaq 0x76210(%rsp), %rdi
callq 0x8998
leaq 0x7620f(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x22f51
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x761c0(%rsp), %rdi
callq 0x8998
leaq 0x761bf(%rsp), %rdi
callq 0x8500
jmp 0x24547
jmp 0x22f65
jmp 0x22f67
jmp 0x22f69
movb 0xebcd6(%rsp), %cl
movb $0x0, 0x76196(%rsp)
movb $0x0, 0x76195(%rsp)
xorl %eax, %eax
testb $0x1, %cl
movb %al, 0x337(%rsp)
je 0x23021
leaq 0x76197(%rsp), %rdi
movq %rdi, 0x328(%rsp)
callq 0x8880
movq 0x328(%rsp), %rdx
movb $0x1, 0x76196(%rsp)
leaq 0x2dbec(%rip), %rsi     # 0x50baa
leaq 0x76198(%rsp), %rdi
callq 0x1b100
jmp 0x22fcd
movb $0x1, 0x76195(%rsp)
leaq 0xebb90(%rsp), %rdi
leaq 0x76198(%rsp), %rsi
callq 0x29120
movq %rax, 0x320(%rsp)
jmp 0x22ff4
movq 0x320(%rsp), %rdi
leaq 0x2dcb2(%rip), %rsi     # 0x50cb5
callq 0x29480
movb %al, 0x31f(%rsp)
jmp 0x23011
movb 0x31f(%rsp), %al
movb %al, 0x337(%rsp)
jmp 0x23021
movb 0x337(%rsp), %al
movb %al, 0x31e(%rsp)
testb $0x1, 0x76195(%rsp)
jne 0x2303b
jmp 0x23048
leaq 0x76198(%rsp), %rdi
callq 0x8998
testb $0x1, 0x76196(%rsp)
jne 0x23054
jmp 0x23061
leaq 0x76197(%rsp), %rdi
callq 0x8500
movb 0x31e(%rsp), %al
testb $0x1, %al
jne 0x23071
jmp 0x2451b
leaq 0x76157(%rsp), %rdi
movq %rdi, 0x310(%rsp)
callq 0x8880
movq 0x310(%rsp), %rdx
leaq 0x2db15(%rip), %rsi     # 0x50baa
leaq 0x76158(%rsp), %rdi
callq 0x1b100
jmp 0x230a4
leaq 0xebb90(%rsp), %rdi
leaq 0x76158(%rsp), %rsi
callq 0x29120
movq %rax, 0x308(%rsp)
jmp 0x230c3
movq 0x308(%rsp), %rsi
leaq 0x76178(%rsp), %rdi
movl $0x3b, %edx
callq 0xaaf0
jmp 0x230df
leaq 0x76158(%rsp), %rdi
callq 0x8998
leaq 0x76157(%rsp), %rdi
callq 0x8500
leaq 0x76110(%rsp), %rdi
callq 0x28430
jmp 0x23108
leaq 0x760f0(%rsp), %rdi
callq 0x8670
movl $0x0, 0x760ec(%rsp)
movl 0x760ec(%rsp), %eax
movq %rax, 0x300(%rsp)
leaq 0x76178(%rsp), %rdi
callq 0xc610
movq %rax, %rcx
movq 0x300(%rsp), %rax
cmpq %rcx, %rax
je 0x244c9
movl 0x760ec(%rsp), %eax
movl %eax, %esi
leaq 0x76178(%rsp), %rdi
callq 0xc640
movq %rax, %rsi
leaq 0x760f0(%rsp), %rdi
callq 0x8060
jmp 0x23178
leaq 0x760f0(%rsp), %rdi
leaq 0x2daad(%rip), %rsi     # 0x50c34
xorl %eax, %eax
movl %eax, %edx
callq 0x8950
cmpq $-0x1, %rax
jne 0x23596
leaq 0x76087(%rsp), %rdi
movq %rdi, 0x2f8(%rsp)
callq 0x8880
movq 0x2f8(%rsp), %rdx
leaq 0x2d3f0(%rip), %rsi     # 0x505ae
leaq 0x76088(%rsp), %rdi
callq 0x1b100
jmp 0x231cd
leaq 0xebb90(%rsp), %rdi
leaq 0x76088(%rsp), %rsi
callq 0x29120
movq %rax, 0x2f0(%rsp)
jmp 0x231ec
movq 0x2f0(%rsp), %rsi
leaq 0x760a8(%rsp), %rdi
leaq 0x760f0(%rsp), %rdx
callq 0x295a0
jmp 0x2320b
leaq 0x76110(%rsp), %rdi
leaq 0x760a8(%rsp), %rsi
callq 0x28460
leaq 0x760a8(%rsp), %rdi
callq 0x28070
leaq 0x76088(%rsp), %rdi
callq 0x8998
leaq 0x76087(%rsp), %rdi
callq 0x8500
leaq 0x76110(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
addq $0x20, %rsi
callq 0x15060
testb $0x1, %al
jne 0x23269
jmp 0x234df
movq 0x658(%rsp), %rsi
movl 0xebef0(%rsp), %eax
movl %eax, 0x2ec(%rsp)
leaq 0x76040(%rsp), %rdi
callq 0x8230
jmp 0x2328e
movl 0x2ec(%rsp), %esi
leaq 0x76060(%rsp), %rdi
leaq 0x76040(%rsp), %rdx
callq 0xaec0
jmp 0x232ac
leaq 0x76040(%rsp), %rdi
callq 0x8998
movb $0x1, 0x7601f(%rsp)
movl $0x10, %edi
callq 0x8280
movq %rax, 0x2e0(%rsp)
leaq 0x2d95c(%rip), %rdx     # 0x50c36
leaq 0x76020(%rsp), %rdi
leaq 0x76060(%rsp), %rsi
callq 0x28d20
jmp 0x232f1
movq 0x2e0(%rsp), %rdi
leaq 0x76020(%rsp), %rsi
callq 0x86d0
jmp 0x23308
movq 0x2e0(%rsp), %rdi
movb $0x0, 0x7601f(%rsp)
movq 0x46ca9(%rip), %rsi     # 0x69fc8
movq 0x46c6a(%rip), %rdx     # 0x69f90
callq 0x8820
jmp 0x25e65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x23375
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
testb $0x1, 0x76195(%rsp)
jne 0x23366
jmp 0x23373
leaq 0x76198(%rsp), %rdi
callq 0x8998
jmp 0x23375
testb $0x1, 0x76196(%rsp)
jne 0x23381
jmp 0x2338e
leaq 0x76197(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x233ca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76158(%rsp), %rdi
callq 0x8998
leaq 0x76157(%rsp), %rdi
callq 0x8500
jmp 0x24547
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x2450c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x244f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x23445
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76088(%rsp), %rdi
callq 0x8998
leaq 0x76087(%rsp), %rdi
callq 0x8500
jmp 0x244f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76040(%rsp), %rdi
callq 0x8998
jmp 0x244f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x234b4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x76020(%rsp), %rdi
callq 0x8998
testb $0x1, 0x7601f(%rsp)
jne 0x234c0
jmp 0x234cd
movq 0x2e0(%rsp), %rdi
callq 0x83a0
leaq 0x76060(%rsp), %rdi
callq 0x8998
jmp 0x244f2
leaq 0xebe18(%rsp), %rdi
movq %rdi, 0x2d0(%rsp)
callq 0x29680
movq 0x2d0(%rsp), %rdi
movq %rax, 0x76008(%rsp)
callq 0x296b0
movq %rax, 0x76000(%rsp)
movq 0x76008(%rsp), %rdi
movq 0x76000(%rsp), %rsi
leaq 0x76110(%rsp), %rdx
callq 0x29620
movq %rax, 0x2d8(%rsp)
jmp 0x23538
movq 0x2d8(%rsp), %rax
movq %rax, 0x76010(%rsp)
leaq 0xebe18(%rsp), %rdi
callq 0x296b0
movq %rax, 0x75ff8(%rsp)
leaq 0x76010(%rsp), %rdi
leaq 0x75ff8(%rsp), %rsi
callq 0x295e0
testb $0x1, %al
jne 0x23578
jmp 0x23591
leaq 0xebe18(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
callq 0x296e0
jmp 0x2358f
jmp 0x23591
jmp 0x244b1
movl 0x760ec(%rsp), %eax
movl %eax, %esi
leaq 0x76178(%rsp), %rdi
movq %rdi, 0x2b8(%rsp)
callq 0xc640
movq 0x2b8(%rsp), %rdi
movq %rax, 0x2c0(%rsp)
movl 0x760ec(%rsp), %eax
movl %eax, %esi
callq 0xc640
movq %rax, %rdi
leaq 0x2d658(%rip), %rsi     # 0x50c34
xorl %eax, %eax
movl %eax, %edx
movq %rdx, 0x2c8(%rsp)
callq 0x8950
movq 0x2c0(%rsp), %rsi
movq 0x2c8(%rsp), %rdx
movq %rax, %rcx
leaq 0x75fd8(%rsp), %rdi
callq 0x84c0
jmp 0x2360f
leaq 0x760f0(%rsp), %rdi
leaq 0x75fd8(%rsp), %rsi
movq %rsi, 0x2a0(%rsp)
callq 0x85b0
movq 0x2a0(%rsp), %rdi
callq 0x8998
movl 0x760ec(%rsp), %eax
movl %eax, %esi
leaq 0x76178(%rsp), %rdi
movq %rdi, 0x2a8(%rsp)
callq 0xc640
movq 0x2a8(%rsp), %rdi
movq %rax, 0x2b0(%rsp)
movl 0x760ec(%rsp), %eax
movl %eax, %esi
callq 0xc640
movq %rax, %rdi
leaq 0x2d5b5(%rip), %rsi     # 0x50c34
xorl %eax, %eax
movl %eax, %edx
callq 0x8950
movq 0x2b0(%rsp), %rsi
movq %rax, %rdx
incq %rdx
leaq 0x75fb8(%rsp), %rdi
movq $-0x1, %rcx
callq 0x84c0
jmp 0x236ac
leaq 0x75f57(%rsp), %rdi
movq %rdi, 0x298(%rsp)
callq 0x8880
movq 0x298(%rsp), %rdx
leaq 0x2cede(%rip), %rsi     # 0x505ae
leaq 0x75f58(%rsp), %rdi
callq 0x1b100
jmp 0x236df
leaq 0xebb90(%rsp), %rdi
leaq 0x75f58(%rsp), %rsi
callq 0x29120
movq %rax, 0x290(%rsp)
jmp 0x236fe
movq 0x290(%rsp), %rsi
leaq 0x75f78(%rsp), %rdi
leaq 0x760f0(%rsp), %rdx
callq 0x295a0
jmp 0x2371d
leaq 0x76110(%rsp), %rdi
leaq 0x75f78(%rsp), %rsi
callq 0x28460
leaq 0x75f78(%rsp), %rdi
callq 0x28070
leaq 0x75f58(%rsp), %rdi
callq 0x8998
leaq 0x75f57(%rsp), %rdi
callq 0x8500
leaq 0x76110(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
addq $0x20, %rsi
callq 0x15060
testb $0x1, %al
jne 0x2377b
jmp 0x2392c
movq 0x658(%rsp), %rsi
movl 0xebef0(%rsp), %eax
movl %eax, 0x28c(%rsp)
leaq 0x75f10(%rsp), %rdi
callq 0x8230
jmp 0x237a0
movl 0x28c(%rsp), %esi
leaq 0x75f30(%rsp), %rdi
leaq 0x75f10(%rsp), %rdx
callq 0xaec0
jmp 0x237be
leaq 0x75f10(%rsp), %rdi
callq 0x8998
movb $0x1, 0x75eef(%rsp)
movl $0x10, %edi
callq 0x8280
movq %rax, 0x280(%rsp)
leaq 0x2d44a(%rip), %rdx     # 0x50c36
leaq 0x75ef0(%rsp), %rdi
leaq 0x75f30(%rsp), %rsi
callq 0x28d20
jmp 0x23803
movq 0x280(%rsp), %rdi
leaq 0x75ef0(%rsp), %rsi
callq 0x86d0
jmp 0x2381a
movq 0x280(%rsp), %rdi
movb $0x0, 0x75eef(%rsp)
movq 0x46797(%rip), %rsi     # 0x69fc8
movq 0x46758(%rip), %rdx     # 0x69f90
callq 0x8820
jmp 0x25e65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x23879
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75f58(%rsp), %rdi
callq 0x8998
leaq 0x75f57(%rsp), %rdi
callq 0x8500
jmp 0x244a2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x244a2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75f10(%rsp), %rdi
callq 0x8998
jmp 0x244a2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x23901
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75ef0(%rsp), %rdi
callq 0x8998
testb $0x1, 0x75eef(%rsp)
jne 0x2390d
jmp 0x2391a
movq 0x280(%rsp), %rdi
callq 0x83a0
leaq 0x75f30(%rsp), %rdi
callq 0x8998
jmp 0x244a2
leaq 0x75fb8(%rsp), %rdi
leaq 0x2d37a(%rip), %rsi     # 0x50cb5
xorl %eax, %eax
movl %eax, %edx
callq 0x8950
cmpq $0x0, %rax
jne 0x23a05
leaq 0xebe18(%rsp), %rdi
movq %rdi, 0x270(%rsp)
callq 0x29680
movq 0x270(%rsp), %rdi
movq %rax, 0x75ed8(%rsp)
callq 0x296b0
movq %rax, 0x75ed0(%rsp)
movq 0x75ed8(%rsp), %rdi
movq 0x75ed0(%rsp), %rsi
leaq 0x76110(%rsp), %rdx
callq 0x29620
movq %rax, 0x278(%rsp)
jmp 0x239a7
movq 0x278(%rsp), %rax
movq %rax, 0x75ee0(%rsp)
leaq 0xebe18(%rsp), %rdi
callq 0x296b0
movq %rax, 0x75ec8(%rsp)
leaq 0x75ee0(%rsp), %rdi
leaq 0x75ec8(%rsp), %rsi
callq 0x295e0
testb $0x1, %al
jne 0x239e7
jmp 0x23a00
leaq 0xebe18(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
callq 0x296e0
jmp 0x239fe
jmp 0x23a00
jmp 0x24493
leaq 0x75eb0(%rsp), %rdi
leaq 0x75fb8(%rsp), %rsi
movl $0x2c, %edx
callq 0xacb0
jmp 0x23a21
leaq 0x75e98(%rsp), %rdi
leaq 0x75fb8(%rsp), %rsi
movl $0x2c, %edx
callq 0xaaf0
jmp 0x23a3d
leaq 0x75eb0(%rsp), %rdi
callq 0xbd90
cmpq $0x3, %rax
jne 0x2411e
leaq 0x75e98(%rsp), %rdi
movl $0x2, %esi
callq 0xc640
movq %rax, %rdi
leaq 0x2b660(%rip), %rsi     # 0x4f0d0
callq 0x29480
movb %al, 0x26f(%rsp)
jmp 0x23a7e
movb 0x26f(%rsp), %al
testb $0x1, %al
jne 0x23a8e
jmp 0x23c83
leaq 0x75e98(%rsp), %rdi
movl $0x2, %esi
callq 0xc640
movq %rax, %rdi
leaq 0x2be7b(%rip), %rsi     # 0x4f925
callq 0x29480
movb %al, 0x26e(%rsp)
jmp 0x23ab8
movb 0x26e(%rsp), %al
testb $0x1, %al
jne 0x23ac8
jmp 0x23c83
leaq 0x75e98(%rsp), %rdi
movl $0x2, %esi
callq 0xc640
movq %rax, %rdi
leaq 0x2d1d1(%rip), %rsi     # 0x50cb5
callq 0x29480
movb %al, 0x26d(%rsp)
jmp 0x23af2
movb 0x26d(%rsp), %al
testb $0x1, %al
jne 0x23b02
jmp 0x23c83
movq 0x658(%rsp), %rsi
movl 0xebef0(%rsp), %eax
movl %eax, 0x268(%rsp)
leaq 0x75e58(%rsp), %rdi
callq 0x8230
jmp 0x23b27
movl 0x268(%rsp), %esi
leaq 0x75e78(%rsp), %rdi
leaq 0x75e58(%rsp), %rdx
callq 0xaec0
jmp 0x23b45
leaq 0x75e58(%rsp), %rdi
callq 0x8998
movb $0x1, 0x75e37(%rsp)
movl $0x10, %edi
callq 0x8280
movq %rax, 0x260(%rsp)
leaq 0x2d118(%rip), %rdx     # 0x50c8b
leaq 0x75e38(%rsp), %rdi
leaq 0x75e78(%rsp), %rsi
callq 0x28d20
jmp 0x23b8a
movq 0x260(%rsp), %rdi
leaq 0x75e38(%rsp), %rsi
callq 0x86d0
jmp 0x23ba1
movq 0x260(%rsp), %rdi
movb $0x0, 0x75e37(%rsp)
movq 0x46410(%rip), %rsi     # 0x69fc8
movq 0x463d1(%rip), %rdx     # 0x69f90
callq 0x8820
jmp 0x25e65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24484
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24477
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75e58(%rsp), %rdi
callq 0x8998
jmp 0x24477
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x23c58
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75e38(%rsp), %rdi
callq 0x8998
testb $0x1, 0x75e37(%rsp)
jne 0x23c64
jmp 0x23c71
movq 0x260(%rsp), %rdi
callq 0x83a0
leaq 0x75e78(%rsp), %rdi
callq 0x8998
jmp 0x24477
leaq 0x75e98(%rsp), %rdi
movl $0x2, %esi
callq 0xc640
movq %rax, %rdi
leaq 0x2b431(%rip), %rsi     # 0x4f0d0
callq 0x28560
movb %al, 0x25f(%rsp)
jmp 0x23cad
movb 0x25f(%rsp), %al
testb $0x1, %al
jne 0x23cba
jmp 0x23cd6
leaq 0xebdd0(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
callq 0x296e0
jmp 0x23cd1
jmp 0x23d99
leaq 0x75e98(%rsp), %rdi
movl $0x2, %esi
callq 0xc640
movq %rax, %rdi
leaq 0x2bc33(%rip), %rsi     # 0x4f925
callq 0x28560
movb %al, 0x25e(%rsp)
jmp 0x23d00
movb 0x25e(%rsp), %al
testb $0x1, %al
jne 0x23d0d
jmp 0x23d26
leaq 0xebde8(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
callq 0x296e0
jmp 0x23d24
jmp 0x23d97
leaq 0x75e98(%rsp), %rdi
movl $0x2, %esi
callq 0xc640
movq %rax, %rdi
leaq 0x2cf73(%rip), %rsi     # 0x50cb5
callq 0x28560
movb %al, 0x25d(%rsp)
jmp 0x23d50
movb 0x25d(%rsp), %al
testb $0x1, %al
jne 0x23d5d
jmp 0x23d76
leaq 0xebe00(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
callq 0x296e0
jmp 0x23d74
jmp 0x23d95
leaq 0x2cf3a(%rip), %rdi     # 0x50cb7
leaq 0x2c94b(%rip), %rsi     # 0x506cf
movl $0x27e, %edx            # imm = 0x27E
leaq 0x2ce2d(%rip), %rcx     # 0x50bbd
callq 0x8340
jmp 0x23d97
jmp 0x23d99
leaq 0x75eb0(%rsp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0xbd40
xorps %xmm0, %xmm0
ucomisd (%rax), %xmm0
jbe 0x23f06
movq 0x658(%rsp), %rsi
movl 0xebef0(%rsp), %eax
movl %eax, 0x258(%rsp)
leaq 0x75df0(%rsp), %rdi
callq 0x8230
jmp 0x23ddc
movl 0x258(%rsp), %esi
leaq 0x75e10(%rsp), %rdi
leaq 0x75df0(%rsp), %rdx
callq 0xaec0
jmp 0x23dfa
leaq 0x75df0(%rsp), %rdi
callq 0x8998
movb $0x1, 0x75dcf(%rsp)
movl $0x10, %edi
callq 0x8280
movq %rax, 0x250(%rsp)
leaq 0x2ce95(%rip), %rdx     # 0x50cbd
leaq 0x75dd0(%rsp), %rdi
leaq 0x75e10(%rsp), %rsi
callq 0x28d20
jmp 0x23e3f
movq 0x250(%rsp), %rdi
leaq 0x75dd0(%rsp), %rsi
callq 0x86d0
jmp 0x23e56
movq 0x250(%rsp), %rdi
movb $0x0, 0x75dcf(%rsp)
movq 0x4615b(%rip), %rsi     # 0x69fc8
movq 0x4611c(%rip), %rdx     # 0x69f90
callq 0x8820
jmp 0x25e65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75df0(%rsp), %rdi
callq 0x8998
jmp 0x24477
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x23edb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75dd0(%rsp), %rdi
callq 0x8998
testb $0x1, 0x75dcf(%rsp)
jne 0x23ee7
jmp 0x23ef4
movq 0x250(%rsp), %rdi
callq 0x83a0
leaq 0x75e10(%rsp), %rdi
callq 0x8998
jmp 0x24477
leaq 0x75eb0(%rsp), %rdi
movl $0x1, %esi
callq 0xbd40
xorps %xmm0, %xmm0
ucomisd (%rax), %xmm0
jbe 0x24074
movq 0x658(%rsp), %rsi
movl 0xebef0(%rsp), %eax
movl %eax, 0x24c(%rsp)
leaq 0x75d88(%rsp), %rdi
callq 0x8230
jmp 0x23f4a
movl 0x24c(%rsp), %esi
leaq 0x75da8(%rsp), %rdi
leaq 0x75d88(%rsp), %rdx
callq 0xaec0
jmp 0x23f68
leaq 0x75d88(%rsp), %rdi
callq 0x8998
movb $0x1, 0x75d67(%rsp)
movl $0x10, %edi
callq 0x8280
movq %rax, 0x240(%rsp)
leaq 0x2cd40(%rip), %rdx     # 0x50cd6
leaq 0x75d68(%rsp), %rdi
leaq 0x75da8(%rsp), %rsi
callq 0x28d20
jmp 0x23fad
movq 0x240(%rsp), %rdi
leaq 0x75d68(%rsp), %rsi
callq 0x86d0
jmp 0x23fc4
movq 0x240(%rsp), %rdi
movb $0x0, 0x75d67(%rsp)
movq 0x45fed(%rip), %rsi     # 0x69fc8
movq 0x45fae(%rip), %rdx     # 0x69f90
callq 0x8820
jmp 0x25e65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75d88(%rsp), %rdi
callq 0x8998
jmp 0x24477
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24049
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75d68(%rsp), %rdi
callq 0x8998
testb $0x1, 0x75d67(%rsp)
jne 0x24055
jmp 0x24062
movq 0x240(%rsp), %rdi
callq 0x83a0
leaq 0x75da8(%rsp), %rdi
callq 0x8998
jmp 0x24477
xorl %eax, %eax
movl %eax, %esi
leaq 0x75eb0(%rsp), %rdi
callq 0xbd40
movsd (%rax), %xmm0
movsd %xmm0, 0x230(%rsp)
leaq 0xebd40(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
callq 0x29750
movq %rax, 0x238(%rsp)
jmp 0x240b1
movq 0x238(%rsp), %rax
movsd 0x230(%rsp), %xmm0
movsd %xmm0, (%rax)
leaq 0x75eb0(%rsp), %rdi
movl $0x1, %esi
callq 0xbd40
movsd (%rax), %xmm0
movsd %xmm0, 0x220(%rsp)
leaq 0xebda0(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
callq 0x29750
movq %rax, 0x228(%rsp)
jmp 0x24104
movq 0x228(%rsp), %rax
movsd 0x220(%rsp), %xmm0
movsd %xmm0, (%rax)
jmp 0x2445b
leaq 0x75eb0(%rsp), %rdi
callq 0xbd90
cmpq $0x1, %rax
jne 0x24310
leaq 0x75eb0(%rsp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0xbd40
xorps %xmm0, %xmm0
ucomisd (%rax), %xmm0
jbe 0x242a2
movq 0x658(%rsp), %rsi
movl 0xebef0(%rsp), %eax
movl %eax, 0x21c(%rsp)
leaq 0x75d20(%rsp), %rdi
callq 0x8230
jmp 0x24178
movl 0x21c(%rsp), %esi
leaq 0x75d40(%rsp), %rdi
leaq 0x75d20(%rsp), %rdx
callq 0xaec0
jmp 0x24196
leaq 0x75d20(%rsp), %rdi
callq 0x8998
movb $0x1, 0x75cff(%rsp)
movl $0x10, %edi
callq 0x8280
movq %rax, 0x210(%rsp)
leaq 0x2caf9(%rip), %rdx     # 0x50cbd
leaq 0x75d00(%rsp), %rdi
leaq 0x75d40(%rsp), %rsi
callq 0x28d20
jmp 0x241db
movq 0x210(%rsp), %rdi
leaq 0x75d00(%rsp), %rsi
callq 0x86d0
jmp 0x241f2
movq 0x210(%rsp), %rdi
movb $0x0, 0x75cff(%rsp)
movq 0x45dbf(%rip), %rsi     # 0x69fc8
movq 0x45d80(%rip), %rdx     # 0x69f90
callq 0x8820
jmp 0x25e65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75d20(%rsp), %rdi
callq 0x8998
jmp 0x24477
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24277
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75d00(%rsp), %rdi
callq 0x8998
testb $0x1, 0x75cff(%rsp)
jne 0x24283
jmp 0x24290
movq 0x210(%rsp), %rdi
callq 0x83a0
leaq 0x75d40(%rsp), %rdi
callq 0x8998
jmp 0x24477
leaq 0xebe18(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
callq 0x296e0
jmp 0x242b9
xorl %eax, %eax
movl %eax, %esi
leaq 0x75eb0(%rsp), %rdi
callq 0xbd40
movsd (%rax), %xmm0
movsd %xmm0, 0x200(%rsp)
leaq 0xebd40(%rsp), %rdi
leaq 0x76110(%rsp), %rsi
callq 0x29750
movq %rax, 0x208(%rsp)
jmp 0x242f6
movq 0x208(%rsp), %rax
movsd 0x200(%rsp), %xmm0
movsd %xmm0, (%rax)
jmp 0x24459
movq 0x658(%rsp), %rsi
movl 0xebef0(%rsp), %eax
movl %eax, 0x1fc(%rsp)
leaq 0x75cb8(%rsp), %rdi
callq 0x8230
jmp 0x24335
movl 0x1fc(%rsp), %esi
leaq 0x75cd8(%rsp), %rdi
leaq 0x75cb8(%rsp), %rdx
callq 0xaec0
jmp 0x24353
leaq 0x75cb8(%rsp), %rdi
callq 0x8998
movb $0x1, 0x75c97(%rsp)
movl $0x10, %edi
callq 0x8280
movq %rax, 0x1f0(%rsp)
leaq 0x2c970(%rip), %rdx     # 0x50cf1
leaq 0x75c98(%rsp), %rdi
leaq 0x75cd8(%rsp), %rsi
callq 0x28d20
jmp 0x24398
movq 0x1f0(%rsp), %rdi
leaq 0x75c98(%rsp), %rsi
callq 0x86d0
jmp 0x243af
movq 0x1f0(%rsp), %rdi
movb $0x0, 0x75c97(%rsp)
movq 0x45c02(%rip), %rsi     # 0x69fc8
movq 0x45bc3(%rip), %rdx     # 0x69f90
callq 0x8820
jmp 0x25e65
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75cb8(%rsp), %rdi
callq 0x8998
jmp 0x24477
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24431
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x75c98(%rsp), %rdi
callq 0x8998
testb $0x1, 0x75c97(%rsp)
jne 0x2443d
jmp 0x2444a
movq 0x1f0(%rsp), %rdi
callq 0x83a0
leaq 0x75cd8(%rsp), %rdi
callq 0x8998
jmp 0x24477
jmp 0x2445b
leaq 0x75e98(%rsp), %rdi
callq 0xc570
leaq 0x75eb0(%rsp), %rdi
callq 0xc3c0
jmp 0x24493
leaq 0x75e98(%rsp), %rdi
callq 0xc570
leaq 0x75eb0(%rsp), %rdi
callq 0xc3c0
jmp 0x244a2
leaq 0x75fb8(%rsp), %rdi
callq 0x8998
jmp 0x244b1
leaq 0x75fb8(%rsp), %rdi
callq 0x8998
jmp 0x244f2
jmp 0x244b3
movl 0x760ec(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x760ec(%rsp)
jmp 0x23120
leaq 0x760f0(%rsp), %rdi
callq 0x8998
leaq 0x76110(%rsp), %rdi
callq 0x28070
leaq 0x76178(%rsp), %rdi
callq 0xc570
jmp 0x2451b
leaq 0x760f0(%rsp), %rdi
callq 0x8998
leaq 0x76110(%rsp), %rdi
callq 0x28070
leaq 0x76178(%rsp), %rdi
callq 0xc570
jmp 0x24547
leaq 0x76700(%rsp), %rdi
callq 0x179e0
leaq 0xebb90(%rsp), %rdi
callq 0xc750
leaq 0xebbc0(%rsp), %rdi
callq 0xc570
jmp 0x20b57
leaq 0x76700(%rsp), %rdi
callq 0x179e0
leaq 0xebb90(%rsp), %rdi
callq 0xc750
leaq 0xebbc0(%rsp), %rdi
callq 0xc570
jmp 0x25d7b
leaq 0xebf00(%rsp), %rdi
callq 0x80f0
jmp 0x24582
leaq 0xebea8(%rsp), %rdi
callq 0x29840
movq %rax, 0x75c88(%rsp)
leaq 0xebea8(%rsp), %rdi
callq 0x29210
movq %rax, 0x75c80(%rsp)
leaq 0x75c88(%rsp), %rdi
leaq 0x75c80(%rsp), %rsi
callq 0x29870
testb $0x1, %al
jne 0x245ca
jmp 0x24744
testb $0x1, 0xebcd5(%rsp)
jne 0x246bb
movq 0x650(%rsp), %rdi
addq $0x20, %rdi
xorps %xmm0, %xmm0
movsd 0x2aa19(%rip), %xmm1    # 0x4f008
callq 0x9940
movsd %xmm0, 0x1e8(%rsp)
jmp 0x245ff
movq 0x650(%rsp), %rdi
movsd 0x1e8(%rsp), %xmm0
movsd %xmm0, 0x75c78(%rsp)
addq $0x20, %rdi
xorps %xmm0, %xmm0
movsd 0x2a9e0(%rip), %xmm1    # 0x4f008
callq 0x9940
movsd %xmm0, 0x1e0(%rsp)
jmp 0x24638
movq 0x650(%rsp), %rdi
movsd 0x1e0(%rsp), %xmm0
movsd %xmm0, 0x75c70(%rsp)
addq $0x20, %rdi
xorps %xmm0, %xmm0
movsd 0x2a9a7(%rip), %xmm1    # 0x4f008
callq 0x9940
movsd %xmm0, 0x1d8(%rsp)
jmp 0x24671
movsd 0x1d8(%rsp), %xmm0
movsd %xmm0, 0x75c68(%rsp)
leaq 0x75c88(%rsp), %rdi
callq 0x29890
movq %rax, %rdi
addq $0x20, %rdi
movsd 0x75c78(%rsp), %xmm0
movsd 0x75c70(%rsp), %xmm1
movsd 0x75c68(%rsp), %xmm2
callq 0x15a10
jmp 0x246b9
jmp 0x246bb
leaq 0x75c88(%rsp), %rdi
callq 0x29890
movq %rax, %rsi
addq $0x20, %rsi
leaq 0x938(%rsp), %rdi
callq 0x298b0
jmp 0x246de
movq 0x650(%rsp), %rdi
leaq 0x938(%rsp), %rsi
callq 0x1b8a0
jmp 0x246f5
leaq 0x938(%rsp), %rdi
callq 0x29390
leaq 0x75c88(%rsp), %rdi
xorl %esi, %esi
callq 0x29930
movq %rax, 0x930(%rsp)
jmp 0x24597
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x938(%rsp), %rdi
callq 0x29390
jmp 0x25d7b
testb $0x1, 0xec137(%rsp)
je 0x24824
movq 0x45887(%rip), %rdi     # 0x69fe0
leaq 0x2c5e1(%rip), %rsi     # 0x50d41
callq 0x8480
movq %rax, 0x1d0(%rsp)
jmp 0x2476f
movq 0x650(%rsp), %rdi
callq 0x25e70
movsd %xmm0, 0x1c8(%rsp)
jmp 0x24787
movsd 0x1c8(%rsp), %xmm0
movq 0x1d0(%rsp), %rdi
callq 0x8910
jmp 0x2479f
movq 0x650(%rsp), %rdi
movsd 0xec128(%rsp), %xmm0
callq 0x25ef0
jmp 0x247b7
movq 0x45822(%rip), %rdi     # 0x69fe0
leaq 0x2c598(%rip), %rsi     # 0x50d5d
callq 0x8480
movq %rax, 0x1c0(%rsp)
jmp 0x247d4
movq 0x650(%rsp), %rdi
callq 0x25e70
movsd %xmm0, 0x1b8(%rsp)
jmp 0x247ec
movsd 0x1b8(%rsp), %xmm0
movq 0x1c0(%rsp), %rdi
callq 0x8910
movq %rax, 0x1b0(%rsp)
jmp 0x2480c
movq 0x1b0(%rsp), %rdi
movq 0x45715(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x24822
jmp 0x24824
leaq 0xebe18(%rsp), %rdi
callq 0x29680
movq %rax, 0x928(%rsp)
leaq 0xebe18(%rsp), %rdi
callq 0x296b0
movq %rax, 0x920(%rsp)
leaq 0x928(%rsp), %rdi
leaq 0x920(%rsp), %rsi
callq 0x29970
testb $0x1, %al
jne 0x2486c
jmp 0x24b4e
leaq 0x928(%rsp), %rdi
callq 0x299e0
movq %rax, %rsi
leaq 0xebd40(%rsp), %rdi
callq 0x299b0
movq %rax, 0x1a8(%rsp)
jmp 0x24893
movq 0x1a8(%rsp), %rax
movq %rax, 0x918(%rsp)
leaq 0xebd40(%rsp), %rdi
callq 0x29a10
movq %rax, 0x908(%rsp)
leaq 0x918(%rsp), %rdi
leaq 0x908(%rsp), %rsi
callq 0x299f0
testb $0x1, %al
jne 0x248d3
jmp 0x248f0
leaq 0x918(%rsp), %rdi
callq 0x29a40
movsd 0x40(%rax), %xmm0
movsd %xmm0, 0x1a0(%rsp)
jmp 0x24903
movsd 0x2a710(%rip), %xmm0    # 0x4f008
movsd %xmm0, 0x1a0(%rsp)
jmp 0x24903
movsd 0x1a0(%rsp), %xmm0
movsd %xmm0, 0x910(%rsp)
leaq 0x928(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
leaq 0xebe78(%rsp), %rdi
callq 0xc660
movq %rax, 0x198(%rsp)
jmp 0x2493c
leaq 0x928(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
addq $0x20, %rsi
leaq 0xebe78(%rsp), %rdi
callq 0xc660
movq %rax, 0x190(%rsp)
jmp 0x24967
movq 0x190(%rsp), %rsi
movq 0x198(%rsp), %rdi
callq 0x15060
testb $0x1, %al
jne 0x24985
jmp 0x24a5c
leaq 0x928(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
leaq 0x8e8(%rsp), %rdi
callq 0x8230
jmp 0x249a4
leaq 0x928(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
addq $0x20, %rsi
leaq 0x8c8(%rsp), %rdi
callq 0x8230
jmp 0x249c7
movq 0x650(%rsp), %rdi
movsd 0x910(%rsp), %xmm0
leaq 0x8e8(%rsp), %rsi
leaq 0x8c8(%rsp), %rdx
movl $0x7, %ecx
callq 0x1bc00
jmp 0x249f4
leaq 0x8c8(%rsp), %rdi
callq 0x8998
leaq 0x8e8(%rsp), %rdi
callq 0x8998
jmp 0x24b30
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24a4a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x8c8(%rsp), %rdi
callq 0x8998
leaq 0x8e8(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
leaq 0x928(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
leaq 0x8a8(%rsp), %rdi
callq 0x8230
jmp 0x24a7b
leaq 0x928(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
addq $0x20, %rsi
leaq 0x888(%rsp), %rdi
callq 0x8230
jmp 0x24a9e
movq 0x650(%rsp), %rdi
movsd 0x910(%rsp), %xmm0
leaq 0x8a8(%rsp), %rsi
leaq 0x888(%rsp), %rdx
movl $0x8, %ecx
callq 0x1bc00
jmp 0x24acb
leaq 0x888(%rsp), %rdi
callq 0x8998
leaq 0x8a8(%rsp), %rdi
callq 0x8998
jmp 0x24b30
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24b1e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x888(%rsp), %rdi
callq 0x8998
leaq 0x8a8(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
jmp 0x24b32
leaq 0x928(%rsp), %rdi
xorl %esi, %esi
callq 0x29a70
movq %rax, 0x880(%rsp)
jmp 0x24839
leaq 0x878(%rsp), %rdi
callq 0x29ab0
leaq 0x870(%rsp), %rdi
callq 0x29ab0
leaq 0xebe00(%rsp), %rdi
callq 0x29680
movq %rax, 0x868(%rsp)
leaq 0xebe00(%rsp), %rdi
callq 0x296b0
movq %rax, 0x860(%rsp)
leaq 0x868(%rsp), %rdi
leaq 0x860(%rsp), %rsi
callq 0x29970
testb $0x1, %al
jne 0x24bb0
jmp 0x24d54
leaq 0x868(%rsp), %rdi
callq 0x299e0
movq %rax, %rsi
leaq 0xebda0(%rsp), %rdi
callq 0x299b0
movq %rax, 0x188(%rsp)
jmp 0x24bd7
movq 0x188(%rsp), %rax
movq %rax, 0x858(%rsp)
movq 0x858(%rsp), %rax
movq %rax, 0x878(%rsp)
leaq 0x868(%rsp), %rdi
callq 0x299e0
movq %rax, %rsi
leaq 0xebd40(%rsp), %rdi
callq 0x299b0
movq %rax, 0x180(%rsp)
jmp 0x24c1e
movq 0x180(%rsp), %rax
movq %rax, 0x850(%rsp)
movq 0x850(%rsp), %rax
movq %rax, 0x870(%rsp)
leaq 0x868(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
leaq 0x830(%rsp), %rdi
callq 0x8230
jmp 0x24c5d
leaq 0x868(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
addq $0x20, %rsi
leaq 0x810(%rsp), %rdi
callq 0x8230
jmp 0x24c80
leaq 0x878(%rsp), %rdi
callq 0x29a40
movsd 0x40(%rax), %xmm0
movsd %xmm0, 0x178(%rsp)
leaq 0x870(%rsp), %rdi
callq 0x29a40
movq 0x650(%rsp), %rdi
movsd 0x178(%rsp), %xmm0
movsd 0x40(%rax), %xmm1
leaq 0x830(%rsp), %rsi
leaq 0x810(%rsp), %rdx
callq 0x1bed0
jmp 0x24cd5
leaq 0x810(%rsp), %rdi
callq 0x8998
leaq 0x830(%rsp), %rdi
callq 0x8998
leaq 0x868(%rsp), %rdi
xorl %esi, %esi
callq 0x29a70
movq %rax, 0x808(%rsp)
jmp 0x24b7d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24d42
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x810(%rsp), %rdi
callq 0x8998
leaq 0x830(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
leaq 0xebde8(%rsp), %rdi
callq 0x29680
movq %rax, 0x800(%rsp)
leaq 0xebde8(%rsp), %rdi
callq 0x296b0
movq %rax, 0x7f8(%rsp)
leaq 0x800(%rsp), %rdi
leaq 0x7f8(%rsp), %rsi
callq 0x29970
testb $0x1, %al
jne 0x24d9c
jmp 0x24f40
leaq 0x800(%rsp), %rdi
callq 0x299e0
movq %rax, %rsi
leaq 0xebda0(%rsp), %rdi
callq 0x299b0
movq %rax, 0x170(%rsp)
jmp 0x24dc3
movq 0x170(%rsp), %rax
movq %rax, 0x7f0(%rsp)
movq 0x7f0(%rsp), %rax
movq %rax, 0x878(%rsp)
leaq 0x800(%rsp), %rdi
callq 0x299e0
movq %rax, %rsi
leaq 0xebd40(%rsp), %rdi
callq 0x299b0
movq %rax, 0x168(%rsp)
jmp 0x24e0a
movq 0x168(%rsp), %rax
movq %rax, 0x7e8(%rsp)
movq 0x7e8(%rsp), %rax
movq %rax, 0x870(%rsp)
leaq 0x800(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
leaq 0x7c8(%rsp), %rdi
callq 0x8230
jmp 0x24e49
leaq 0x800(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
addq $0x20, %rsi
leaq 0x7a8(%rsp), %rdi
callq 0x8230
jmp 0x24e6c
leaq 0x878(%rsp), %rdi
callq 0x29a40
movsd 0x40(%rax), %xmm0
movsd %xmm0, 0x160(%rsp)
leaq 0x870(%rsp), %rdi
callq 0x29a40
movq 0x650(%rsp), %rdi
movsd 0x160(%rsp), %xmm0
movsd 0x40(%rax), %xmm1
leaq 0x7c8(%rsp), %rsi
leaq 0x7a8(%rsp), %rdx
callq 0x1c140
jmp 0x24ec1
leaq 0x7a8(%rsp), %rdi
callq 0x8998
leaq 0x7c8(%rsp), %rdi
callq 0x8998
leaq 0x800(%rsp), %rdi
xorl %esi, %esi
callq 0x29a70
movq %rax, 0x7a0(%rsp)
jmp 0x24d69
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x24f2e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x7a8(%rsp), %rdi
callq 0x8998
leaq 0x7c8(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
leaq 0xebdd0(%rsp), %rdi
callq 0x29680
movq %rax, 0x798(%rsp)
leaq 0xebdd0(%rsp), %rdi
callq 0x296b0
movq %rax, 0x790(%rsp)
leaq 0x798(%rsp), %rdi
leaq 0x790(%rsp), %rsi
callq 0x29970
testb $0x1, %al
jne 0x24f88
jmp 0x2512c
leaq 0x798(%rsp), %rdi
callq 0x299e0
movq %rax, %rsi
leaq 0xebda0(%rsp), %rdi
callq 0x299b0
movq %rax, 0x158(%rsp)
jmp 0x24faf
movq 0x158(%rsp), %rax
movq %rax, 0x788(%rsp)
movq 0x788(%rsp), %rax
movq %rax, 0x878(%rsp)
leaq 0x798(%rsp), %rdi
callq 0x299e0
movq %rax, %rsi
leaq 0xebd40(%rsp), %rdi
callq 0x299b0
movq %rax, 0x150(%rsp)
jmp 0x24ff6
movq 0x150(%rsp), %rax
movq %rax, 0x780(%rsp)
movq 0x780(%rsp), %rax
movq %rax, 0x870(%rsp)
leaq 0x798(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
leaq 0x760(%rsp), %rdi
callq 0x8230
jmp 0x25035
leaq 0x798(%rsp), %rdi
callq 0x29a60
movq %rax, %rsi
addq $0x20, %rsi
leaq 0x740(%rsp), %rdi
callq 0x8230
jmp 0x25058
leaq 0x878(%rsp), %rdi
callq 0x29a40
movsd 0x40(%rax), %xmm0
movsd %xmm0, 0x148(%rsp)
leaq 0x870(%rsp), %rdi
callq 0x29a40
movq 0x650(%rsp), %rdi
movsd 0x148(%rsp), %xmm0
movsd 0x40(%rax), %xmm1
leaq 0x760(%rsp), %rsi
leaq 0x740(%rsp), %rdx
callq 0x1c400
jmp 0x250ad
leaq 0x740(%rsp), %rdi
callq 0x8998
leaq 0x760(%rsp), %rdi
callq 0x8998
leaq 0x798(%rsp), %rdi
xorl %esi, %esi
callq 0x29a70
movq %rax, 0x738(%rsp)
jmp 0x24f55
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
jmp 0x2511a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x740(%rsp), %rdi
callq 0x8998
leaq 0x760(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
leaq 0xebe60(%rsp), %rdi
callq 0x11f10
movq %rax, 0x728(%rsp)
leaq 0xebe60(%rsp), %rdi
callq 0x11d80
movq %rax, 0x720(%rsp)
leaq 0x728(%rsp), %rdi
leaq 0x720(%rsp), %rsi
callq 0x28e70
testb $0x1, %al
jne 0x25174
jmp 0x252b7
movabsq $0x3ff0000000000000, %rax # imm = 0x3FF0000000000000
movq %rax, 0x730(%rsp)
leaq 0x728(%rsp), %rdi
callq 0x29b20
movq %rax, %rsi
leaq 0xebd10(%rsp), %rdi
callq 0x29af0
movq %rax, 0x140(%rsp)
jmp 0x251ad
movq 0x140(%rsp), %rax
movq %rax, 0x718(%rsp)
leaq 0xebd10(%rsp), %rdi
callq 0x29b30
movq %rax, 0x710(%rsp)
leaq 0x718(%rsp), %rdi
leaq 0x710(%rsp), %rsi
callq 0x29ad0
testb $0x1, %al
jne 0x251ed
jmp 0x25229
leaq 0x728(%rsp), %rdi
callq 0x29b20
movq %rax, %rsi
leaq 0xebd10(%rsp), %rdi
callq 0x294b0
movq %rax, 0x138(%rsp)
jmp 0x25214
movq 0x138(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x730(%rsp)
leaq 0x728(%rsp), %rdi
callq 0x29b20
movq %rax, %rsi
leaq 0x6f0(%rsp), %rdi
callq 0x8230
jmp 0x25248
movq 0x650(%rsp), %rdi
movsd 0x730(%rsp), %xmm0
leaq 0x6f0(%rsp), %rsi
callq 0x1ca50
jmp 0x25268
leaq 0x6f0(%rsp), %rdi
callq 0x8998
leaq 0x728(%rsp), %rdi
xorl %esi, %esi
callq 0x29b60
movq %rax, 0x6e8(%rsp)
jmp 0x25141
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x6f0(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
leaq 0xebe30(%rsp), %rdi
callq 0x11f10
movq %rax, 0x6e0(%rsp)
leaq 0xebe30(%rsp), %rdi
callq 0x11d80
movq %rax, 0x6d8(%rsp)
leaq 0x6e0(%rsp), %rdi
leaq 0x6d8(%rsp), %rsi
callq 0x28e70
testb $0x1, %al
jne 0x252ff
jmp 0x253bf
leaq 0x6e0(%rsp), %rdi
callq 0x29b20
movq %rax, %rsi
leaq 0x6b8(%rsp), %rdi
callq 0x8230
jmp 0x2531e
leaq 0x6e0(%rsp), %rdi
callq 0x29b20
movq %rax, %rsi
leaq 0xebd70(%rsp), %rdi
callq 0x294b0
movq %rax, 0x130(%rsp)
jmp 0x25345
movq 0x650(%rsp), %rdi
movq 0x130(%rsp), %rax
movsd (%rax), %xmm0
leaq 0x6b8(%rsp), %rsi
movsd 0x29c9f(%rip), %xmm1    # 0x4f008
callq 0x1c6d0
jmp 0x25370
leaq 0x6b8(%rsp), %rdi
callq 0x8998
leaq 0x6e0(%rsp), %rdi
xorl %esi, %esi
callq 0x29b60
movq %rax, 0x6b0(%rsp)
jmp 0x252cc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x6b8(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
leaq 0xebe48(%rsp), %rdi
callq 0x11f10
movq %rax, 0x6a8(%rsp)
leaq 0xebe48(%rsp), %rdi
callq 0x11d80
movq %rax, 0x6a0(%rsp)
leaq 0x6a8(%rsp), %rdi
leaq 0x6a0(%rsp), %rsi
callq 0x28e70
testb $0x1, %al
jne 0x25407
jmp 0x2554a
movabsq $0x3ff0000000000000, %rax # imm = 0x3FF0000000000000
movq %rax, 0x730(%rsp)
leaq 0x6a8(%rsp), %rdi
callq 0x29b20
movq %rax, %rsi
leaq 0xebce0(%rsp), %rdi
callq 0x29af0
movq %rax, 0x128(%rsp)
jmp 0x25440
movq 0x128(%rsp), %rax
movq %rax, 0x698(%rsp)
leaq 0xebce0(%rsp), %rdi
callq 0x29b30
movq %rax, 0x690(%rsp)
leaq 0x698(%rsp), %rdi
leaq 0x690(%rsp), %rsi
callq 0x29ad0
testb $0x1, %al
jne 0x25480
jmp 0x254bc
leaq 0x6a8(%rsp), %rdi
callq 0x29b20
movq %rax, %rsi
leaq 0xebce0(%rsp), %rdi
callq 0x294b0
movq %rax, 0x120(%rsp)
jmp 0x254a7
movq 0x120(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x730(%rsp)
leaq 0x6a8(%rsp), %rdi
callq 0x29b20
movq %rax, %rsi
leaq 0x670(%rsp), %rdi
callq 0x8230
jmp 0x254db
movq 0x650(%rsp), %rdi
movsd 0x730(%rsp), %xmm0
leaq 0x670(%rsp), %rsi
callq 0x1cc20
jmp 0x254fb
leaq 0x670(%rsp), %rdi
callq 0x8998
leaq 0x6a8(%rsp), %rdi
xorl %esi, %esi
callq 0x29b60
movq %rax, 0x668(%rsp)
jmp 0x253d4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
leaq 0x670(%rsp), %rdi
callq 0x8998
jmp 0x25d7b
movq 0x650(%rsp), %rdi
leaq 0xebe18(%rsp), %rsi
callq 0x260b0
movb %al, 0x11f(%rsp)
jmp 0x25568
movb 0x11f(%rsp), %al
testb $0x1, %al
jne 0x255e1
jmp 0x25575
movl $0x10, %edi
callq 0x8280
movq %rax, %rdi
movq %rdi, %rax
movq %rax, 0x110(%rsp)
leaq 0x2b7ce(%rip), %rsi     # 0x50d62
callq 0x8200
jmp 0x2559b
movq 0x110(%rsp), %rdi
movq 0x44a46(%rip), %rsi     # 0x69ff0
movq 0x449c7(%rip), %rdx     # 0x69f78
callq 0x8820
jmp 0x25e65
movq 0x110(%rsp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
callq 0x83a0
jmp 0x25d7b
movq 0x650(%rsp), %rdi
leaq 0xebe00(%rsp), %rsi
callq 0x260b0
movb %al, 0x10f(%rsp)
jmp 0x255ff
movb 0x10f(%rsp), %al
testb $0x1, %al
jne 0x25678
jmp 0x2560c
movl $0x10, %edi
callq 0x8280
movq %rax, %rdi
movq %rdi, %rax
movq %rax, 0x100(%rsp)
leaq 0x2b737(%rip), %rsi     # 0x50d62
callq 0x8200
jmp 0x25632
movq 0x100(%rsp), %rdi
movq 0x449af(%rip), %rsi     # 0x69ff0
movq 0x44930(%rip), %rdx     # 0x69f78
callq 0x8820
jmp 0x25e65
movq 0x100(%rsp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
callq 0x83a0
jmp 0x25d7b
movq 0x650(%rsp), %rdi
leaq 0xebde8(%rsp), %rsi
callq 0x260b0
movb %al, 0xff(%rsp)
jmp 0x25696
movb 0xff(%rsp), %al
testb $0x1, %al
jne 0x2570f
jmp 0x256a3
movl $0x10, %edi
callq 0x8280
movq %rax, %rdi
movq %rdi, %rax
movq %rax, 0xf0(%rsp)
leaq 0x2b750(%rip), %rsi     # 0x50e12
callq 0x8200
jmp 0x256c9
movq 0xf0(%rsp), %rdi
movq 0x44918(%rip), %rsi     # 0x69ff0
movq 0x44899(%rip), %rdx     # 0x69f78
callq 0x8820
jmp 0x25e65
movq 0xf0(%rsp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
callq 0x83a0
jmp 0x25d7b
movq 0x650(%rsp), %rdi
leaq 0xebdd0(%rsp), %rsi
callq 0x260b0
movb %al, 0xef(%rsp)
jmp 0x2572d
movb 0xef(%rsp), %al
testb $0x1, %al
jne 0x257a6
jmp 0x2573a
movl $0x10, %edi
callq 0x8280
movq %rax, %rdi
movq %rdi, %rax
movq %rax, 0xe0(%rsp)
leaq 0x2b6b9(%rip), %rsi     # 0x50e12
callq 0x8200
jmp 0x25760
movq 0xe0(%rsp), %rdi
movq 0x44881(%rip), %rsi     # 0x69ff0
movq 0x44802(%rip), %rdx     # 0x69f78
callq 0x8820
jmp 0x25e65
movq 0xe0(%rsp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
callq 0x83a0
jmp 0x25d7b
movq 0x650(%rsp), %rdi
leaq 0xebda0(%rsp), %rsi
callq 0x263a0
movb %al, 0xdf(%rsp)
jmp 0x257c4
movb 0xdf(%rsp), %al
testb $0x1, %al
jne 0x2583d
jmp 0x257d1
movl $0x10, %edi
callq 0x8280
movq %rax, %rdi
movq %rdi, %rax
movq %rax, 0xd0(%rsp)
leaq 0x2b6e3(%rip), %rsi     # 0x50ed3
callq 0x8200
jmp 0x257f7
movq 0xd0(%rsp), %rdi
movq 0x447ea(%rip), %rsi     # 0x69ff0
movq 0x4476b(%rip), %rdx     # 0x69f78
callq 0x8820
jmp 0x25e65
movq 0xd0(%rsp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
callq 0x83a0
jmp 0x25d7b
movq 0x650(%rsp), %rdi
leaq 0xebd40(%rsp), %rsi
callq 0x263a0
movb %al, 0xcf(%rsp)
jmp 0x2585b
movb 0xcf(%rsp), %al
testb $0x1, %al
jne 0x258d4
jmp 0x25868
movl $0x10, %edi
callq 0x8280
movq %rax, %rdi
movq %rdi, %rax
movq %rax, 0xc0(%rsp)
leaq 0x2b6be(%rip), %rsi     # 0x50f45
callq 0x8200
jmp 0x2588e
movq 0xc0(%rsp), %rdi
movq 0x44753(%rip), %rsi     # 0x69ff0
movq 0x446d4(%rip), %rdx     # 0x69f78
callq 0x8820
jmp 0x25e65
movq 0xc0(%rsp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0xebef8(%rsp)
movl %eax, 0xebef4(%rsp)
callq 0x83a0
jmp 0x25d7b
movq 0x650(%rsp), %rdi
movl $0x3e8, %esi            # imm = 0x3E8
callq 0x265c0
jmp 0x258e8
movq 0x650(%rsp), %rdi
callq 0x26ba0
movl %eax, 0xbc(%rsp)
jmp 0x258fe
movl 0xbc(%rsp), %eax
movl %eax, 0x664(%rsp)
movq 0x446cd(%rip), %rdi     # 0x69fe0
leaq 0x2b693(%rip), %rsi     # 0x50fad
callq 0x8480
movq %rax, 0xb0(%rsp)
jmp 0x25929
leaq 0xebea8(%rsp), %rdi
callq 0x29ba0
movq 0xb0(%rsp), %rdi
movq %rax, %rsi
callq 0x8110
movq %rax, 0xa8(%rsp)
jmp 0x25950
movq 0xa8(%rsp), %rdi
movq 0x445d1(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x25966
movq 0x44673(%rip), %rdi     # 0x69fe0
leaq 0x2b649(%rip), %rsi     # 0x50fbd
callq 0x8480
movq %rax, 0xa0(%rsp)
jmp 0x25983
movq 0xa0(%rsp), %rdi
movl 0x664(%rsp), %esi
callq 0x8630
movq %rax, 0x98(%rsp)
jmp 0x259a1
movq 0x98(%rsp), %rdi
movq 0x44580(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x259b7
movq 0x44622(%rip), %rdi     # 0x69fe0
leaq 0x2b602(%rip), %rsi     # 0x50fc7
callq 0x8480
movq %rax, 0x90(%rsp)
jmp 0x259d4
leaq 0xebe18(%rsp), %rdi
callq 0x29bb0
movq 0x90(%rsp), %rdi
movq %rax, %rsi
shrq %rsi
callq 0x8110
movq %rax, 0x88(%rsp)
jmp 0x259fe
movq 0x88(%rsp), %rdi
movq 0x44523(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x25a14
movq 0x445c5(%rip), %rdi     # 0x69fe0
leaq 0x2b5b6(%rip), %rsi     # 0x50fd8
callq 0x8480
movq %rax, 0x80(%rsp)
jmp 0x25a31
leaq 0xebd40(%rsp), %rdi
callq 0x29bd0
movq 0x80(%rsp), %rdi
movq %rax, %rsi
shrq %rsi
callq 0x8110
movq %rax, 0x78(%rsp)
jmp 0x25a58
movq 0x78(%rsp), %rdi
movq 0x444cc(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x25a6b
movq 0x4456e(%rip), %rdi     # 0x69fe0
leaq 0x2b582(%rip), %rsi     # 0x50ffb
callq 0x8480
movq %rax, 0x70(%rsp)
jmp 0x25a85
leaq 0xebe00(%rsp), %rdi
callq 0x29bb0
movq 0x70(%rsp), %rdi
movq %rax, %rsi
shrq %rsi
callq 0x8110
movq %rax, 0x68(%rsp)
jmp 0x25aa9
movq 0x68(%rsp), %rdi
movq 0x4447b(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x25abc
movq 0x4451d(%rip), %rdi     # 0x69fe0
leaq 0x2b562(%rip), %rsi     # 0x5102c
callq 0x8480
movq %rax, 0x60(%rsp)
jmp 0x25ad6
leaq 0xebdd0(%rsp), %rdi
callq 0x29bb0
movq 0x60(%rsp), %rdi
movq %rax, %rsi
shrq %rsi
callq 0x8110
movq %rax, 0x58(%rsp)
jmp 0x25afa
movq 0x58(%rsp), %rdi
movq 0x4442a(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x25b0d
movq 0x444cc(%rip), %rdi     # 0x69fe0
leaq 0x2b544(%rip), %rsi     # 0x5105f
callq 0x8480
movq %rax, 0x50(%rsp)
jmp 0x25b27
leaq 0xebde8(%rsp), %rdi
callq 0x29bb0
movq 0x50(%rsp), %rdi
movq %rax, %rsi
shrq %rsi
callq 0x8110
movq %rax, 0x48(%rsp)
jmp 0x25b4b
movq 0x48(%rsp), %rdi
movq 0x443d9(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x25b5e
movq 0x4447b(%rip), %rdi     # 0x69fe0
leaq 0x2b526(%rip), %rsi     # 0x51092
callq 0x8480
movq %rax, 0x40(%rsp)
jmp 0x25b78
leaq 0xebe60(%rsp), %rdi
callq 0xc610
movq 0x40(%rsp), %rdi
movq %rax, %rsi
callq 0x8110
movq %rax, 0x38(%rsp)
jmp 0x25b99
movq 0x38(%rsp), %rdi
movq 0x4438b(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x25bac
movq 0x4442d(%rip), %rdi     # 0x69fe0
leaq 0x2b4ec(%rip), %rsi     # 0x510a6
callq 0x8480
movq %rax, 0x30(%rsp)
jmp 0x25bc6
leaq 0xebd10(%rsp), %rdi
callq 0x29be0
movq 0x30(%rsp), %rdi
movq %rax, %rsi
callq 0x8110
movq %rax, 0x28(%rsp)
jmp 0x25be7
movq 0x28(%rsp), %rdi
movq 0x4433d(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x25bfa
movq 0x443df(%rip), %rdi     # 0x69fe0
leaq 0x2b4c1(%rip), %rsi     # 0x510c9
callq 0x8480
movq %rax, 0x20(%rsp)
jmp 0x25c14
leaq 0xebe48(%rsp), %rdi
callq 0xc610
movq 0x20(%rsp), %rdi
movq %rax, %rsi
callq 0x8110
movq %rax, 0x18(%rsp)
jmp 0x25c35
movq 0x18(%rsp), %rdi
movq 0x442ef(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x25c48
movq 0x44391(%rip), %rdi     # 0x69fe0
leaq 0x2b484(%rip), %rsi     # 0x510da
callq 0x8480
movq %rax, 0x10(%rsp)
jmp 0x25c62
leaq 0xebce0(%rsp), %rdi
callq 0x29be0
movq 0x10(%rsp), %rdi
movq %rax, %rsi
callq 0x8110
movq %rax, 0x8(%rsp)
jmp 0x25c83
movq 0x8(%rsp), %rdi
movq 0x442a1(%rip), %rsi     # 0x69f30
callq 0x84e0
jmp 0x25c96
leaq 0xebce0(%rsp), %rdi
callq 0x29bf0
leaq 0xebd10(%rsp), %rdi
callq 0x29bf0
leaq 0xebd40(%rsp), %rdi
callq 0x29c00
leaq 0xebd70(%rsp), %rdi
callq 0x29bf0
leaq 0xebda0(%rsp), %rdi
callq 0x29c00
leaq 0xebdd0(%rsp), %rdi
callq 0x29c10
leaq 0xebde8(%rsp), %rdi
callq 0x29c10
leaq 0xebe00(%rsp), %rdi
callq 0x29c10
leaq 0xebe18(%rsp), %rdi
callq 0x29c10
leaq 0xebe30(%rsp), %rdi
callq 0xc570
leaq 0xebe48(%rsp), %rdi
callq 0xc570
leaq 0xebe60(%rsp), %rdi
callq 0xc570
leaq 0xebe78(%rsp), %rdi
callq 0xc750
leaq 0xebea8(%rsp), %rdi
callq 0x29c70
leaq 0xebed8(%rsp), %rdi
callq 0xc570
leaq 0xebf00(%rsp), %rdi
callq 0x8150
leaq 0xec108(%rsp), %rdi
callq 0x8998
addq $0xec148, %rsp          # imm = 0xEC148
retq
leaq 0xebce0(%rsp), %rdi
callq 0x29bf0
leaq 0xebd10(%rsp), %rdi
callq 0x29bf0
leaq 0xebd40(%rsp), %rdi
callq 0x29c00
leaq 0xebd70(%rsp), %rdi
callq 0x29bf0
leaq 0xebda0(%rsp), %rdi
callq 0x29c00
leaq 0xebdd0(%rsp), %rdi
callq 0x29c10
leaq 0xebde8(%rsp), %rdi
callq 0x29c10
leaq 0xebe00(%rsp), %rdi
callq 0x29c10
leaq 0xebe18(%rsp), %rdi
callq 0x29c10
leaq 0xebe30(%rsp), %rdi
callq 0xc570
leaq 0xebe48(%rsp), %rdi
callq 0xc570
leaq 0xebe60(%rsp), %rdi
callq 0xc570
leaq 0xebe78(%rsp), %rdi
callq 0xc750
leaq 0xebea8(%rsp), %rdi
callq 0x29c70
leaq 0xebed8(%rsp), %rdi
callq 0xc570
leaq 0xebf00(%rsp), %rdi
callq 0x8150
leaq 0xec108(%rsp), %rdi
callq 0x8998
movq 0xebef8(%rsp), %rdi
callq 0x8870
nopw %cs:(%rax,%rax)