// File: ncbi[P]amr/amrfinder_update.cpp
// Function: (anonymous namespace)::ThisApplication::shellBody() const
void shellBody () const final
  {
    const string mainDirOrig  = getArg ("database");
          string blast_bin    = getArg ("blast_bin");
          string hmmer_bin    = getArg ("hmmer_bin");
    const bool   force_update = getFlag ("force_update");
        
    addDirSlash (blast_bin);
    addDirSlash (hmmer_bin);
    
        
    const Verbose vrb (qc_on);
    

    Curl curl;
        
    
    const bool screen = ! isRedirected (cerr);
    
    // FTP site files
    stderr << "Looking up the published databases at " << colorizeUrl (URL, screen) << '\n';    
    string load_minor = curMinor;
    string load_data_version;    
    {
      const string published_minor (getLatestMinor (curl));
      if (published_minor. empty ())
        throw runtime_error ("Cannot get the software minor version of the latest published database version");
    //if (qc_on)
      //stderr << "Latest published software minor version: " << published_minor << "\n";
      // ASSERT: published_minor >= curMinor

      const string published_data_version (getLatestDataVersion (curl, published_minor));
      if (published_data_version. empty ())
        throw runtime_error ("Cannot get the latest published database version for the software minor version " + published_minor);

      const string cur_data_version (getLatestDataVersion (curl, curMinor));
      load_data_version = cur_data_version;    
      if (cur_data_version. empty ())  // Contents of (URL + curMinor) are empty ??
      {
        stderr << "\n";
        const Warning w (stderr);
        stderr << "Cannot get the latest published database version for the current software minor version " + curMinor + ".\n"
               << "The latest published database version " + published_data_version + " for the latest published software minor version " + published_minor + " will be used instead";
        load_minor        = published_minor;
        load_data_version = published_data_version;
      }
      else if (cur_data_version != published_data_version)  
      {   
        ASSERT (cur_data_version < published_data_version);
        stderr << "\n";
        const Warning w (stderr);
        stderr << "A newer version of the database exists (" << published_data_version << "), but it requires "
                  "a newer version of the software (" << published_minor << ") to install.\n"
                  "See " + colorizeUrl ("https://github.com/ncbi/amr/wiki/Upgrading", screen) + " for more information.\n";
      }
    }
    ASSERT (! load_data_version. empty ());
   

    // Users's files  
    string mainDirS;
    {
      const Dir mainDir (mainDirOrig);
      mainDirS = mainDir. get ();
    }
    addDirSlash (mainDirS);
    
    const string versionFName ("version.txt");
    const string urlDir (URL + load_minor + "/" + load_data_version + "/");    
    const string latestDir (mainDirS + load_data_version + "/");
    
    stderr << "Looking for the target directory: " << colorizeDir (latestDir, screen) << "\n";
    if (directoryExists (latestDir))
    {
      if (force_update)
        stderr << colorizeDir (latestDir, screen) << ": already exists, overwriting what was there\n";
      else
      {
        curl. download (urlDir + versionFName, tmp + "/curl");
        const StringVector version_old (latestDir + versionFName, (size_t) 100, true);
        const StringVector version_new (tmp + "/curl", (size_t) 100, true);
        if (   ! version_old. empty () 
            && ! version_new. empty ()
            && version_old. front () == version_new. front ()
           )
        {
          const Warning w (stderr);
          stderr << colorizeDir (latestDir, screen) << ": contains the latest version " << version_old. front () << '\n';
          stderr << "Skipping update\nUse amrfinder --force_update to overwrite the existing database";
          createLatestLink (mainDirS, /*latestDir*/ load_data_version);
          return;
        }
      }
    }
    else
      Dir (latestDir). create ();
    
    stderr << "Downloading AMRFinder database version " << load_data_version << " into: " << colorizeDir (latestDir, screen) << "\n";
    // Requires: Software version >= 3.13.1
    fetchAMRFile (curl, urlDir, latestDir, "AMR.LIB");
    fetchAMRFile (curl, urlDir, latestDir, "AMRProt.fa");
    fetchAMRFile (curl, urlDir, latestDir, "AMRProt-mutation.tsv");
    fetchAMRFile (curl, urlDir, latestDir, "AMRProt-suppress.tsv");
    fetchAMRFile (curl, urlDir, latestDir, "AMRProt-susceptible.tsv");
    fetchAMRFile (curl, urlDir, latestDir, "AMR_CDS.fa");
    fetchAMRFile (curl, urlDir, latestDir, "database_format_version.txt");  // PD-3051 
    fetchAMRFile (curl, urlDir, latestDir, "fam.tsv");
    fetchAMRFile (curl, urlDir, latestDir, "taxgroup.tsv");
    fetchAMRFile (curl, urlDir, latestDir, versionFName);
    
    StringVector dnaPointMuts;
    {
      LineInput f (latestDir + "taxgroup.tsv");
      while (f. nextLine ())
      {
   	    if (isLeft (f. line, "#"))
	 	      continue;
        string taxgroup, gpipe;
        int n = -1;
        istringstream iss (f. line);
        iss >> taxgroup >> gpipe >> n;
        QC_ASSERT (n >= 0);
        if (n)
          dnaPointMuts << taxgroup;
      }
    }
    
    for (const string& dnaPointMut : dnaPointMuts)
    {
      fetchAMRFile (curl, urlDir, latestDir, "AMR_DNA-" + dnaPointMut + ".fa");
      fetchAMRFile (curl, urlDir, latestDir, "AMR_DNA-" + dnaPointMut + ".tsv");
    }

    fetchAMRFile (curl, urlDir, latestDir, "changes.txt");

    createLatestLink (mainDirS, load_data_version);
  

    prog2dir ["amrfinder_index"] = execDir;
	  exec (fullProg ("amrfinder_index") + shellQuote (latestDir) 
	          + makeKey ("blast_bin", blast_bin)   
	          + makeKey ("hmmer_bin", hmmer_bin)  
	          + ifS (getQuiet (), " -q") + ifS (qc_on, " --debug") + " > " + tmp + "/amrfinder_index.err", tmp + "/amrfinder_index.err"); 
  }

// Assembly:
subq $0x15b8, %rsp           # imm = 0x15B8
movq %rdi, 0x15b0(%rsp)
movq 0x15b0(%rsp), %rax
movq %rax, 0x218(%rsp)
leaq 0x156f(%rsp), %rdi
movq %rdi, 0x220(%rsp)
callq 0xbb30
movq 0x220(%rsp), %rdx
leaq 0x87a6a(%rip), %rsi     # 0x946bd
leaq 0x1570(%rsp), %rdi
callq 0x125d0
jmp 0xcc62
movq 0x218(%rsp), %rsi
leaq 0x1590(%rsp), %rdi
leaq 0x1570(%rsp), %rdx
callq 0x49440
jmp 0xcc81
leaq 0x1570(%rsp), %rdi
callq 0xbe38
leaq 0x156f(%rsp), %rdi
callq 0xbe10
leaq 0x1517(%rsp), %rdi
movq %rdi, 0x210(%rsp)
callq 0xbb30
movq 0x210(%rsp), %rdx
leaq 0x87465(%rip), %rsi     # 0x94124
leaq 0x1518(%rsp), %rdi
callq 0x125d0
jmp 0xccce
movq 0x218(%rsp), %rsi
leaq 0x1538(%rsp), %rdi
leaq 0x1518(%rsp), %rdx
callq 0x49440
jmp 0xcced
leaq 0x1518(%rsp), %rdi
callq 0xbe38
leaq 0x1517(%rsp), %rdi
callq 0xbe10
leaq 0x14cf(%rsp), %rdi
movq %rdi, 0x208(%rsp)
callq 0xbb30
movq 0x208(%rsp), %rdx
leaq 0x87421(%rip), %rsi     # 0x9414c
leaq 0x14d0(%rsp), %rdi
callq 0x125d0
jmp 0xcd3a
movq 0x218(%rsp), %rsi
leaq 0x14f0(%rsp), %rdi
leaq 0x14d0(%rsp), %rdx
callq 0x49440
jmp 0xcd59
leaq 0x14d0(%rsp), %rdi
callq 0xbe38
leaq 0x14cf(%rsp), %rdi
callq 0xbe10
leaq 0x14a7(%rsp), %rdi
movq %rdi, 0x200(%rsp)
callq 0xbb30
movq 0x200(%rsp), %rdx
leaq 0x873dd(%rip), %rsi     # 0x94174
leaq 0x14a8(%rsp), %rdi
callq 0x125d0
jmp 0xcda6
movq 0x218(%rsp), %rdi
leaq 0x14a8(%rsp), %rsi
callq 0x495d0
movb %al, 0x1ff(%rsp)
jmp 0xcdc4
leaq 0x14a8(%rsp), %rdi
callq 0xbe38
leaq 0x14a7(%rsp), %rdi
callq 0xbe10
movb 0x1ff(%rsp), %al
andb $0x1, %al
movb %al, 0x14ce(%rsp)
leaq 0x1538(%rsp), %rdi
callq 0x14990
jmp 0xcdfd
leaq 0x14f0(%rsp), %rdi
callq 0x14990
jmp 0xce0c
leaq 0xb4dbd(%rip), %rax     # 0xc1bd0
movzbl (%rax), %esi
andl $0x1, %esi
leaq 0x14a0(%rsp), %rdi
callq 0x2b680
jmp 0xce28
leaq 0x1498(%rsp), %rdi
callq 0x149d0
jmp 0xce37
movq 0xb4182(%rip), %rdi     # 0xc0fc0
callq 0x1fc70
movb %al, 0x1fe(%rsp)
jmp 0xce4c
movq 0x218(%rsp), %rdi
movb 0x1fe(%rsp), %al
notb %al
andb $0x1, %al
movb %al, 0x1497(%rsp)
addq $0x1b8, %rdi            # imm = 0x1B8
leaq 0x8743f(%rip), %rsi     # 0x942b3
callq 0x14a60
movq %rax, 0x1f0(%rsp)
jmp 0xce83
leaq 0x144f(%rsp), %rdi
movq %rdi, 0x1e8(%rsp)
callq 0xbb30
movq 0x1e8(%rsp), %rdx
leaq 0x87433(%rip), %rsi     # 0x942da
leaq 0x1450(%rsp), %rdi
callq 0x125d0
jmp 0xceb6
movzbl 0x1497(%rsp), %edx
andl $0x1, %edx
leaq 0x1470(%rsp), %rdi
leaq 0x1450(%rsp), %rsi
callq 0x14b00
jmp 0xced8
movq 0x1f0(%rsp), %rdi
leaq 0x1470(%rsp), %rsi
callq 0x14ab0
movq %rax, 0x1e0(%rsp)
jmp 0xcef7
movq 0x1e0(%rsp), %rdi
movb $0xa, 0x144e(%rsp)
leaq 0x144e(%rsp), %rsi
callq 0x14b50
jmp 0xcf16
leaq 0x1470(%rsp), %rdi
callq 0xbe38
leaq 0x1450(%rsp), %rdi
callq 0xbe38
leaq 0x144f(%rsp), %rdi
callq 0xbe10
movq 0x218(%rsp), %rsi
addq $0x1c8, %rsi            # imm = 0x1C8
leaq 0x1428(%rsp), %rdi
callq 0xb1c0
jmp 0xcf5b
leaq 0x1408(%rsp), %rdi
callq 0xb440
leaq 0x13e8(%rsp), %rdi
leaq 0x1498(%rsp), %rsi
callq 0x10230
jmp 0xcf7f
leaq 0x13e8(%rsp), %rdi
callq 0xb370
testb $0x1, %al
jne 0xcf95
jmp 0xd20e
movl $0x10, %edi
callq 0xb490
movq %rax, %rdi
movq %rdi, %rax
movq %rax, 0x1d8(%rsp)
leaq 0x8737d(%rip), %rsi     # 0x94331
callq 0xb330
jmp 0xcfbb
movq 0x1d8(%rsp), %rdi
movq 0xb3fde(%rip), %rsi     # 0xc0fa8
movq 0xb3fb7(%rip), %rdx     # 0xc0f88
callq 0xb770
jmp 0x10223
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd012
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x1570(%rsp), %rdi
callq 0xbe38
leaq 0x156f(%rsp), %rdi
callq 0xbe10
jmp 0x10216
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd05b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x1518(%rsp), %rdi
callq 0xbe38
leaq 0x1517(%rsp), %rdi
callq 0xbe10
jmp 0x10209
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd0a4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x14d0(%rsp), %rdi
callq 0xbe38
leaq 0x14cf(%rsp), %rdi
callq 0xbe10
jmp 0x101fc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd0ed
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x14a8(%rsp), %rdi
callq 0xbe38
leaq 0x14a7(%rsp), %rdi
callq 0xbe10
jmp 0x101ef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x101ef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x101e2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x101d5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd1a4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd197
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x1470(%rsp), %rdi
callq 0xbe38
leaq 0x1450(%rsp), %rdi
callq 0xbe38
leaq 0x144f(%rsp), %rdi
callq 0xbe10
jmp 0x101d5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x101bb
movq 0x1d8(%rsp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
callq 0xba50
jmp 0xdd5f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xdd5f
leaq 0x13c8(%rsp), %rdi
leaq 0x1498(%rsp), %rsi
leaq 0x13e8(%rsp), %rdx
callq 0x10c70
jmp 0xd22d
leaq 0x13c8(%rsp), %rdi
callq 0xb370
testb $0x1, %al
jne 0xd243
jmp 0xd30f
movb $0x1, 0x13a7(%rsp)
movl $0x10, %edi
callq 0xb490
movq %rax, 0x1d0(%rsp)
leaq 0x8711c(%rip), %rsi     # 0x94380
leaq 0x13a8(%rsp), %rdi
leaq 0x13e8(%rsp), %rdx
callq 0x14bb0
jmp 0xd27b
movq 0x1d0(%rsp), %rdi
leaq 0x13a8(%rsp), %rsi
callq 0xb360
jmp 0xd292
movq 0x1d0(%rsp), %rdi
movb $0x0, 0x13a7(%rsp)
movq 0xb3cff(%rip), %rsi     # 0xc0fa8
movq 0xb3cd8(%rip), %rdx     # 0xc0f88
callq 0xb770
jmp 0x10223
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd2f1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x13a8(%rsp), %rdi
callq 0xbe38
testb $0x1, 0x13a7(%rsp)
jne 0xd2fd
jmp 0xd30a
movq 0x1d0(%rsp), %rdi
callq 0xba50
jmp 0xdd52
movq 0x218(%rsp), %rdx
addq $0x1c8, %rdx            # imm = 0x1C8
leaq 0x1380(%rsp), %rdi
leaq 0x1498(%rsp), %rsi
callq 0x10c70
jmp 0xd335
leaq 0x1408(%rsp), %rdi
leaq 0x1380(%rsp), %rsi
callq 0xbd50
jmp 0xd34c
leaq 0x1380(%rsp), %rdi
callq 0xb370
testb $0x1, %al
jne 0xd362
jmp 0xd661
movq 0x218(%rsp), %rdi
addq $0x1b8, %rdi            # imm = 0x1B8
leaq 0x89ceb(%rip), %rsi     # 0x97063
callq 0x14ce0
jmp 0xd37f
movq 0x218(%rsp), %rsi
addq $0x1b8, %rsi            # imm = 0x1B8
leaq 0x1368(%rsp), %rdi
callq 0x14d30
jmp 0xd39d
movq 0x218(%rsp), %rdx
movq %rdx, %rax
addq $0x1b8, %rax            # imm = 0x1B8
movq %rax, 0x1c8(%rsp)
addq $0x1c8, %rdx            # imm = 0x1C8
leaq 0x8700d(%rip), %rsi     # 0x943d1
leaq 0x1328(%rsp), %rdi
callq 0x14bb0
jmp 0xd3d3
leaq 0x87205(%rip), %rdx     # 0x945df
leaq 0x1348(%rsp), %rdi
leaq 0x1328(%rsp), %rsi
callq 0x14610
jmp 0xd3f1
movq 0x1c8(%rsp), %rdi
leaq 0x1348(%rsp), %rsi
callq 0x14ab0
movq %rax, 0x1c0(%rsp)
jmp 0xd410
leaq 0x87013(%rip), %rsi     # 0x9442a
leaq 0x12a8(%rsp), %rdi
leaq 0x13c8(%rsp), %rdx
callq 0x14bb0
jmp 0xd42e
leaq 0x8701c(%rip), %rdx     # 0x94451
leaq 0x12c8(%rsp), %rdi
leaq 0x12a8(%rsp), %rsi
callq 0x14610
jmp 0xd44c
leaq 0x12e8(%rsp), %rdi
leaq 0x12c8(%rsp), %rsi
leaq 0x13e8(%rsp), %rdx
callq 0x14df0
jmp 0xd46b
leaq 0x87011(%rip), %rdx     # 0x94483
leaq 0x1308(%rsp), %rdi
leaq 0x12e8(%rsp), %rsi
callq 0x14610
jmp 0xd489
movq 0x1c0(%rsp), %rdi
leaq 0x1308(%rsp), %rsi
callq 0x14ab0
jmp 0xd4a0
leaq 0x1308(%rsp), %rdi
callq 0xbe38
leaq 0x12e8(%rsp), %rdi
callq 0xbe38
leaq 0x12c8(%rsp), %rdi
callq 0xbe38
leaq 0x12a8(%rsp), %rdi
callq 0xbe38
leaq 0x1348(%rsp), %rdi
callq 0xbe38
leaq 0x1328(%rsp), %rdi
callq 0xbe38
leaq 0x1428(%rsp), %rdi
leaq 0x13e8(%rsp), %rsi
callq 0xbd50
jmp 0xd505
leaq 0x1408(%rsp), %rdi
leaq 0x13c8(%rsp), %rsi
callq 0xbd50
jmp 0xd51c
leaq 0x1368(%rsp), %rdi
callq 0x14e40
jmp 0xdbce
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xdd52
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xdd45
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd64f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd642
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd635
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd628
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd61b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd60e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x1308(%rsp), %rdi
callq 0xbe38
leaq 0x12e8(%rsp), %rdi
callq 0xbe38
leaq 0x12c8(%rsp), %rdi
callq 0xbe38
leaq 0x12a8(%rsp), %rdi
callq 0xbe38
leaq 0x1348(%rsp), %rdi
callq 0xbe38
leaq 0x1328(%rsp), %rdi
callq 0xbe38
leaq 0x1368(%rsp), %rdi
callq 0x14e40
jmp 0xdd45
leaq 0x1380(%rsp), %rdi
leaq 0x13c8(%rsp), %rsi
callq 0x14e90
testb $0x1, %al
jne 0xd67f
jmp 0xdbcc
callq 0xbbd0
movl $0x0, (%rax)
leaq 0x1380(%rsp), %rdi
leaq 0x13c8(%rsp), %rsi
callq 0x14ec0
testb $0x1, %al
jne 0xd93a
callq 0xb920
cmpl $0x0, %eax
jne 0xd930
leaq 0x1207(%rsp), %rdi
movq %rdi, 0x1b8(%rsp)
callq 0xbb30
movq 0x1b8(%rsp), %rdx
leaq 0x86dc0(%rip), %rsi     # 0x94499
leaq 0x1208(%rsp), %rdi
callq 0x125d0
jmp 0xd6e8
leaq 0x11e0(%rsp), %rdi
movl $0x11e, %esi            # imm = 0x11E
callq 0x14f00
jmp 0xd6fc
leaq 0x1228(%rsp), %rdi
leaq 0x1208(%rsp), %rsi
leaq 0x11e0(%rsp), %rdx
callq 0x14520
jmp 0xd71b
leaq 0x86d95(%rip), %rdx     # 0x944b7
leaq 0x1248(%rsp), %rdi
leaq 0x1228(%rsp), %rsi
callq 0x14610
jmp 0xd739
leaq 0x119f(%rsp), %rdi
movq %rdi, 0x1b0(%rsp)
callq 0xbb30
movq 0x1b0(%rsp), %rdx
leaq 0x86d60(%rip), %rsi     # 0x944bd
leaq 0x11a0(%rsp), %rdi
callq 0x125d0
jmp 0xd76c
leaq 0x878d1(%rip), %rdx     # 0x95044
leaq 0x11c0(%rsp), %rdi
leaq 0x11a0(%rsp), %rsi
callq 0x14610
jmp 0xd78a
leaq 0x1268(%rsp), %rdi
leaq 0x1248(%rsp), %rsi
leaq 0x11c0(%rsp), %rdx
callq 0x14520
jmp 0xd7a9
leaq 0x86d54(%rip), %rdx     # 0x94504
leaq 0x1288(%rsp), %rdi
leaq 0x1268(%rsp), %rsi
callq 0x14610
jmp 0xd7c7
leaq 0x1288(%rsp), %rdi
callq 0x1f7f0
jmp 0xd7d6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd91e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd911
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd904
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd8f7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd8dd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd8d0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd8c3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xd8b6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x1288(%rsp), %rdi
callq 0xbe38
leaq 0x1268(%rsp), %rdi
callq 0xbe38
leaq 0x11c0(%rsp), %rdi
callq 0xbe38
leaq 0x11a0(%rsp), %rdi
callq 0xbe38
leaq 0x119f(%rsp), %rdi
callq 0xbe10
leaq 0x1248(%rsp), %rdi
callq 0xbe38
leaq 0x1228(%rsp), %rdi
callq 0xbe38
leaq 0x11e0(%rsp), %rdi
callq 0xbe38
leaq 0x1208(%rsp), %rdi
callq 0xbe38
leaq 0x1207(%rsp), %rdi
callq 0xbe10
jmp 0xdd45
movl $0x1, %edi
callq 0xb800
movq 0x218(%rsp), %rdi
addq $0x1b8, %rdi            # imm = 0x1B8
leaq 0x89713(%rip), %rsi     # 0x97063
callq 0x14ce0
jmp 0xd957
movq 0x218(%rsp), %rsi
addq $0x1b8, %rsi            # imm = 0x1B8
leaq 0x1180(%rsp), %rdi
callq 0x14d30
jmp 0xd975
movq 0x218(%rsp), %rdi
addq $0x1b8, %rdi            # imm = 0x1B8
leaq 0x86ba3(%rip), %rsi     # 0x9452e
callq 0x15040
movq %rax, 0x1a8(%rsp)
jmp 0xd99a
movq 0x1a8(%rsp), %rdi
leaq 0x13c8(%rsp), %rsi
callq 0x14ab0
movq %rax, 0x1a0(%rsp)
jmp 0xd9b9
movq 0x1a0(%rsp), %rdi
leaq 0x86b8f(%rip), %rsi     # 0x94557
callq 0x15090
movq %rax, 0x198(%rsp)
jmp 0xd9d7
movq 0x198(%rsp), %rdi
leaq 0x13e8(%rsp), %rsi
callq 0x14ab0
movq %rax, 0x190(%rsp)
jmp 0xd9f6
leaq 0x10ff(%rsp), %rdi
movq %rdi, 0x188(%rsp)
callq 0xbb30
movq 0x188(%rsp), %rdx
leaq 0x86b85(%rip), %rsi     # 0x9459f
leaq 0x1100(%rsp), %rdi
callq 0x125d0
jmp 0xda29
movzbl 0x1497(%rsp), %edx
andl $0x1, %edx
leaq 0x1120(%rsp), %rdi
leaq 0x1100(%rsp), %rsi
callq 0x14b00
jmp 0xda4b
leaq 0x86b3a(%rip), %rsi     # 0x9458c
leaq 0x1140(%rsp), %rdi
leaq 0x1120(%rsp), %rdx
callq 0x150e0
jmp 0xda69
leaq 0x86b5a(%rip), %rdx     # 0x945ca
leaq 0x1160(%rsp), %rdi
leaq 0x1140(%rsp), %rsi
callq 0x14610
jmp 0xda87
movq 0x190(%rsp), %rdi
leaq 0x1160(%rsp), %rsi
callq 0x14ab0
jmp 0xda9e
leaq 0x1160(%rsp), %rdi
callq 0xbe38
leaq 0x1140(%rsp), %rdi
callq 0xbe38
leaq 0x1120(%rsp), %rdi
callq 0xbe38
leaq 0x1100(%rsp), %rdi
callq 0xbe38
leaq 0x10ff(%rsp), %rdi
callq 0xbe10
leaq 0x1180(%rsp), %rdi
callq 0x14e40
jmp 0xdbcc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xdbba
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xdbad
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xdba0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xdb93
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xdb86
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x1160(%rsp), %rdi
callq 0xbe38
leaq 0x1140(%rsp), %rdi
callq 0xbe38
leaq 0x1120(%rsp), %rdi
callq 0xbe38
leaq 0x1100(%rsp), %rdi
callq 0xbe38
leaq 0x10ff(%rsp), %rdi
callq 0xbe10
leaq 0x1180(%rsp), %rdi
callq 0x14e40
jmp 0xdd45
jmp 0xdbce
leaq 0x1380(%rsp), %rdi
callq 0xbe38
leaq 0x13c8(%rsp), %rdi
callq 0xbe38
leaq 0x13e8(%rsp), %rdi
callq 0xbe38
callq 0xbbd0
movl $0x0, (%rax)
leaq 0x1408(%rsp), %rdi
callq 0xb370
testb $0x1, %al
jne 0xdc16
jmp 0xded5
callq 0xb920
cmpl $0x0, %eax
jne 0xdecb
leaq 0x1057(%rsp), %rdi
movq %rdi, 0x180(%rsp)
callq 0xbb30
movq 0x180(%rsp), %rdx
leaq 0x86851(%rip), %rsi     # 0x94499
leaq 0x1058(%rsp), %rdi
callq 0x125d0
jmp 0xdc57
leaq 0x1030(%rsp), %rdi
movl $0x126, %esi            # imm = 0x126
callq 0x14f00
jmp 0xdc6b
leaq 0x1078(%rsp), %rdi
leaq 0x1058(%rsp), %rsi
leaq 0x1030(%rsp), %rdx
callq 0x14520
jmp 0xdc8a
leaq 0x86826(%rip), %rdx     # 0x944b7
leaq 0x1098(%rsp), %rdi
leaq 0x1078(%rsp), %rsi
callq 0x14610
jmp 0xdca8
leaq 0xfef(%rsp), %rdi
movq %rdi, 0x178(%rsp)
callq 0xbb30
movq 0x178(%rsp), %rdx
leaq 0x867f1(%rip), %rsi     # 0x944bd
leaq 0xff0(%rsp), %rdi
callq 0x125d0
jmp 0xdcdb
leaq 0x87362(%rip), %rdx     # 0x95044
leaq 0x1010(%rsp), %rdi
leaq 0xff0(%rsp), %rsi
callq 0x14610
jmp 0xdcf9
leaq 0x10b8(%rsp), %rdi
leaq 0x1098(%rsp), %rsi
leaq 0x1010(%rsp), %rdx
callq 0x14520
jmp 0xdd18
leaq 0x868c3(%rip), %rdx     # 0x945e2
leaq 0x10d8(%rsp), %rdi
leaq 0x10b8(%rsp), %rsi
callq 0x14610
jmp 0xdd36
leaq 0x10d8(%rsp), %rdi
callq 0x1f7f0
jmp 0xdd45
leaq 0x1380(%rsp), %rdi
callq 0xbe38
leaq 0x13c8(%rsp), %rdi
callq 0xbe38
leaq 0x13e8(%rsp), %rdi
callq 0xbe38
jmp 0x101bb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xdeb9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xdeac
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xde9f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xde92
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xde78
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xde6b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xde5e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xde51
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x10d8(%rsp), %rdi
callq 0xbe38
leaq 0x10b8(%rsp), %rdi
callq 0xbe38
leaq 0x1010(%rsp), %rdi
callq 0xbe38
leaq 0xff0(%rsp), %rdi
callq 0xbe38
leaq 0xfef(%rsp), %rdi
callq 0xbe10
leaq 0x1098(%rsp), %rdi
callq 0xbe38
leaq 0x1078(%rsp), %rdi
callq 0xbe38
leaq 0x1030(%rsp), %rdi
callq 0xbe38
leaq 0x1058(%rsp), %rdi
callq 0xbe38
leaq 0x1057(%rsp), %rdi
callq 0xbe10
jmp 0x101bb
movl $0x1, %edi
callq 0xb800
leaq 0xfc8(%rsp), %rdi
callq 0xb440
leaq 0xfb0(%rsp), %rdi
leaq 0x1590(%rsp), %rsi
callq 0x27940
jmp 0xdef9
leaq 0xf90(%rsp), %rdi
leaq 0xfb0(%rsp), %rsi
callq 0x15130
jmp 0xdf10
leaq 0xfc8(%rsp), %rdi
movq %rdi, 0x170(%rsp)
leaq 0xf90(%rsp), %rsi
movq %rsi, 0x168(%rsp)
callq 0xb620
movq 0x168(%rsp), %rdi
callq 0xbe38
leaq 0xfb0(%rsp), %rdi
callq 0x15400
movq 0x170(%rsp), %rdi
callq 0x14990
jmp 0xdf5e
leaq 0xf6f(%rsp), %rdi
movq %rdi, 0x160(%rsp)
callq 0xbb30
movq 0x160(%rsp), %rdx
leaq 0x867e4(%rip), %rsi     # 0x94766
leaq 0xf70(%rsp), %rdi
callq 0x125d0
jmp 0xdf91
leaq 0xf6f(%rsp), %rdi
callq 0xbe10
leaq 0x86335(%rip), %rsi     # 0x942da
leaq 0xee8(%rsp), %rdi
leaq 0x1428(%rsp), %rdx
callq 0x14bb0
jmp 0xdfbc
leaq 0x8a8ca(%rip), %rdx     # 0x9888d
leaq 0xf08(%rsp), %rdi
leaq 0xee8(%rsp), %rsi
callq 0x14610
jmp 0xdfda
leaq 0xf28(%rsp), %rdi
leaq 0xf08(%rsp), %rsi
leaq 0x1408(%rsp), %rdx
callq 0x14df0
jmp 0xdff9
leaq 0x8a88d(%rip), %rdx     # 0x9888d
leaq 0xf48(%rsp), %rdi
leaq 0xf28(%rsp), %rsi
callq 0x14610
jmp 0xe017
leaq 0xf28(%rsp), %rdi
callq 0xbe38
leaq 0xf08(%rsp), %rdi
callq 0xbe38
leaq 0xee8(%rsp), %rdi
callq 0xbe38
leaq 0xea8(%rsp), %rdi
leaq 0xfc8(%rsp), %rsi
leaq 0x1408(%rsp), %rdx
callq 0x15410
jmp 0xe05d
leaq 0x8a829(%rip), %rdx     # 0x9888d
leaq 0xec8(%rsp), %rdi
leaq 0xea8(%rsp), %rsi
callq 0x14610
jmp 0xe07b
leaq 0xea8(%rsp), %rdi
callq 0xbe38
movq 0x218(%rsp), %rdi
addq $0x1b8, %rdi            # imm = 0x1B8
leaq 0x86562(%rip), %rsi     # 0x94600
callq 0x154a0
movq %rax, 0x158(%rsp)
jmp 0xe0ad
movzbl 0x1497(%rsp), %edx
andl $0x1, %edx
leaq 0xe88(%rsp), %rdi
leaq 0xec8(%rsp), %rsi
callq 0x154f0
jmp 0xe0cf
movq 0x158(%rsp), %rdi
leaq 0xe88(%rsp), %rsi
callq 0x14ab0
movq %rax, 0x150(%rsp)
jmp 0xe0ee
movq 0x150(%rsp), %rdi
leaq 0x88f66(%rip), %rsi     # 0x97063
callq 0x14ce0
jmp 0xe104
leaq 0xe88(%rsp), %rdi
callq 0xbe38
leaq 0xec8(%rsp), %rdi
callq 0x15540
movb %al, 0x14f(%rsp)
jmp 0xe127
movb 0x14f(%rsp), %al
testb $0x1, %al
jne 0xe137
jmp 0xe776
testb $0x1, 0x14ce(%rsp)
je 0xe352
movq 0x218(%rsp), %rax
addq $0x1b8, %rax            # imm = 0x1B8
movq %rax, 0x140(%rsp)
movzbl 0x1497(%rsp), %edx
andl $0x1, %edx
leaq 0xe68(%rsp), %rdi
leaq 0xec8(%rsp), %rsi
callq 0x154f0
jmp 0xe17d
movq 0x140(%rsp), %rdi
leaq 0xe68(%rsp), %rsi
callq 0x14ab0
movq %rax, 0x138(%rsp)
jmp 0xe19c
movq 0x138(%rsp), %rdi
leaq 0x86478(%rip), %rsi     # 0x94623
callq 0x15560
jmp 0xe1b2
leaq 0xe68(%rsp), %rdi
callq 0xbe38
jmp 0xe774
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x101ae
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xfb0(%rsp), %rdi
callq 0x15400
jmp 0x101ae
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xf6f(%rsp), %rdi
callq 0xbe10
jmp 0x101ae
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x101a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xe29c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xe28f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xf28(%rsp), %rdi
callq 0xbe38
leaq 0xf08(%rsp), %rdi
callq 0xbe38
leaq 0xee8(%rsp), %rdi
callq 0xbe38
jmp 0x101a1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10194
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xea8(%rsp), %rdi
callq 0xbe38
jmp 0x10194
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xe88(%rsp), %rdi
callq 0xbe38
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xe68(%rsp), %rdi
callq 0xbe38
jmp 0x10187
leaq 0xe48(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xf70(%rsp), %rdx
callq 0x15410
jmp 0xe371
movq 0x218(%rsp), %rsi
addq $0x168, %rsi            # imm = 0x168
leaq 0x862ca(%rip), %rdx     # 0x94651
leaq 0xe28(%rsp), %rdi
callq 0x155b0
jmp 0xe396
leaq 0x1498(%rsp), %rdi
leaq 0xe48(%rsp), %rsi
leaq 0xe28(%rsp), %rdx
callq 0x91350
jmp 0xe3b5
leaq 0xe28(%rsp), %rdi
callq 0xbe38
leaq 0xe48(%rsp), %rdi
callq 0xbe38
leaq 0xde8(%rsp), %rdi
leaq 0xec8(%rsp), %rsi
leaq 0xf70(%rsp), %rdx
callq 0x15410
jmp 0xe3ee
leaq 0xe08(%rsp), %rdi
leaq 0xde8(%rsp), %rsi
movl $0x64, %edx
movl $0x1, %ecx
callq 0x2e780
jmp 0xe40f
leaq 0xde8(%rsp), %rdi
callq 0xbe38
movq 0x218(%rsp), %rsi
addq $0x168, %rsi            # imm = 0x168
leaq 0x8621f(%rip), %rdx     # 0x94651
leaq 0xda8(%rsp), %rdi
callq 0x155b0
jmp 0xe441
leaq 0xdc8(%rsp), %rdi
leaq 0xda8(%rsp), %rsi
movl $0x64, %edx
movl $0x1, %ecx
callq 0x2e780
jmp 0xe462
leaq 0xda8(%rsp), %rdi
callq 0xbe38
leaq 0xe08(%rsp), %rdi
callq 0x15640
testb $0x1, %al
jne 0xe71d
leaq 0xdc8(%rsp), %rdi
callq 0x15640
testb $0x1, %al
jne 0xe71d
leaq 0xe08(%rsp), %rdi
callq 0x15730
movq %rax, 0x130(%rsp)
leaq 0xdc8(%rsp), %rdi
callq 0x15730
movq 0x130(%rsp), %rdi
movq %rax, %rsi
callq 0x15690
testb $0x1, %al
jne 0xe4d4
jmp 0xe71d
movq 0x218(%rsp), %rsi
addq $0x1b8, %rsi            # imm = 0x1B8
leaq 0xd90(%rsp), %rdi
callq 0x14d30
jmp 0xe4f2
movq 0x218(%rsp), %rax
addq $0x1b8, %rax            # imm = 0x1B8
movq %rax, 0x128(%rsp)
movzbl 0x1497(%rsp), %edx
andl $0x1, %edx
leaq 0xd70(%rsp), %rdi
leaq 0xec8(%rsp), %rsi
callq 0x154f0
jmp 0xe52a
movq 0x128(%rsp), %rdi
leaq 0xd70(%rsp), %rsi
callq 0x14ab0
movq %rax, 0x120(%rsp)
jmp 0xe549
movq 0x120(%rsp), %rdi
leaq 0x860ff(%rip), %rsi     # 0x94657
callq 0x15760
movq %rax, 0x118(%rsp)
jmp 0xe567
leaq 0xe08(%rsp), %rdi
callq 0x15730
movq 0x118(%rsp), %rdi
movq %rax, %rsi
callq 0x14ab0
movq %rax, 0x110(%rsp)
jmp 0xe58e
movq 0x110(%rsp), %rdi
movb $0xa, 0xd6f(%rsp)
leaq 0xd6f(%rsp), %rsi
callq 0x14b50
jmp 0xe5ad
leaq 0xd70(%rsp), %rdi
callq 0xbe38
movq 0x218(%rsp), %rdi
addq $0x1b8, %rdi            # imm = 0x1B8
leaq 0x860a6(%rip), %rsi     # 0x94676
callq 0x157b0
jmp 0xe5d7
movq 0x218(%rsp), %rdi
leaq 0xfc8(%rsp), %rsi
leaq 0x1408(%rsp), %rdx
callq 0x116d0
jmp 0xe5f6
movl $0x1, 0xd68(%rsp)
leaq 0xd90(%rsp), %rdi
callq 0x14e40
jmp 0xe728
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xe64a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xe28(%rsp), %rdi
callq 0xbe38
leaq 0xe48(%rsp), %rdi
callq 0xbe38
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xde8(%rsp), %rdi
callq 0xbe38
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xe762
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xda8(%rsp), %rdi
callq 0xbe38
jmp 0xe762
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xe755
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xe70e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xd70(%rsp), %rdi
callq 0xbe38
leaq 0xd90(%rsp), %rdi
callq 0x14e40
jmp 0xe755
movl $0x0, 0xd68(%rsp)
leaq 0xdc8(%rsp), %rdi
callq 0x15800
leaq 0xe08(%rsp), %rdi
callq 0x15800
movl 0xd68(%rsp), %eax
testl %eax, %eax
jne 0xfcce
jmp 0xe753
jmp 0xe774
leaq 0xdc8(%rsp), %rdi
callq 0x15800
leaq 0xe08(%rsp), %rdi
callq 0x15800
jmp 0x10187
jmp 0xe7d1
leaq 0xd50(%rsp), %rdi
leaq 0xec8(%rsp), %rsi
callq 0x27940
jmp 0xe78d
leaq 0xd50(%rsp), %rdi
callq 0x282b0
jmp 0xe79c
leaq 0xd50(%rsp), %rdi
callq 0x15400
jmp 0xe7d1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xd50(%rsp), %rdi
callq 0x15400
jmp 0x10187
movq 0x218(%rsp), %rdi
addq $0x1b8, %rdi            # imm = 0x1B8
leaq 0x85edf(%rip), %rsi     # 0x946c6
callq 0x15810
movq %rax, 0x108(%rsp)
jmp 0xe7f6
movq 0x108(%rsp), %rdi
leaq 0x1408(%rsp), %rsi
callq 0x14ab0
movq %rax, 0x100(%rsp)
jmp 0xe815
movq 0x100(%rsp), %rdi
leaq 0x85eca(%rip), %rsi     # 0x946ee
callq 0x15860
movq %rax, 0xf8(%rsp)
jmp 0xe833
movzbl 0x1497(%rsp), %edx
andl $0x1, %edx
leaq 0xd30(%rsp), %rdi
leaq 0xec8(%rsp), %rsi
callq 0x154f0
jmp 0xe855
movq 0xf8(%rsp), %rdi
leaq 0xd30(%rsp), %rsi
callq 0x14ab0
movq %rax, 0xf0(%rsp)
jmp 0xe874
movq 0xf0(%rsp), %rdi
leaq 0x887e0(%rip), %rsi     # 0x97063
callq 0x14ce0
jmp 0xe88a
leaq 0xd30(%rsp), %rdi
callq 0xbe38
leaq 0xd0f(%rsp), %rdi
movq %rdi, 0xe8(%rsp)
callq 0xbb30
movq 0xe8(%rsp), %rdx
leaq 0x85e3b(%rip), %rsi     # 0x946f6
leaq 0xd10(%rsp), %rdi
callq 0x125d0
jmp 0xe8ca
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0xd10(%rsp), %rcx
callq 0x11cf0
jmp 0xe8f1
leaq 0xd10(%rsp), %rdi
callq 0xbe38
leaq 0xd0f(%rsp), %rdi
callq 0xbe10
leaq 0xce7(%rsp), %rdi
movq %rdi, 0xe0(%rsp)
callq 0xbb30
movq 0xe0(%rsp), %rdx
leaq 0x85dcf(%rip), %rsi     # 0x946fe
leaq 0xce8(%rsp), %rdi
callq 0x125d0
jmp 0xe93e
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0xce8(%rsp), %rcx
callq 0x11cf0
jmp 0xe965
leaq 0xce8(%rsp), %rdi
callq 0xbe38
leaq 0xce7(%rsp), %rdi
callq 0xbe10
leaq 0xcbf(%rsp), %rdi
movq %rdi, 0xd8(%rsp)
callq 0xbb30
movq 0xd8(%rsp), %rdx
leaq 0x85d66(%rip), %rsi     # 0x94709
leaq 0xcc0(%rsp), %rdi
callq 0x125d0
jmp 0xe9b2
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0xcc0(%rsp), %rcx
callq 0x11cf0
jmp 0xe9d9
leaq 0xcc0(%rsp), %rdi
callq 0xbe38
leaq 0xcbf(%rsp), %rdi
callq 0xbe10
leaq 0xc97(%rsp), %rdi
movq %rdi, 0xd0(%rsp)
callq 0xbb30
movq 0xd0(%rsp), %rdx
leaq 0x85d07(%rip), %rsi     # 0x9471e
leaq 0xc98(%rsp), %rdi
callq 0x125d0
jmp 0xea26
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0xc98(%rsp), %rcx
callq 0x11cf0
jmp 0xea4d
leaq 0xc98(%rsp), %rdi
callq 0xbe38
leaq 0xc97(%rsp), %rdi
callq 0xbe10
leaq 0xc6f(%rsp), %rdi
movq %rdi, 0xc8(%rsp)
callq 0xbb30
movq 0xc8(%rsp), %rdx
leaq 0x85ca8(%rip), %rsi     # 0x94733
leaq 0xc70(%rsp), %rdi
callq 0x125d0
jmp 0xea9a
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0xc70(%rsp), %rcx
callq 0x11cf0
jmp 0xeac1
leaq 0xc70(%rsp), %rdi
callq 0xbe38
leaq 0xc6f(%rsp), %rdi
callq 0xbe10
leaq 0xc47(%rsp), %rdi
movq %rdi, 0xc0(%rsp)
callq 0xbb30
movq 0xc0(%rsp), %rdx
leaq 0x85c4c(%rip), %rsi     # 0x9474b
leaq 0xc48(%rsp), %rdi
callq 0x125d0
jmp 0xeb0e
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0xc48(%rsp), %rcx
callq 0x11cf0
jmp 0xeb35
leaq 0xc48(%rsp), %rdi
callq 0xbe38
leaq 0xc47(%rsp), %rdi
callq 0xbe10
leaq 0xc1f(%rsp), %rdi
movq %rdi, 0xb8(%rsp)
callq 0xbb30
movq 0xb8(%rsp), %rdx
leaq 0x85be3(%rip), %rsi     # 0x94756
leaq 0xc20(%rsp), %rdi
callq 0x125d0
jmp 0xeb82
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0xc20(%rsp), %rcx
callq 0x11cf0
jmp 0xeba9
leaq 0xc20(%rsp), %rdi
callq 0xbe38
leaq 0xc1f(%rsp), %rdi
callq 0xbe10
leaq 0xbf7(%rsp), %rdi
movq %rdi, 0xb0(%rsp)
callq 0xbb30
movq 0xb0(%rsp), %rdx
leaq 0x85b8b(%rip), %rsi     # 0x94772
leaq 0xbf8(%rsp), %rdi
callq 0x125d0
jmp 0xebf6
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0xbf8(%rsp), %rcx
callq 0x11cf0
jmp 0xec1d
leaq 0xbf8(%rsp), %rdi
callq 0xbe38
leaq 0xbf7(%rsp), %rdi
callq 0xbe10
leaq 0xbcf(%rsp), %rdi
movq %rdi, 0xa8(%rsp)
callq 0xbb30
movq 0xa8(%rsp), %rdx
leaq 0x85b1f(%rip), %rsi     # 0x9477a
leaq 0xbd0(%rsp), %rdi
callq 0x125d0
jmp 0xec6a
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0xbd0(%rsp), %rcx
callq 0x11cf0
jmp 0xec91
leaq 0xbd0(%rsp), %rdi
callq 0xbe38
leaq 0xbcf(%rsp), %rdi
callq 0xbe10
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0xf70(%rsp), %rcx
callq 0x11cf0
jmp 0xecd2
leaq 0xba8(%rsp), %rdi
callq 0x158b0
leaq 0x85a94(%rip), %rdx     # 0x9477a
leaq 0x8e0(%rsp), %rdi
leaq 0xec8(%rsp), %rsi
callq 0x155b0
jmp 0xecfd
leaq 0x900(%rsp), %rdi
leaq 0x8e0(%rsp), %rsi
xorl %edx, %edx
callq 0x158c0
jmp 0xed16
leaq 0x8e0(%rsp), %rdi
callq 0xbe38
leaq 0x900(%rsp), %rdi
callq 0x1e1d0
movb %al, 0xa7(%rsp)
jmp 0xed39
movb 0xa7(%rsp), %al
testb $0x1, %al
jne 0xed49
jmp 0xf50b
leaq 0xb68(%rsp), %rax
movq %rax, 0x90(%rsp)
leaq 0x8bf(%rsp), %rdi
movq %rdi, 0x98(%rsp)
callq 0xbb30
movq 0x98(%rsp), %rdx
leaq 0x8732f(%rip), %rsi     # 0x960ac
leaq 0x8c0(%rsp), %rdi
callq 0x125d0
jmp 0xed8c
movq 0x90(%rsp), %rdi
leaq 0x8c0(%rsp), %rsi
callq 0x15930
movb %al, 0x8f(%rsp)
jmp 0xedaa
leaq 0x8c0(%rsp), %rdi
callq 0xbe38
leaq 0x8bf(%rsp), %rdi
callq 0xbe10
movb 0x8f(%rsp), %al
testb $0x1, %al
jne 0xedd4
jmp 0xf131
jmp 0xed23
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xd30(%rsp), %rdi
callq 0xbe38
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xee36
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xd10(%rsp), %rdi
callq 0xbe38
leaq 0xd0f(%rsp), %rdi
callq 0xbe10
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xee7f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xce8(%rsp), %rdi
callq 0xbe38
leaq 0xce7(%rsp), %rdi
callq 0xbe10
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xeec8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xcc0(%rsp), %rdi
callq 0xbe38
leaq 0xcbf(%rsp), %rdi
callq 0xbe10
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xef11
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xc98(%rsp), %rdi
callq 0xbe38
leaq 0xc97(%rsp), %rdi
callq 0xbe10
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xef5a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xc70(%rsp), %rdi
callq 0xbe38
leaq 0xc6f(%rsp), %rdi
callq 0xbe10
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xefa3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xc48(%rsp), %rdi
callq 0xbe38
leaq 0xc47(%rsp), %rdi
callq 0xbe10
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xefec
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xc20(%rsp), %rdi
callq 0xbe38
leaq 0xc1f(%rsp), %rdi
callq 0xbe10
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf035
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xbf8(%rsp), %rdi
callq 0xbe38
leaq 0xbf7(%rsp), %rdi
callq 0xbe10
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf07e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0xbd0(%rsp), %rdi
callq 0xbe38
leaq 0xbcf(%rsp), %rdi
callq 0xbe10
jmp 0x10187
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x1017a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x8e0(%rsp), %rdi
callq 0xbe38
jmp 0x1017a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf691
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf11f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x8c0(%rsp), %rdi
callq 0xbe38
leaq 0x8bf(%rsp), %rdi
callq 0xbe10
jmp 0xf691
leaq 0x898(%rsp), %rdi
callq 0xb440
leaq 0x878(%rsp), %rdi
callq 0xb440
movl $0xffffffff, 0x874(%rsp) # imm = 0xFFFFFFFF
leaq 0xb68(%rsp), %rsi
leaq 0x6f0(%rsp), %rdi
movl $0x8, %edx
callq 0xb560
jmp 0xf172
leaq 0x6f0(%rsp), %rdi
leaq 0x898(%rsp), %rsi
callq 0xb530
movq %rax, 0x80(%rsp)
jmp 0xf191
movq 0x80(%rsp), %rdi
leaq 0x878(%rsp), %rsi
callq 0xb530
movq %rax, 0x78(%rsp)
jmp 0xf1ad
movq 0x78(%rsp), %rdi
leaq 0x874(%rsp), %rsi
callq 0xbdd0
jmp 0xf1c1
callq 0xbbd0
movl $0x0, (%rax)
cmpl $0x0, 0x874(%rsp)
jge 0xf490
callq 0xb920
cmpl $0x0, %eax
jne 0xf486
leaq 0x64f(%rsp), %rdi
movq %rdi, 0x70(%rsp)
callq 0xbb30
movq 0x70(%rsp), %rdx
leaq 0x85293(%rip), %rsi     # 0x94499
leaq 0x650(%rsp), %rdi
callq 0x125d0
jmp 0xf215
leaq 0x628(%rsp), %rdi
movl $0x167, %esi            # imm = 0x167
callq 0x14f00
jmp 0xf229
leaq 0x670(%rsp), %rdi
leaq 0x650(%rsp), %rsi
leaq 0x628(%rsp), %rdx
callq 0x14520
jmp 0xf248
leaq 0x85268(%rip), %rdx     # 0x944b7
leaq 0x690(%rsp), %rdi
leaq 0x670(%rsp), %rsi
callq 0x14610
jmp 0xf266
leaq 0x5e7(%rsp), %rdi
movq %rdi, 0x68(%rsp)
callq 0xbb30
movq 0x68(%rsp), %rdx
leaq 0x85239(%rip), %rsi     # 0x944bd
leaq 0x5e8(%rsp), %rdi
callq 0x125d0
jmp 0xf293
leaq 0x85daa(%rip), %rdx     # 0x95044
leaq 0x608(%rsp), %rdi
leaq 0x5e8(%rsp), %rsi
callq 0x14610
jmp 0xf2b1
leaq 0x6b0(%rsp), %rdi
leaq 0x690(%rsp), %rsi
leaq 0x608(%rsp), %rdx
callq 0x14520
jmp 0xf2d0
leaq 0x86112(%rip), %rdx     # 0x953e9
leaq 0x6d0(%rsp), %rdi
leaq 0x6b0(%rsp), %rsi
callq 0x14610
jmp 0xf2ee
leaq 0x6d0(%rsp), %rdi
callq 0x1f7f0
jmp 0xf2fd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf4ec
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf4df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf477
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf46a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf45d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf450
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf436
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf429
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf41c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf40f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x6d0(%rsp), %rdi
callq 0xbe38
leaq 0x6b0(%rsp), %rdi
callq 0xbe38
leaq 0x608(%rsp), %rdi
callq 0xbe38
leaq 0x5e8(%rsp), %rdi
callq 0xbe38
leaq 0x5e7(%rsp), %rdi
callq 0xbe10
leaq 0x690(%rsp), %rdi
callq 0xbe38
leaq 0x670(%rsp), %rdi
callq 0xbe38
leaq 0x628(%rsp), %rdi
callq 0xbe38
leaq 0x650(%rsp), %rdi
callq 0xbe38
leaq 0x64f(%rsp), %rdi
callq 0xbe10
jmp 0xf4df
movl $0x1, %edi
callq 0xb800
cmpl $0x0, 0x874(%rsp)
je 0xf4b3
leaq 0xba8(%rsp), %rdi
leaq 0x898(%rsp), %rsi
callq 0x15990
jmp 0xf4b1
jmp 0xf4b3
leaq 0x6f0(%rsp), %rdi
callq 0xb680
leaq 0x878(%rsp), %rdi
callq 0xbe38
leaq 0x898(%rsp), %rdi
callq 0xbe38
jmp 0xed23
leaq 0x6f0(%rsp), %rdi
callq 0xb680
leaq 0x878(%rsp), %rdi
callq 0xbe38
leaq 0x898(%rsp), %rdi
callq 0xbe38
jmp 0xf691
leaq 0x900(%rsp), %rdi
callq 0x159d0
leaq 0xba8(%rsp), %rax
movq %rax, 0x5d8(%rsp)
movq 0x5d8(%rsp), %rdi
callq 0x15a20
movq %rax, 0x5d0(%rsp)
movq 0x5d8(%rsp), %rdi
callq 0x15a50
movq %rax, 0x5c8(%rsp)
leaq 0x5d0(%rsp), %rdi
leaq 0x5c8(%rsp), %rsi
callq 0x15a80
testb $0x1, %al
jne 0xf570
jmp 0xf735
leaq 0x5d0(%rsp), %rdi
callq 0x15ac0
movq %rax, 0x5c0(%rsp)
movq 0x5c0(%rsp), %rdx
leaq 0x851f3(%rip), %rsi     # 0x94787
leaq 0x580(%rsp), %rdi
callq 0x14bb0
jmp 0xf5a3
leaq 0x851a8(%rip), %rdx     # 0x94752
leaq 0x5a0(%rsp), %rdi
leaq 0x580(%rsp), %rsi
callq 0x14610
jmp 0xf5c1
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0x5a0(%rsp), %rcx
callq 0x11cf0
jmp 0xf5e8
leaq 0x5a0(%rsp), %rdi
callq 0xbe38
leaq 0x580(%rsp), %rdi
callq 0xbe38
movq 0x5c0(%rsp), %rdx
leaq 0x85176(%rip), %rsi     # 0x94787
leaq 0x540(%rsp), %rdi
callq 0x14bb0
jmp 0xf620
leaq 0x8511f(%rip), %rdx     # 0x94746
leaq 0x560(%rsp), %rdi
leaq 0x540(%rsp), %rsi
callq 0x14610
jmp 0xf63e
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0x560(%rsp), %rcx
callq 0x11cf0
jmp 0xf665
leaq 0x560(%rsp), %rdi
callq 0xbe38
leaq 0x540(%rsp), %rdi
callq 0xbe38
leaq 0x5d0(%rsp), %rdi
callq 0x15ad0
jmp 0xf552
leaq 0x900(%rsp), %rdi
callq 0x159d0
jmp 0x1017a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf6da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x5a0(%rsp), %rdi
callq 0xbe38
leaq 0x580(%rsp), %rdi
callq 0xbe38
jmp 0x1017a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xf723
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x560(%rsp), %rdi
callq 0xbe38
leaq 0x540(%rsp), %rdi
callq 0xbe38
jmp 0x1017a
leaq 0x51f(%rsp), %rdi
movq %rdi, 0x60(%rsp)
callq 0xbb30
movq 0x60(%rsp), %rdx
leaq 0x8503d(%rip), %rsi     # 0x94790
leaq 0x520(%rsp), %rdi
callq 0x125d0
jmp 0xf762
leaq 0x1498(%rsp), %rdi
leaq 0xf48(%rsp), %rsi
leaq 0xec8(%rsp), %rdx
leaq 0x520(%rsp), %rcx
callq 0x11cf0
jmp 0xf789
leaq 0x520(%rsp), %rdi
callq 0xbe38
leaq 0x51f(%rsp), %rdi
callq 0xbe10
movq 0x218(%rsp), %rdi
leaq 0xfc8(%rsp), %rsi
leaq 0x1408(%rsp), %rdx
callq 0x116d0
jmp 0xf7c2
movq 0x218(%rsp), %rax
movq %rax, %rcx
addq $0xb0, %rcx
movq %rcx, 0x48(%rsp)
addq $0x188, %rax            # imm = 0x188
movq %rax, 0x50(%rsp)
leaq 0x4f7(%rsp), %rdi
movq %rdi, 0x58(%rsp)
callq 0xbb30
movq 0x58(%rsp), %rdx
leaq 0x84f9a(%rip), %rsi     # 0x9479c
leaq 0x4f8(%rsp), %rdi
callq 0x125d0
jmp 0xf811
movq 0x50(%rsp), %rdi
leaq 0x4f8(%rsp), %rsi
callq 0x15af0
movq %rax, 0x40(%rsp)
jmp 0xf82a
movq 0x48(%rsp), %rsi
movq 0x40(%rsp), %rdi
callq 0xbd50
jmp 0xf83b
leaq 0x4f8(%rsp), %rdi
callq 0xbe38
leaq 0x4f7(%rsp), %rdi
callq 0xbe10
leaq 0x3af(%rsp), %rdi
movq %rdi, 0x38(%rsp)
callq 0xbb30
movq 0x38(%rsp), %rdx
leaq 0x84f29(%rip), %rsi     # 0x9479c
leaq 0x3b0(%rsp), %rdi
callq 0x125d0
jmp 0xf882
movq 0x218(%rsp), %rsi
leaq 0x3d0(%rsp), %rdi
leaq 0x3b0(%rsp), %rdx
callq 0x521a0
jmp 0xf8a1
leaq 0x368(%rsp), %rdi
leaq 0xec8(%rsp), %rsi
callq 0xb1c0
jmp 0xf8b8
leaq 0x388(%rsp), %rdi
leaq 0x368(%rsp), %rsi
callq 0x15be0
jmp 0xf8cf
leaq 0x3f0(%rsp), %rdi
leaq 0x3d0(%rsp), %rsi
leaq 0x388(%rsp), %rdx
callq 0x14520
jmp 0xf8ee
leaq 0x327(%rsp), %rdi
movq %rdi, 0x30(%rsp)
callq 0xbb30
movq 0x30(%rsp), %rdx
leaq 0x84818(%rip), %rsi     # 0x94124
leaq 0x328(%rsp), %rdi
callq 0x125d0
jmp 0xf91b
movq 0x218(%rsp), %rsi
leaq 0x348(%rsp), %rdi
leaq 0x328(%rsp), %rdx
leaq 0x1538(%rsp), %rcx
callq 0x15d90
jmp 0xf942
leaq 0x410(%rsp), %rdi
leaq 0x3f0(%rsp), %rsi
leaq 0x348(%rsp), %rdx
callq 0x14520
jmp 0xf961
leaq 0x2df(%rsp), %rdi
movq %rdi, 0x28(%rsp)
callq 0xbb30
movq 0x28(%rsp), %rdx
leaq 0x847cd(%rip), %rsi     # 0x9414c
leaq 0x2e0(%rsp), %rdi
callq 0x125d0
jmp 0xf98e
movq 0x218(%rsp), %rsi
leaq 0x300(%rsp), %rdi
leaq 0x2e0(%rsp), %rdx
leaq 0x14f0(%rsp), %rcx
callq 0x15d90
jmp 0xf9b5
leaq 0x430(%rsp), %rdi
leaq 0x410(%rsp), %rsi
leaq 0x300(%rsp), %rdx
callq 0x14520
jmp 0xf9d4
callq 0x160c0
movb %al, 0x27(%rsp)
jmp 0xf9df
leaq 0x297(%rsp), %rdi
movq %rdi, 0x18(%rsp)
callq 0xbb30
movq 0x18(%rsp), %rdx
leaq 0x84daf(%rip), %rsi     # 0x947ac
leaq 0x298(%rsp), %rdi
callq 0x125d0
jmp 0xfa0c
movb 0x27(%rsp), %al
movzbl %al, %esi
andl $0x1, %esi
leaq 0x2b8(%rsp), %rdi
leaq 0x298(%rsp), %rdx
callq 0x16060
jmp 0xfa2d
leaq 0x450(%rsp), %rdi
leaq 0x430(%rsp), %rsi
leaq 0x2b8(%rsp), %rdx
callq 0x14520
jmp 0xfa4c
leaq 0xb217d(%rip), %rax     # 0xc1bd0
movb (%rax), %al
movb %al, 0xf(%rsp)
leaq 0x24f(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0xbb30
movq 0x10(%rsp), %rdx
leaq 0x84d39(%rip), %rsi     # 0x947b0
leaq 0x250(%rsp), %rdi
callq 0x125d0
jmp 0xfa86
movb 0xf(%rsp), %al
movzbl %al, %esi
andl $0x1, %esi
leaq 0x270(%rsp), %rdi
leaq 0x250(%rsp), %rdx
callq 0x16060
jmp 0xfaa7
leaq 0x470(%rsp), %rdi
leaq 0x450(%rsp), %rsi
leaq 0x270(%rsp), %rdx
callq 0x14520
jmp 0xfac6
leaq 0x87ab3(%rip), %rdx     # 0x97580
leaq 0x490(%rsp), %rdi
leaq 0x470(%rsp), %rsi
callq 0x14610
jmp 0xfae4
movq 0x218(%rsp), %rdx
addq $0x168, %rdx            # imm = 0x168
leaq 0x4b0(%rsp), %rdi
leaq 0x490(%rsp), %rsi
callq 0x14df0
jmp 0xfb0a
leaq 0x84ca8(%rip), %rdx     # 0x947b9
leaq 0x4d0(%rsp), %rdi
leaq 0x4b0(%rsp), %rsi
callq 0x14610
jmp 0xfb28
movq 0x218(%rsp), %rsi
addq $0x168, %rsi            # imm = 0x168
leaq 0x84c7b(%rip), %rdx     # 0x947b9
leaq 0x228(%rsp), %rdi
callq 0x155b0
jmp 0xfb4d
leaq 0x4d0(%rsp), %rdi
leaq 0x228(%rsp), %rsi
callq 0x2b7a0
jmp 0xfb64
leaq 0x228(%rsp), %rdi
callq 0xbe38
leaq 0x4d0(%rsp), %rdi
callq 0xbe38
leaq 0x4b0(%rsp), %rdi
callq 0xbe38
leaq 0x490(%rsp), %rdi
callq 0xbe38
leaq 0x470(%rsp), %rdi
callq 0xbe38
leaq 0x270(%rsp), %rdi
callq 0xbe38
leaq 0x250(%rsp), %rdi
callq 0xbe38
leaq 0x24f(%rsp), %rdi
callq 0xbe10
leaq 0x450(%rsp), %rdi
callq 0xbe38
leaq 0x2b8(%rsp), %rdi
callq 0xbe38
leaq 0x298(%rsp), %rdi
callq 0xbe38
leaq 0x297(%rsp), %rdi
callq 0xbe10
leaq 0x430(%rsp), %rdi
callq 0xbe38
leaq 0x300(%rsp), %rdi
callq 0xbe38
leaq 0x2e0(%rsp), %rdi
callq 0xbe38
leaq 0x2df(%rsp), %rdi
callq 0xbe10
leaq 0x410(%rsp), %rdi
callq 0xbe38
leaq 0x348(%rsp), %rdi
callq 0xbe38
leaq 0x328(%rsp), %rdi
callq 0xbe38
leaq 0x327(%rsp), %rdi
callq 0xbe10
leaq 0x3f0(%rsp), %rdi
callq 0xbe38
leaq 0x388(%rsp), %rdi
callq 0xbe38
leaq 0x368(%rsp), %rdi
callq 0xbe38
leaq 0x3d0(%rsp), %rdi
callq 0xbe38
leaq 0x3b0(%rsp), %rdi
callq 0xbe38
leaq 0x3af(%rsp), %rdi
callq 0xbe10
leaq 0xba8(%rsp), %rdi
callq 0x15800
movl $0x0, 0xd68(%rsp)
leaq 0xec8(%rsp), %rdi
callq 0xbe38
leaq 0xf48(%rsp), %rdi
callq 0xbe38
leaq 0xf70(%rsp), %rdi
callq 0xbe38
leaq 0xfc8(%rsp), %rdi
callq 0xbe38
leaq 0x1408(%rsp), %rdi
callq 0xbe38
leaq 0x1428(%rsp), %rdi
callq 0xbe38
leaq 0x1498(%rsp), %rdi
callq 0x160e0
leaq 0x14a0(%rsp), %rdi
callq 0x2b6f0
leaq 0x14f0(%rsp), %rdi
callq 0xbe38
leaq 0x1538(%rsp), %rdi
callq 0xbe38
leaq 0x1590(%rsp), %rdi
callq 0xbe38
addq $0x15b8, %rsp           # imm = 0x15B8
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xfd9c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x520(%rsp), %rdi
callq 0xbe38
leaq 0x51f(%rsp), %rdi
callq 0xbe10
jmp 0x1017a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0xfde5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x4f8(%rsp), %rdi
callq 0xbe38
leaq 0x4f7(%rsp), %rdi
callq 0xbe10
jmp 0x1017a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x1016d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10160
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10153
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10146
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10139
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x1011f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10112
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10105
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x100eb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x100de
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x100d1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x100c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x100b7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x100aa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x1009d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10083
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10076
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10069
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x1005c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x1004f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10042
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
jmp 0x10035
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x1560(%rsp)
movl %eax, 0x155c(%rsp)
leaq 0x228(%rsp), %rdi
callq 0xbe38
leaq 0x4d0(%rsp), %rdi
callq 0xbe38
leaq 0x4b0(%rsp), %rdi
callq 0xbe38
leaq 0x490(%rsp), %rdi
callq 0xbe38
leaq 0x470(%rsp), %rdi
callq 0xbe38
leaq 0x270(%rsp), %rdi
callq 0xbe38
leaq 0x250(%rsp), %rdi
callq 0xbe38
leaq 0x24f(%rsp), %rdi
callq 0xbe10
leaq 0x450(%rsp), %rdi
callq 0xbe38
leaq 0x2b8(%rsp), %rdi
callq 0xbe38
leaq 0x298(%rsp), %rdi
callq 0xbe38
leaq 0x297(%rsp), %rdi
callq 0xbe10
leaq 0x430(%rsp), %rdi
callq 0xbe38
leaq 0x300(%rsp), %rdi
callq 0xbe38
leaq 0x2e0(%rsp), %rdi
callq 0xbe38
leaq 0x2df(%rsp), %rdi
callq 0xbe10
leaq 0x410(%rsp), %rdi
callq 0xbe38
leaq 0x348(%rsp), %rdi
callq 0xbe38
leaq 0x328(%rsp), %rdi
callq 0xbe38
leaq 0x327(%rsp), %rdi
callq 0xbe10
leaq 0x3f0(%rsp), %rdi
callq 0xbe38
leaq 0x388(%rsp), %rdi
callq 0xbe38
leaq 0x368(%rsp), %rdi
callq 0xbe38
leaq 0x3d0(%rsp), %rdi
callq 0xbe38
leaq 0x3b0(%rsp), %rdi
callq 0xbe38
leaq 0x3af(%rsp), %rdi
callq 0xbe10
leaq 0xba8(%rsp), %rdi
callq 0x15800
leaq 0xec8(%rsp), %rdi
callq 0xbe38
leaq 0xf48(%rsp), %rdi
callq 0xbe38
leaq 0xf70(%rsp), %rdi
callq 0xbe38
leaq 0xfc8(%rsp), %rdi
callq 0xbe38
leaq 0x1408(%rsp), %rdi
callq 0xbe38
leaq 0x1428(%rsp), %rdi
callq 0xbe38
leaq 0x1498(%rsp), %rdi
callq 0x160e0
leaq 0x14a0(%rsp), %rdi
callq 0x2b6f0
leaq 0x14f0(%rsp), %rdi
callq 0xbe38
leaq 0x1538(%rsp), %rdi
callq 0xbe38
leaq 0x1590(%rsp), %rdi
callq 0xbe38
movq 0x1560(%rsp), %rdi
callq 0xb7b0
nopw %cs:(%rax,%rax)