// File: /workspace/github_cpp_makefile_star2_O2/ncbi[P]amr/common.cpp
// Function: Common_sp::Application::run(int, char const**)
int Application::run (int argc, 
                      const char* argv []) 
{
  ASSERT (programArgs. empty ());
  

  addDefaultArgs ();
    
  
	try
  { 
  	// programArgs
    for (int i = 0; i < argc; i++)  
    {
    	// gnu: -abc --> -a -b -c ??
    	string key (argv [i]);
    	string value;
    	bool valueP = false;
    	if (   i 
    		  && ! key. empty () 
    		  && key [0] == '-'
    		 )
    	{
	    	const size_t eqPos = key. find ('=');
	    	if (eqPos != string::npos)
	    	{
	    		value = key. substr (eqPos + 1);
	    		key = key. substr (0, eqPos);
	    		valueP = true;
	    	}
	    }
      programArgs. push_back (key);
      if (valueP)
	      programArgs. push_back (value);
    }
    ASSERT (! programArgs. empty ());
	  
      
		initEnvironment ();


    // positionalArgs, keyArgs
    Set<Key*> keysRead;
    {
	    bool first = true;
		  List<Positional>::iterator posIt = positionalArgs. begin ();
	    Key* key = nullptr;
	    for (string s : programArgs)
	    {
	      if (first)
	      {
	        programName = rfindSplit (s, fileSlash);
	        ASSERT (! programName. empty ());
	      }
	      else if (key)
      	{
          ASSERT (! key->flag);
          key->value = s;
          key = nullptr;
        }
        else if (! s. empty () && s [0] == '-')
        {

          const string s1 (s. substr (1));
          if (s1. empty ())
            throw runtime_error ("Dash with no key\n\n" + getInstruction (false));

          string name;
          const char c = s1 [0];  // Valid if name.empty()
          if (gnu)
          	if (c == '-')
          	{
          		name = s1. substr (1);
		          if (name. empty ())
		            throw runtime_error ("Dashes with no key\n\n" + getInstruction (false));
          	}
          	else
          	{
          		if (s1. size () != 1) 
                throw runtime_error ("Single character is expected: " + strQuote (s1) + "\n\n" + getInstruction (false));
            }
          else
          	name = s1;

          if (name == helpS || (name. empty () && c == helpS [0] && gnu))
          {
            if (programArgs. size () > 2) 
              throw runtime_error ("Single keyword " + strQuote (helpS) + " is expected\n\n" + getInstruction (false));
            else
            {
  	          const bool screen = ! isRedirected (cout);
              cout << getHelp (screen) << getDocumentation (screen) << getUpdates (screen) << endl;
              return 0;
            }
          }
          if (name == versionS || (name. empty () && c == versionS [0] && gnu))
          {
            if (programArgs. size () > 2) 
              throw runtime_error ("Single keyword " + strQuote (versionS) + " is expected\n\n" + getInstruction (false));
            else
            {
              cout << version << endl;
              return 0;
            }
          }
          
          // key
          if (name. empty ())
          {
          	ASSERT (gnu);
	          key = var_cast (findPtr (char2arg, c));
	        }
          else
          	if (const Arg* arg = findPtr (name2arg, name))					    
					    key = var_cast (arg->asKey ());
					    
					if (key)
          {
	          if (keysRead. contains (key))
	            throw runtime_error ("Parameter " + strQuote (key->name) + " is used more than once");
	          else
	            keysRead << key;
	            
	          if (key->flag)
	          {
	            key->value = "true";
	            key = nullptr;
	          }
	        }
	        else
	        	setPositional (posIt, s);
        }
        else
        	setPositional (posIt, s);

	      first = false;
	    }
      if (key)
        throw runtime_error ("Key with no value: " + key->name + "\n\n" + getInstruction (false));


	    if (programArgs. size () == 1 && (! positionalArgs. empty () || needsArg))
	    {
	      const bool screen = ! isRedirected (cout);
	      cout << getInstruction (screen) << getDocumentation (screen) << endl;
	      return 1;
	    }
	    

	    if (posIt != positionalArgs. end ())
	      throw runtime_error ("Too few positional parameters\n\n" + getInstruction (false));
	  }
    
    
    for (Key& key : keyArgs)
      if (! keysRead. contains (& key))
        key. value = key. defaultValue;


    {
	    map<string,StringVector> requiredGroup2names;
	    map<string,StringVector> requiredGroup2given;
	    for (const Key& key : keyArgs)
	    	if (! key. requiredGroup. empty ())
	    	{
	    		if (! key. value. empty ())
	    		{
	    			const StringVector& given = requiredGroup2given [key. requiredGroup];
		    		if (! given. empty ())
		    			throw runtime_error ("Parameter " + strQuote (key. name) + " is conflicting with " + given. toString (", "));
		    		requiredGroup2given [key. requiredGroup] << strQuote (key. name);
		    	}
		    	requiredGroup2names [key. requiredGroup] << strQuote (key. name);
	    	}
	    for (const auto& it : requiredGroup2names)
	    	if (requiredGroup2given [it. first]. empty ())
	    		throw runtime_error ("One of required parameters is missing: " + it. second. toString (", "));
	  }
  
  
    {
      string logFName (getArg ("log"));
    	ASSERT (! logPtr);
      if (! logFName. empty ())
      {
    		logPtr = new ofstream (logFName, ios_base::app);    		  
    		*logPtr << endl << getNow () << endl << "$ " << getCommandLine () << endl;
      }
    }

    string jsonFName;
    if (gnu)
    {
	  	if (getFlag ("debug"))
	  		qc_on = true;
    }
    else
    {
	  	if (getFlag ("qc"))
	  		qc_on = true;
	
	  	if (getFlag ("noprogress"))
	  		Progress::disable ();
	  	if (getFlag ("profile"))
	  		Chronometer::enabled = true;
	  			
	  	seed_global = str2<ulong> (getArg ("seed"));
	  	if (! seed_global)
	  		throw runtime_error ("Seed cannot be 0");
	  
	  	jsonFName = getArg ("json");
	  	ASSERT (! jRoot);
	  	if (! jsonFName. empty ())
	  	{
	  		new JsonMap ();
	  	  ASSERT (jRoot);
	  	}
	  	
    #ifndef _MSC_VER
	  	sigpipe = getFlag ("sigpipe");
    #endif
	  }
  

    ASSERT (threads_max == 1);	
    if (threadsUsed)
    {
    	threads_max = str2<size_t> (getArg ("threads"));
    	if (! threads_max)
    		throw runtime_error ("Number of threads cannot be 0");	
    	if (threads_max > 1 && Chronometer::enabled)
    		throw runtime_error ("Cannot profile with threads");
    }


  	const Verbose vrb (gnu 
  	                     ? getFlag ("quiet")
  	                       ? -1
  	                       : 0 
  	                     : str2<int> (getArg ("verbose"))
  	                   );
	  	
		initVar ();
		qc ();
  	body ();

  
  	if (! jsonFName. empty ())
  	{
  	  ASSERT (jRoot);
  		OFStream f (jsonFName);
  		jRoot->qc ();
      jRoot->saveText (f);
      jRoot. reset ();
    }
	}
  catch (const std::range_error     &e)  { errorExitStr (string ("Range error: ")     + e. what ()); }
  catch (const std::overflow_error  &e)  { errorExitStr (string ("Overflow error: ")  + e. what ()); }
  catch (const std::underflow_error &e)  { errorExitStr (string ("Underflow error: ") + e. what ()); }
  catch (const std::system_error    &e)  { errorExitStr (string ("System error: ")    + e. what ()); }
  catch (const std::runtime_error   &e)  
    {
      beep ();
      ostream* os = logPtr ? logPtr : & cerr;
    	{
    	  const OColor oc (*os, Color::red, true, true);
        *os << error_caption;
      }
      *os << endl << e. what () << endl;
      exit (1);
    }
	catch (const std::exception &e) 
	{ 
	  errorExitStr (ifS (errno, strerror (errno) + string ("\n")) + e. what ());
  }


  return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x3e8, %rsp            # imm = 0x3E8
movq %rdx, %r14
movl %esi, %r13d
movq %rdi, %r15
callq 0xb060
movq %rax, 0xa8(%rsp)
andl $0x0, (%rax)
movq 0x4d49d(%rip), %rax     # 0x84aa0
cmpq 0x4d49e(%rip), %rax     # 0x84aa8
jne 0x38791
movq %r15, 0x10(%rsp)
movq %r15, %rdi
callq 0x35888
xorl %ebp, %ebp
testl %r13d, %r13d
cmovlel %ebp, %r13d
leaq 0x1e8(%rsp), %r12
leaq 0xb0(%rsp), %r15
movq %r14, 0x188(%rsp)
cmpq %rbp, %r13
je 0x3775d
movq (%r14,%rbp,8), %rsi
movq %r12, %rdi
leaq 0x150(%rsp), %rdx
callq 0x1b7b6
leaq 0x160(%rsp), %rax
movq %rax, 0x150(%rsp)
andq $0x0, 0x158(%rsp)
movb $0x0, 0x160(%rsp)
xorl %ebx, %ebx
testq %rbp, %rbp
je 0x37719
cmpq $0x0, 0x1f0(%rsp)
je 0x37719
movq 0x1e8(%rsp), %rax
cmpb $0x2d, (%rax)
jne 0x37717
xorl %ebx, %ebx
movq %r12, %rdi
pushq $0x3d
popq %rsi
xorl %edx, %edx
callq 0xb760
cmpq $-0x1, %rax
je 0x3770d
movq %rax, %r14
leaq 0x1(%rax), %rdx
movq %r15, %rbx
movq %r15, %rdi
movq %r12, %rsi
pushq $-0x1
popq %rcx
callq 0xb5e0
leaq 0x150(%rsp), %rdi
movq %rbx, %rsi
callq 0xb6f0
movq %rbx, %rdi
callq 0xbb68
movq %rbx, %rdi
movq %r12, %rsi
xorl %edx, %edx
movq %r14, %rcx
callq 0xb5e0
movq %r12, %rdi
movq %rbx, %rsi
callq 0xb6f0
movq %rbx, %rdi
callq 0xbb68
movb $0x1, %bl
movq 0x188(%rsp), %r14
jmp 0x37719
xorl %ebx, %ebx
leaq 0x4d380(%rip), %rdi     # 0x84aa0
movq %r12, %rsi
callq 0x1f42e
testb %bl, %bl
je 0x37740
leaq 0x4d36d(%rip), %rdi     # 0x84aa0
leaq 0x150(%rsp), %rsi
callq 0x1f42e
leaq 0x150(%rsp), %rdi
callq 0xbb68
movq %r12, %rdi
callq 0xbb68
incq %rbp
jmp 0x3763e
movq 0xa8(%rsp), %rax
andl $0x0, (%rax)
movq 0x4d331(%rip), %rax     # 0x84aa0
cmpq 0x4d332(%rip), %rax     # 0x84aa8
je 0x38871
movq 0x10(%rsp), %rbx
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x48(%rax)
leaq 0x158(%rsp), %rax
andl $0x0, (%rax)
andq $0x0, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
andq $0x0, 0x20(%rax)
movb $0x0, 0x28(%rax)
leaq 0xd0(%rbx), %rax
movq %rax, 0x188(%rsp)
movq 0xd0(%rbx), %rax
leaq 0x148(%rsp), %rcx
leaq 0x80(%rsp), %rdx
andq $0x0, (%rdx)
movq %rax, (%rcx)
movq 0x4d2c1(%rip), %r13     # 0x84aa0
movq 0x4d2c2(%rip), %r15     # 0x84aa8
leaq 0x100(%rbx), %rax
movq %rax, 0x1d0(%rsp)
leaq 0x130(%rbx), %rax
movq %rax, 0x1d8(%rsp)
leaq 0x28(%rbx), %rax
movq %rax, 0x1e0(%rsp)
movb $0x1, %r14b
leaq 0x1e8(%rsp), %rbp
leaq 0x258a0(%rip), %r12     # 0x5d0c2
cmpq %r15, %r13
je 0x37c5a
movq %rbp, %rdi
movq %r13, %rsi
callq 0xb7b0
testb $0x1, %r14b
je 0x37889
leaq 0xb0(%rsp), %rbx
movq %rbx, %rdi
movq %rbp, %rsi
pushq $0x2f
popq %rdx
callq 0x24925
leaq 0x4d25f(%rip), %rdi     # 0x84ab8
movq %rbx, %rsi
callq 0xb6f0
movq %rbx, %rdi
callq 0xbb68
movq 0xa8(%rsp), %rax
andl $0x0, (%rax)
movb $0x1, %bl
cmpq $0x0, 0x4d242(%rip)     # 0x84ac0
jne 0x37b17
jmp 0x38508
movq 0x80(%rsp), %rdi
testq %rdi, %rdi
je 0x378c7
movq 0xa8(%rsp), %rax
andl $0x0, (%rax)
cmpb $0x1, 0x70(%rdi)
je 0x385e8
addq $0x48, %rdi
movq %rbp, %rsi
callq 0xb350
andq $0x0, 0x80(%rsp)
movb $0x1, %bl
jmp 0x37b17
cmpq $0x0, 0x1f0(%rsp)
je 0x37981
movq 0x1e8(%rsp), %rax
cmpb $0x2d, (%rax)
jne 0x37981
leaq 0xb0(%rsp), %rdi
movq %rbp, %rsi
pushq $0x1
popq %rdx
pushq $-0x1
popq %rcx
callq 0xb5e0
movq 0xb8(%rsp), %rax
testq %rax, %rax
je 0x38951
leaq 0x28(%rsp), %rcx
movq %rcx, 0x18(%rsp)
andq $0x0, 0x20(%rsp)
movb $0x0, 0x28(%rsp)
movq 0xb0(%rsp), %rcx
movb (%rcx), %cl
movb %cl, 0xf(%rsp)
movq 0x10(%rsp), %rdx
cmpb $0x1, 0xa9(%rdx)
jne 0x3799d
cmpb $0x2d, %cl
jne 0x379b1
leaq 0x38(%rsp), %rbx
movq %rbx, %rdi
leaq 0xb0(%rsp), %rsi
pushq $0x1
popq %rdx
pushq $-0x1
popq %rcx
callq 0xb5e0
leaq 0x18(%rsp), %rdi
movq %rbx, %rsi
callq 0xb6f0
movq %rbx, %rdi
callq 0xbb68
cmpq $0x0, 0x20(%rsp)
jne 0x379bb
jmp 0x38df3
movb $0x1, %bl
movq 0x10(%rsp), %rdi
leaq 0x148(%rsp), %rsi
movq %rbp, %rdx
callq 0x354f4
jmp 0x37b17
leaq 0x18(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
callq 0xb350
jmp 0x379bb
cmpq $0x1, %rax
jne 0x38d43
leaq 0x18(%rsp), %rdi
leaq 0x2643f(%rip), %rsi     # 0x5de06
callq 0x1cba2
testb %al, %al
je 0x37a98
movq 0x4d0cd(%rip), %rax     # 0x84aa8
subq 0x4d0be(%rip), %rax     # 0x84aa0
cmpq $0x41, %rax
jae 0x389b0
movq 0x4c595(%rip), %r12     # 0x83f88
movq %r12, %rdi
callq 0x2271e
xorb $0x1, %al
movq 0x10(%rsp), %rsi
movq (%rsi), %rcx
movzbl %al, %r14d
leaq 0x38(%rsp), %rbx
movq %rbx, %rdi
movl %r14d, %edx
callq *0x58(%rcx)
movq %r12, %rdi
movq %rbx, %rsi
callq 0xb510
movq %rax, %rbx
leaq 0x60(%rsp), %r12
movq %r12, %rdi
movq 0x10(%rsp), %rsi
movl %r14d, %edx
callq 0x36f18
movq %rbx, %rdi
movq %r12, %rsi
callq 0xb510
movq %rax, %rbx
leaq 0x88(%rsp), %r12
movq %r12, %rdi
movq 0x10(%rsp), %rsi
movl %r14d, %edx
callq 0x3709e
movq %rbx, %rdi
movq %r12, %rsi
callq 0xb510
movq %rax, %rdi
callq 0xb2f0
movq %r12, %rdi
callq 0xbb68
leaq 0x60(%rsp), %rdi
callq 0xbb68
leaq 0x38(%rsp), %rdi
callq 0xbb68
leaq 0x2562c(%rip), %r12     # 0x5d0c2
jmp 0x37afe
cmpq $0x0, 0x20(%rsp)
jne 0x37ab9
cmpb $0x68, 0xf(%rsp)
jne 0x37ab9
movq 0x10(%rsp), %rax
cmpb $0x1, 0xa9(%rax)
je 0x379d4
leaq 0x18(%rsp), %rdi
movq %r12, %rsi
callq 0x1cba2
testb %al, %al
je 0x37b33
movq 0x4cfd7(%rip), %rax     # 0x84aa8
subq 0x4cfc8(%rip), %rax     # 0x84aa0
cmpq $0x41, %rax
jae 0x38e52
movq 0x4c49f(%rip), %rdi     # 0x83f88
movq 0x1e0(%rsp), %rsi
callq 0xb510
movq %rax, %rdi
callq 0xb2f0
leaq 0x18(%rsp), %rdi
callq 0xbb68
leaq 0xb0(%rsp), %rdi
callq 0xbb68
xorl %ebx, %ebx
movq %rbp, %rdi
callq 0xbb68
addq $0x20, %r13
xorl %r14d, %r14d
testb %bl, %bl
jne 0x37822
jmp 0x37d26
movq 0x20(%rsp), %rax
testq %rax, %rax
jne 0x37b59
cmpb $0x76, 0xf(%rsp)
jne 0x37b59
movq 0x10(%rsp), %rax
movb 0xa9(%rax), %al
cmpb $0x1, %al
je 0x37aca
jmp 0x37b8f
testq %rax, %rax
je 0x37b84
movq 0x1d0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x3d465
testq %rax, %rax
je 0x37c4d
movq (%rax), %rcx
movq %rax, %rdi
callq *0x58(%rcx)
jmp 0x37bb4
movq 0x10(%rsp), %rax
movb 0xa9(%rax), %al
movq 0xa8(%rsp), %rcx
andl $0x0, (%rcx)
testb $0x1, %al
je 0x39261
movq 0x1d8(%rsp), %rdi
leaq 0xf(%rsp), %rsi
callq 0x3d5a0
movq %rax, 0x80(%rsp)
testq %rax, %rax
je 0x37c1c
leaq 0x150(%rsp), %rdi
leaq 0x80(%rsp), %rsi
callq 0x3d5b8
testb %al, %al
jne 0x391e3
leaq 0x150(%rsp), %rdi
leaq 0x80(%rsp), %rsi
callq 0x3d5d6
movq 0x80(%rsp), %rdi
cmpb $0x1, 0x70(%rdi)
jne 0x37c31
addq $0x48, %rdi
leaq 0x275ab(%rip), %rsi     # 0x5f1b7
callq 0xbad0
andq $0x0, 0x80(%rsp)
jmp 0x37c31
movq 0x10(%rsp), %rdi
leaq 0x148(%rsp), %rsi
movq %rbp, %rdx
callq 0x354f4
leaq 0x18(%rsp), %rdi
callq 0xbb68
leaq 0xb0(%rsp), %rdi
callq 0xbb68
jmp 0x378c0
movq 0x80(%rsp), %rax
jmp 0x37bbc
cmpq $0x0, 0x80(%rsp)
movq 0x188(%rsp), %rcx
jne 0x38a7c
movq 0x4ce30(%rip), %rax     # 0x84aa8
subq 0x4ce21(%rip), %rax     # 0x84aa0
cmpq $0x20, %rax
jne 0x37d2d
cmpq %rcx, (%rcx)
jne 0x37ca0
movq 0x10(%rsp), %rax
cmpb $0x1, 0xa8(%rax)
jne 0x37d2d
movq 0x4c2e1(%rip), %rdi     # 0x83f88
callq 0x2271e
xorb $0x1, %al
movzbl %al, %ebx
leaq 0x1e8(%rsp), %rdi
movq 0x10(%rsp), %rsi
movl %ebx, %edx
callq 0x34c1c
movq 0x4c2bc(%rip), %rdi     # 0x83f88
leaq 0x1e8(%rsp), %rsi
callq 0xb510
movq %rax, %r14
leaq 0xb0(%rsp), %rdi
movq 0x10(%rsp), %rsi
movl %ebx, %edx
callq 0x36f18
leaq 0xb0(%rsp), %rsi
movq %r14, %rdi
callq 0xb510
movq %rax, %rdi
callq 0xb2f0
leaq 0xb0(%rsp), %rdi
callq 0xbb68
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
pushq $0x1
popq %r14
xorl %ebx, %ebx
jmp 0x38462
cmpq %rcx, 0x148(%rsp)
jne 0x38b18
movq 0x10(%rsp), %rax
leaq 0xe8(%rax), %r12
leaq 0x150(%rsp), %rbx
leaq 0x1e8(%rsp), %r14
movq %r12, %r15
movq (%r15), %r15
cmpq %r12, %r15
je 0x37d8f
leaq 0x10(%r15), %rax
movq %rax, 0x1e8(%rsp)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x3d5b8
testb %al, %al
jne 0x37d5a
leaq 0xd0(%r15), %rsi
leaq 0x58(%r15), %rdi
callq 0xb350
jmp 0x37d5a
leaq 0x1f0(%rsp), %rax
andl $0x0, (%rax)
andq $0x0, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
andq $0x0, 0x20(%rax)
leaq 0xb8(%rsp), %rax
andl $0x0, (%rax)
andq $0x0, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
andq $0x0, 0x20(%rax)
leaq 0x18(%rsp), %r15
pushq $0x22
popq %rbp
movq %r12, %r14
movq (%r14), %r14
cmpq %r12, %r14
je 0x37e85
cmpq $0x0, 0x90(%r14)
je 0x37dd4
leaq 0x88(%r14), %rbx
cmpq $0x0, 0x60(%r14)
je 0x37e4c
leaq 0xb0(%rsp), %rdi
movq %rbx, %rsi
callq 0x3d5ee
movq %rax, %r13
movq (%rax), %rax
cmpq 0x8(%r13), %rax
jne 0x386c8
leaq 0xb0(%rsp), %rdi
movq %rbx, %rsi
callq 0x3d5ee
movq %rax, %r13
leaq 0x18(%r14), %rsi
movq %r15, %rdi
movl %ebp, %edx
callq 0x243b1
movq %r13, %rdi
movq %r15, %rsi
callq 0x1d14c
movq %r15, %rdi
callq 0xbb68
leaq 0x1e8(%rsp), %rdi
movq %rbx, %rsi
callq 0x3d5ee
movq %rax, %rbx
leaq 0x18(%r14), %rsi
movq %r15, %rdi
movl %ebp, %edx
callq 0x243b1
movq %rbx, %rdi
movq %r15, %rsi
callq 0x1d14c
movq %r15, %rdi
callq 0xbb68
jmp 0x37dd4
movq 0x200(%rsp), %r14
leaq 0xb0(%rsp), %rbx
leaq 0x1f0(%rsp), %r15
cmpq %r15, %r14
je 0x37ec8
leaq 0x20(%r14), %rsi
movq %rbx, %rdi
callq 0x3d5ee
movq (%rax), %rcx
cmpq 0x8(%rax), %rcx
je 0x3848b
movq %r14, %rdi
callq 0xb430
movq %rax, %r14
jmp 0x37e9d
leaq 0xb0(%rsp), %rdi
callq 0x3e2e6
leaq 0x1e8(%rsp), %rdi
callq 0x3e2e6
leaq 0x21b9f(%rip), %rsi     # 0x59a88
leaq 0xb0(%rsp), %rdi
leaq 0x18(%rsp), %rdx
callq 0x1b7b6
leaq 0x1e8(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
movq 0x10(%rsp), %rsi
callq 0x365ec
leaq 0xb0(%rsp), %rdi
callq 0xbb68
movq 0xa8(%rsp), %rax
andl $0x0, (%rax)
cmpq $0x0, 0x4cba3(%rip)     # 0x84ad8
jne 0x38b83
cmpq $0x0, 0x1f0(%rsp)
je 0x37fe9
movl $0x200, %edi            # imm = 0x200
callq 0xb5a0
movq %rax, %rbx
leaq 0x1e8(%rsp), %rsi
pushq $0x1
popq %rdx
movq %rax, %rdi
callq 0xbae0
movq %rbx, 0x4cb67(%rip)     # 0x84ad8
movq %rbx, %rdi
callq 0xb2f0
movq %rax, %rbx
leaq 0xb0(%rsp), %rdi
callq 0x22ec4
leaq 0xb0(%rsp), %rsi
movq %rbx, %rdi
callq 0xb510
movq %rax, %rdi
callq 0xb2f0
leaq 0x259e1(%rip), %rsi     # 0x5d989
movq %rax, %rdi
callq 0xb590
movq %rax, %rbx
leaq 0x18(%rsp), %rdi
callq 0x21694
leaq 0x18(%rsp), %rsi
movq %rbx, %rdi
callq 0xb510
movq %rax, %rdi
callq 0xb2f0
leaq 0x18(%rsp), %rdi
callq 0xbb68
leaq 0xb0(%rsp), %rdi
callq 0xbb68
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
leaq 0xc0(%rsp), %rax
movq %rax, -0x10(%rax)
andq $0x0, -0x8(%rax)
movb $0x0, (%rax)
movq 0x10(%rsp), %rax
cmpb $0x1, 0xa9(%rax)
jne 0x38066
leaq 0x22cf5(%rip), %rsi     # 0x5ad14
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rdx
callq 0x1b7b6
leaq 0x1e8(%rsp), %rsi
movq 0x10(%rsp), %rdi
callq 0x366f8
movl %eax, %ebx
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
testb %bl, %bl
je 0x38280
movb $0x1, 0x4ca7f(%rip)     # 0x84ae0
jmp 0x38280
leaq 0x2246e(%rip), %rsi     # 0x5a4db
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rdx
callq 0x1b7b6
leaq 0x1e8(%rsp), %rsi
movq 0x10(%rsp), %rdi
callq 0x366f8
movl %eax, %ebx
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
testb %bl, %bl
je 0x380ab
movb $0x1, 0x4ca35(%rip)     # 0x84ae0
leaq 0x2547f(%rip), %rsi     # 0x5d531
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rdx
callq 0x1b7b6
leaq 0x1e8(%rsp), %rsi
movq 0x10(%rsp), %rdi
callq 0x366f8
movl %eax, %ebx
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
testb %bl, %bl
je 0x380f0
incq 0x4ca48(%rip)           # 0x84b38
leaq 0x25474(%rip), %rsi     # 0x5d56b
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rdx
callq 0x1b7b6
leaq 0x1e8(%rsp), %rsi
movq 0x10(%rsp), %rdi
callq 0x366f8
movl %eax, %ebx
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
testb %bl, %bl
je 0x38135
movb $0x1, 0x4c9bd(%rip)     # 0x84af2
leaq 0x25437(%rip), %rsi     # 0x5d573
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rdx
callq 0x1b7b6
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rdx
movq 0x10(%rsp), %rsi
callq 0x365ec
leaq 0x1e8(%rsp), %rdi
callq 0x1f863
movq %rax, 0x4c45a(%rip)     # 0x845d0
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
leaq 0x18(%rsp), %rdi
callq 0xbb68
cmpq $0x0, 0x4c43b(%rip)     # 0x845d0
je 0x39004
leaq 0x25408(%rip), %rsi     # 0x5d5aa
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rdx
callq 0x1b7b6
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rdx
movq 0x10(%rsp), %rsi
callq 0x365ec
leaq 0xb0(%rsp), %rdi
leaq 0x1e8(%rsp), %rbx
movq %rbx, %rsi
callq 0xb6f0
movq %rbx, %rdi
callq 0xbb68
leaq 0x18(%rsp), %rdi
callq 0xbb68
movq 0xa8(%rsp), %rax
andl $0x0, (%rax)
cmpq $0x0, 0x4c98b(%rip)     # 0x84b90
jne 0x39023
cmpq $0x0, 0xb8(%rsp)
je 0x38242
pushq $0x38
popq %rdi
callq 0xb5a0
movq %rax, %rbx
movq %rax, %rdi
callq 0x312fa
movq 0xa8(%rsp), %rax
andl $0x0, (%rax)
cmpq $0x0, 0x4c954(%rip)     # 0x84b90
je 0x39103
leaq 0x2539a(%rip), %rsi     # 0x5d5e3
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rdx
callq 0x1b7b6
leaq 0x1e8(%rsp), %rsi
movq 0x10(%rsp), %rdi
callq 0x366f8
movb %al, 0x4c86e(%rip)      # 0x84ae1
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
movq 0xa8(%rsp), %rax
andl $0x0, (%rax)
cmpq $0x1, 0x4c345(%rip)     # 0x845d8
jne 0x38c63
movq 0x10(%rsp), %rax
cmpb $0x1, 0xaa(%rax)
jne 0x38322
leaq 0x251c8(%rip), %rsi     # 0x5d476
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rdx
callq 0x1b7b6
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rdx
movq 0x10(%rsp), %rsi
callq 0x365ec
leaq 0x1e8(%rsp), %rdi
callq 0x1f863
movq %rax, 0x4c2f0(%rip)     # 0x845d8
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
leaq 0x18(%rsp), %rdi
callq 0xbb68
movq 0x4c2d2(%rip), %rax     # 0x845d8
cmpq $0x1, %rax
je 0x38322
testq %rax, %rax
je 0x39344
cmpb $0x1, 0x4c7d6(%rip)     # 0x84af2
je 0x39360
movq 0x10(%rsp), %rax
movb 0xa9(%rax), %bl
cmpb $0x1, %bl
jne 0x3835e
leaq 0x25198(%rip), %rsi     # 0x5d4d1
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rdx
callq 0x1b7b6
leaq 0x18(%rsp), %rsi
movq 0x10(%rsp), %rdi
callq 0x366f8
movzbl %al, %esi
negl %esi
jmp 0x38397
leaq 0x251b1(%rip), %rsi     # 0x5d516
leaq 0x38(%rsp), %rdi
leaq 0x80(%rsp), %rdx
callq 0x1b7b6
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rdx
movq 0x10(%rsp), %rsi
callq 0x365ec
leaq 0x18(%rsp), %rdi
callq 0x3c4f4
movl %eax, %esi
leaq 0x148(%rsp), %rdi
callq 0x280ba
leaq 0x18(%rsp), %rdi
testb %bl, %bl
jne 0x383b7
callq 0xbb68
leaq 0x38(%rsp), %rdi
callq 0xbb68
movq 0x10(%rsp), %rbx
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x50(%rax)
movq %rbx, %rdi
callq 0x35ec8
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x60(%rax)
cmpq $0x0, 0xb8(%rsp)
je 0x38443
movq 0xa8(%rsp), %rax
andl $0x0, (%rax)
cmpq $0x0, 0x4c797(%rip)     # 0x84b90
je 0x38f1e
leaq 0x1e8(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
callq 0x1d958
movq 0x4c775(%rip), %rdi     # 0x84b90
leaq 0x1e8(%rsp), %rsi
callq 0x31a46
leaq 0x4c761(%rip), %rdi     # 0x84b90
xorl %esi, %esi
callq 0x4a892
leaq 0x1e8(%rsp), %rdi
callq 0x1da04
leaq 0x148(%rsp), %rdi
callq 0x280f2
leaq 0xb0(%rsp), %rdi
callq 0xbb68
movb $0x1, %bl
xorl %r14d, %r14d
leaq 0x150(%rsp), %rdi
callq 0x3e360
testb %bl, %bl
je 0x38476
xorl %r14d, %r14d
movl %r14d, %eax
addq $0x3e8, %rsp            # imm = 0x3E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
leaq 0x20d81(%rip), %rsi     # 0x5921e
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rdx
callq 0x1b7b6
addq $0x40, %r14
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rdx
movq %r14, %rsi
callq 0x2850e
leaq 0x2548c(%rip), %rsi     # 0x5d958
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rdx
callq 0x1b94c
movb $0x1, %bpl
leaq 0x18(%rsp), %rsi
movq %rbx, %rdi
callq 0xb940
xorl %ebp, %ebp
movq 0x4baf4(%rip), %rsi     # 0x83fe8
movq 0x4ba65(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
jmp 0x39261
callq 0xb6c0
testl %eax, %eax
jne 0x3a12d
leaq 0x23425(%rip), %rsi     # 0x5b941
leaq 0x88(%rsp), %rdi
leaq 0x190(%rsp), %rdx
callq 0x1b7b6
leaq 0xe0(%rsp), %rdi
movl $0xfd5, %esi            # imm = 0xFD5
callq 0x1caa3
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xe0(%rsp), %rdx
callq 0x1ca3c
leaq 0x2167f(%rip), %rdx     # 0x59be3
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1b92d
leaq 0x252be(%rip), %rsi     # 0x5d838
leaq 0x120(%rsp), %rdi
leaq 0x1b0(%rsp), %rdx
callq 0x1b7b6
leaq 0x233a8(%rip), %rdx     # 0x5b93e
leaq 0x100(%rsp), %rdi
leaq 0x120(%rsp), %rsi
callq 0x1b92d
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x100(%rsp), %rdx
callq 0x1ca3c
leaq 0x252a3(%rip), %rdx     # 0x5d86c
leaq 0xb0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1b92d
leaq 0xb0(%rsp), %rdi
callq 0x224fc
callq 0xb6c0
testl %eax, %eax
jne 0x3a12d
leaq 0x23345(%rip), %rsi     # 0x5b941
leaq 0x88(%rsp), %rdi
leaq 0x190(%rsp), %rdx
callq 0x1b7b6
leaq 0xe0(%rsp), %rdi
movl $0xfd9, %esi            # imm = 0xFD9
callq 0x1caa3
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xe0(%rsp), %rdx
callq 0x1ca3c
leaq 0x2159f(%rip), %rdx     # 0x59be3
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1b92d
leaq 0x251de(%rip), %rsi     # 0x5d838
leaq 0x120(%rsp), %rdi
leaq 0x1b0(%rsp), %rdx
callq 0x1b7b6
leaq 0x232c8(%rip), %rdx     # 0x5b93e
leaq 0x100(%rsp), %rdi
leaq 0x120(%rsp), %rsi
callq 0x1b92d
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x100(%rsp), %rdx
callq 0x1ca3c
leaq 0x251db(%rip), %rdx     # 0x5d884
leaq 0xb0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1b92d
leaq 0xb0(%rsp), %rdi
callq 0x224fc
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
addq $0x18, %r14
leaq 0x88(%rsp), %rdi
pushq $0x22
popq %rdx
movq %r14, %rsi
callq 0x243b1
leaq 0x24faf(%rip), %rsi     # 0x5d6a0
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rdx
callq 0x1b94c
leaq 0x25238(%rip), %rdx     # 0x5d942
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1b92d
leaq 0x20afe(%rip), %rsi     # 0x5921e
leaq 0x100(%rsp), %rdi
leaq 0x120(%rsp), %rdx
callq 0x1b7b6
leaq 0xe0(%rsp), %rdi
leaq 0x100(%rsp), %rdx
movq %r13, %rsi
callq 0x2850e
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0xe0(%rsp), %rdx
callq 0x1ca3c
movb $0x1, %bpl
leaq 0x18(%rsp), %rsi
movq %rbx, %rdi
callq 0xb940
xorl %ebp, %ebp
movq 0x4b86b(%rip), %rsi     # 0x83fe8
movq 0x4b7dc(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
jmp 0x39261
callq 0xb6c0
testl %eax, %eax
jne 0x3a12d
leaq 0x2319c(%rip), %rsi     # 0x5b941
leaq 0x38(%rsp), %rdi
leaq 0x100(%rsp), %rdx
callq 0x1b7b6
leaq 0x60(%rsp), %rdi
movl $0xfa4, %esi            # imm = 0xFA4
callq 0x1caa3
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x60(%rsp), %rdx
callq 0x1ca3c
leaq 0x21402(%rip), %rdx     # 0x59be3
leaq 0xb0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1b92d
leaq 0x2503e(%rip), %rsi     # 0x5d838
leaq 0xe0(%rsp), %rdi
leaq 0x120(%rsp), %rdx
callq 0x1b7b6
leaq 0x23128(%rip), %rdx     # 0x5b93e
leaq 0x88(%rsp), %rdi
leaq 0xe0(%rsp), %rsi
callq 0x1b92d
leaq 0x150(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
leaq 0x88(%rsp), %rdx
callq 0x1ca3c
leaq 0x24f07(%rip), %rdx     # 0x5d756
leaq 0x1e8(%rsp), %rdi
leaq 0x150(%rsp), %rsi
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224fc
callq 0xb6c0
testl %eax, %eax
jne 0x3a12d
leaq 0x230bc(%rip), %rsi     # 0x5b941
leaq 0x38(%rsp), %rdi
leaq 0x100(%rsp), %rdx
callq 0x1b7b6
leaq 0x60(%rsp), %rdi
movl $0xfc4, %esi            # imm = 0xFC4
callq 0x1caa3
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x60(%rsp), %rdx
callq 0x1ca3c
leaq 0x21322(%rip), %rdx     # 0x59be3
leaq 0xb0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1b92d
leaq 0x24f5e(%rip), %rsi     # 0x5d838
leaq 0xe0(%rsp), %rdi
leaq 0x120(%rsp), %rdx
callq 0x1b7b6
leaq 0x23048(%rip), %rdx     # 0x5b93e
leaq 0x88(%rsp), %rdi
leaq 0xe0(%rsp), %rsi
callq 0x1b92d
leaq 0x150(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
leaq 0x88(%rsp), %rdx
callq 0x1ca3c
leaq 0x24e25(%rip), %rdx     # 0x5d754
leaq 0x1e8(%rsp), %rdi
leaq 0x150(%rsp), %rsi
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224fc
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
movq 0x10(%rsp), %rsi
xorl %edx, %edx
callq 0x34c1c
leaq 0x24f1c(%rip), %rsi     # 0x5d890
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rdx
callq 0x1b94c
movb $0x1, %bpl
leaq 0x18(%rsp), %rsi
movq %rbx, %rdi
callq 0xb940
xorl %ebp, %ebp
movq 0x4b64c(%rip), %rsi     # 0x83fe8
movq 0x4b5bd(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
jmp 0x39261
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
leaq 0x25444(%rip), %rsi     # 0x5de06
leaq 0x100(%rsp), %rdi
leaq 0x190(%rsp), %rdx
callq 0x1b7b6
leaq 0xe0(%rsp), %rdi
leaq 0x100(%rsp), %rsi
pushq $0x22
popq %rdx
callq 0x243b1
leaq 0x24ee1(%rip), %rsi     # 0x5d8d7
leaq 0x88(%rsp), %rdi
leaq 0xe0(%rsp), %rdx
callq 0x1b94c
leaq 0x24ed5(%rip), %rdx     # 0x5d8e7
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x1b92d
leaq 0x120(%rsp), %rdi
movq 0x10(%rsp), %rsi
xorl %edx, %edx
callq 0x34c1c
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
leaq 0x120(%rsp), %rdx
callq 0x1ca3c
movb $0x1, %bpl
leaq 0x38(%rsp), %rsi
movq %rbx, %rdi
callq 0xb940
xorl %ebp, %ebp
movq 0x4b580(%rip), %rsi     # 0x83fe8
movq 0x4b4f1(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
jmp 0x39261
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
movq 0x80(%rsp), %rdx
addq $0x8, %rdx
leaq 0x24e74(%rip), %rsi     # 0x5d90e
leaq 0x18(%rsp), %rdi
callq 0x1b8b7
leaq 0x24e48(%rip), %rdx     # 0x5d8f3
leaq 0xb0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1b92d
leaq 0x38(%rsp), %rdi
movq 0x10(%rsp), %rsi
xorl %edx, %edx
callq 0x34c1c
leaq 0x1e8(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
leaq 0x38(%rsp), %rdx
callq 0x1ca3c
movb $0x1, %bpl
leaq 0x1e8(%rsp), %rsi
movq %rbx, %rdi
callq 0xb940
xorl %ebp, %ebp
movq 0x4b4e4(%rip), %rsi     # 0x83fe8
movq 0x4b455(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
jmp 0x39261
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
leaq 0xb0(%rsp), %rdi
movq 0x10(%rsp), %rsi
xorl %edx, %edx
callq 0x34c1c
leaq 0x24de4(%rip), %rsi     # 0x5d922
leaq 0x1e8(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x1b94c
movb $0x1, %bpl
leaq 0x1e8(%rsp), %rsi
movq %rbx, %rdi
callq 0xb940
xorl %ebp, %ebp
movq 0x4b479(%rip), %rsi     # 0x83fe8
movq 0x4b3ea(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
jmp 0x39261
callq 0xb6c0
testl %eax, %eax
jne 0x3a12d
leaq 0x22daa(%rip), %rsi     # 0x5b941
leaq 0x88(%rsp), %rdi
leaq 0x190(%rsp), %rdx
callq 0x1b7b6
leaq 0xe0(%rsp), %rdi
movl $0x1057, %esi           # imm = 0x1057
callq 0x1caa3
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xe0(%rsp), %rdx
callq 0x1ca3c
leaq 0x21004(%rip), %rdx     # 0x59be3
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1b92d
leaq 0x24c43(%rip), %rsi     # 0x5d838
leaq 0x120(%rsp), %rdi
leaq 0x1b0(%rsp), %rdx
callq 0x1b7b6
leaq 0x22d2d(%rip), %rdx     # 0x5b93e
leaq 0x100(%rsp), %rdi
leaq 0x120(%rsp), %rsi
callq 0x1b92d
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x100(%rsp), %rdx
callq 0x1ca3c
leaq 0x24d3c(%rip), %rdx     # 0x5d980
leaq 0xb0(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1b92d
leaq 0xb0(%rsp), %rdi
callq 0x224fc
callq 0xb6c0
testl %eax, %eax
jne 0x3a12d
leaq 0x22cca(%rip), %rsi     # 0x5b941
leaq 0x88(%rsp), %rdi
leaq 0x190(%rsp), %rdx
callq 0x1b7b6
leaq 0xe0(%rsp), %rdi
movl $0x1081, %esi           # imm = 0x1081
callq 0x1caa3
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xe0(%rsp), %rdx
callq 0x1ca3c
leaq 0x20f24(%rip), %rdx     # 0x59be3
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1b92d
leaq 0x24b63(%rip), %rsi     # 0x5d838
leaq 0x120(%rsp), %rdi
leaq 0x1b0(%rsp), %rdx
callq 0x1b7b6
leaq 0x22c4d(%rip), %rdx     # 0x5b93e
leaq 0x100(%rsp), %rdi
leaq 0x120(%rsp), %rsi
callq 0x1b92d
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x100(%rsp), %rdx
callq 0x1ca3c
leaq 0x24c79(%rip), %rdx     # 0x5d99d
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224fc
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
leaq 0xe0(%rsp), %rdi
leaq 0xb0(%rsp), %rsi
pushq $0x22
popq %rdx
callq 0x243b1
leaq 0x24b4b(%rip), %rsi     # 0x5d8b8
leaq 0x88(%rsp), %rdi
leaq 0xe0(%rsp), %rdx
callq 0x1b94c
leaq 0x24b6a(%rip), %rdx     # 0x5d8f3
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x1b92d
leaq 0x100(%rsp), %rdi
movq 0x10(%rsp), %rsi
xorl %edx, %edx
callq 0x34c1c
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
leaq 0x100(%rsp), %rdx
callq 0x1ca3c
movb $0x1, %bpl
leaq 0x38(%rsp), %rsi
movq %rbx, %rdi
callq 0xb940
xorl %ebp, %ebp
movq 0x4b209(%rip), %rsi     # 0x83fe8
movq 0x4b17a(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
jmp 0x39261
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
leaq 0x60(%rsp), %rdi
movq 0x10(%rsp), %rsi
xorl %edx, %edx
callq 0x34c1c
leaq 0x24a8d(%rip), %rsi     # 0x5d8a3
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rdx
callq 0x1b94c
movb $0x1, %bpl
leaq 0x38(%rsp), %rsi
movq %rbx, %rdi
callq 0xb940
xorl %ebp, %ebp
movq 0x4b1aa(%rip), %rsi     # 0x83fe8
movq 0x4b11b(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
jmp 0x39261
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
leaq 0x2425e(%rip), %rsi     # 0x5d0c2
leaq 0x100(%rsp), %rdi
leaq 0x190(%rsp), %rdx
callq 0x1b7b6
leaq 0xe0(%rsp), %rdi
leaq 0x100(%rsp), %rsi
pushq $0x22
popq %rdx
callq 0x243b1
leaq 0x24a3f(%rip), %rsi     # 0x5d8d7
leaq 0x88(%rsp), %rdi
leaq 0xe0(%rsp), %rdx
callq 0x1b94c
leaq 0x24a33(%rip), %rdx     # 0x5d8e7
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x1b92d
leaq 0x120(%rsp), %rdi
movq 0x10(%rsp), %rsi
xorl %edx, %edx
callq 0x34c1c
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
leaq 0x120(%rsp), %rdx
callq 0x1ca3c
movb $0x1, %bpl
leaq 0x38(%rsp), %rsi
movq %rbx, %rdi
callq 0xb940
xorl %ebp, %ebp
movq 0x4b0de(%rip), %rsi     # 0x83fe8
movq 0x4b04f(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
jmp 0x39261
callq 0xb6c0
testl %eax, %eax
jne 0x3a12d
leaq 0x22a0f(%rip), %rsi     # 0x5b941
leaq 0x100(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x1b7b6
leaq 0x120(%rsp), %rdi
movl $0x109a, %esi           # imm = 0x109A
callq 0x1caa3
leaq 0xe0(%rsp), %rdi
leaq 0x100(%rsp), %rsi
leaq 0x120(%rsp), %rdx
callq 0x1ca3c
leaq 0x20c69(%rip), %rdx     # 0x59be3
leaq 0x88(%rsp), %rdi
leaq 0xe0(%rsp), %rsi
callq 0x1b92d
leaq 0x248a2(%rip), %rsi     # 0x5d838
leaq 0x1b0(%rsp), %rdi
leaq 0x5f(%rsp), %rdx
callq 0x1b7b6
leaq 0x2298f(%rip), %rdx     # 0x5b93e
leaq 0x190(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x1b92d
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0x190(%rsp), %rdx
callq 0x1ca3c
leaq 0x23e44(%rip), %rdx     # 0x5ce29
leaq 0x1e8(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224fc
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
leaq 0x24976(%rip), %rsi     # 0x5d98c
movq %rax, %rdi
callq 0xb260
jmp 0x3937a
callq 0xb6c0
testl %eax, %eax
jne 0x3a12d
leaq 0x2290a(%rip), %rsi     # 0x5b941
leaq 0x88(%rsp), %rdi
leaq 0x190(%rsp), %rdx
callq 0x1b7b6
leaq 0xe0(%rsp), %rdi
movl $0x1074, %esi           # imm = 0x1074
callq 0x1caa3
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xe0(%rsp), %rdx
callq 0x1ca3c
leaq 0x20b64(%rip), %rdx     # 0x59be3
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1b92d
leaq 0x247a3(%rip), %rsi     # 0x5d838
leaq 0x120(%rsp), %rdi
leaq 0x1b0(%rsp), %rdx
callq 0x1b7b6
leaq 0x2288d(%rip), %rdx     # 0x5b93e
leaq 0x100(%rsp), %rdi
leaq 0x120(%rsp), %rsi
callq 0x1b92d
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x100(%rsp), %rdx
callq 0x1ca3c
leaq 0x23d43(%rip), %rdx     # 0x5ce27
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224fc
callq 0xb6c0
testl %eax, %eax
jne 0x3a12d
leaq 0x2282a(%rip), %rsi     # 0x5b941
leaq 0x88(%rsp), %rdi
leaq 0x190(%rsp), %rdx
callq 0x1b7b6
leaq 0xe0(%rsp), %rdi
movl $0x1078, %esi           # imm = 0x1078
callq 0x1caa3
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0xe0(%rsp), %rdx
callq 0x1ca3c
leaq 0x20a84(%rip), %rdx     # 0x59be3
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1b92d
leaq 0x246c3(%rip), %rsi     # 0x5d838
leaq 0x120(%rsp), %rdi
leaq 0x1b0(%rsp), %rdx
callq 0x1b7b6
leaq 0x227ad(%rip), %rdx     # 0x5b93e
leaq 0x100(%rsp), %rdi
leaq 0x120(%rsp), %rsi
callq 0x1b92d
leaq 0x18(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x100(%rsp), %rdx
callq 0x1ca3c
leaq 0x23c65(%rip), %rdx     # 0x5ce29
leaq 0x1e8(%rsp), %rdi
leaq 0x18(%rsp), %rsi
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224fc
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
movq 0x80(%rsp), %rsi
addq $0x8, %rsi
leaq 0x88(%rsp), %rdi
pushq $0x22
popq %rdx
callq 0x243b1
leaq 0x2448f(%rip), %rsi     # 0x5d6a0
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rdx
callq 0x1b94c
leaq 0x246cc(%rip), %rdx     # 0x5d8f6
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1b92d
movb $0x1, %bpl
leaq 0x38(%rsp), %rsi
movq %rbx, %rdi
callq 0xb940
xorl %ebp, %ebp
movq 0x4ad96(%rip), %rsi     # 0x83fe8
movq 0x4ad07(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
callq 0xb6c0
testl %eax, %eax
jne 0x3a12d
leaq 0x226cc(%rip), %rsi     # 0x5b941
leaq 0x100(%rsp), %rdi
leaq 0x5f(%rsp), %rdx
callq 0x1b7b6
leaq 0x120(%rsp), %rdi
movl $0x100e, %esi           # imm = 0x100E
callq 0x1caa3
leaq 0xe0(%rsp), %rdi
leaq 0x100(%rsp), %rsi
leaq 0x120(%rsp), %rdx
callq 0x1ca3c
leaq 0x20926(%rip), %rdx     # 0x59be3
leaq 0x88(%rsp), %rdi
leaq 0xe0(%rsp), %rsi
callq 0x1b92d
leaq 0x2455f(%rip), %rsi     # 0x5d838
leaq 0x1b0(%rsp), %rdi
leaq 0x147(%rsp), %rdx
callq 0x1b7b6
leaq 0x22649(%rip), %rdx     # 0x5b93e
leaq 0x190(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x1b92d
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rsi
leaq 0x190(%rsp), %rdx
callq 0x1ca3c
leaq 0x23ede(%rip), %rdx     # 0x5d209
leaq 0x38(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x1b92d
leaq 0x38(%rsp), %rdi
callq 0x224fc
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
leaq 0x24658(%rip), %rsi     # 0x5d9ae
movq %rax, %rdi
callq 0xb260
jmp 0x3937a
pushq $0x10
popq %rdi
callq 0xb300
movq %rax, %rbx
leaq 0x2465a(%rip), %rsi     # 0x5d9cc
movq %rax, %rdi
callq 0xb260
movq 0x4ac67(%rip), %rsi     # 0x83fe8
movq 0x4abd8(%rip), %rdx     # 0x83f60
movq %rbx, %rdi
callq 0xb9d0
movq %rdx, %r15
movq %rax, %r14
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x393a8
movq %rdx, %r15
movq %rax, %r14
leaq 0x60(%rsp), %rdi
callq 0xbb68
jmp 0x393c2
jmp 0x393ff
jmp 0x39414
jmp 0x393ff
jmp 0x39414
movq %rdx, %r15
movq %rax, %r14
leaq 0x190(%rsp), %rdi
callq 0xbb68
jmp 0x39436
jmp 0x39464
movq %rdx, %r15
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x393f1
movq %rdx, %r15
movq %rax, %r14
leaq 0x60(%rsp), %rdi
callq 0xbb68
jmp 0x3944b
jmp 0x39464
movq %rdx, %r15
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x3941a
movq %rdx, %r15
movq %rax, %r14
leaq 0x18(%rsp), %rdi
callq 0xbb68
jmp 0x3946a
jmp 0x39706
jmp 0x3971b
movq %rdx, %r15
movq %rax, %r14
leaq 0x1b0(%rsp), %rdi
callq 0xbb68
jmp 0x39487
movq %rdx, %r15
movq %rax, %r14
leaq 0x190(%rsp), %rdi
callq 0xbb68
jmp 0x3949f
jmp 0x3950c
jmp 0x3950c
movq %rdx, %r15
movq %rax, %r14
leaq 0x100(%rsp), %rdi
callq 0xbb68
jmp 0x39512
jmp 0x397f1
movq %rdx, %r15
movq %rax, %r14
leaq 0x88(%rsp), %rdi
callq 0xbb68
jmp 0x3952c
movq %rdx, %r15
movq %rax, %r14
leaq 0x1b0(%rsp), %rdi
callq 0xbb68
jmp 0x39541
jmp 0x39591
movq %rdx, %r15
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x394d1
movq %rdx, %r15
movq %rax, %r14
leaq 0x150(%rsp), %rdi
callq 0xbb68
jmp 0x39565
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x394f8
movq %rax, %r14
leaq 0x150(%rsp), %rdi
callq 0xbb68
jmp 0x3957a
jmp 0x39591
movq %rdx, %r15
movq %rax, %r14
leaq 0x120(%rsp), %rdi
callq 0xbb68
jmp 0x39597
jmp 0x39918
movq %rdx, %r15
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
callq 0xbb68
jmp 0x395b1
movq %rdx, %r15
movq %rax, %r14
leaq 0x88(%rsp), %rdi
callq 0xbb68
jmp 0x395c9
jmp 0x39671
jmp 0x3963f
jmp 0x39651
movq %rdx, %r15
movq %rax, %r14
leaq 0x88(%rsp), %rdi
callq 0xbb68
jmp 0x39618
movq %rax, %r14
leaq 0x88(%rsp), %rdi
callq 0xbb68
jmp 0x3962d
jmp 0x39671
movq %rdx, %r15
movq %rax, %r14
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x39677
jmp 0x39a1c
movq %rdx, %r15
movq %rax, %r14
leaq 0x120(%rsp), %rdi
callq 0xbb68
jmp 0x39691
movq %rdx, %r15
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
callq 0xbb68
jmp 0x396d2
jmp 0x3977a
jmp 0x3975d
movq %rdx, %r15
movq %rax, %r14
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x39600
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x100(%rsp), %rdi
callq 0xbb68
jmp 0x396f7
movq %rdx, %r15
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
callq 0xbb68
jmp 0x39736
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
callq 0xbb68
jmp 0x3974b
movq %rdx, %r15
movq %rax, %r14
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x3965a
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x120(%rsp), %rdi
callq 0xbb68
jmp 0x39766
jmp 0x3977a
movq %rdx, %r15
movq %rax, %r14
leaq 0x60(%rsp), %rdi
callq 0xbb68
jmp 0x39780
jmp 0x39bdd
movq %rdx, %r15
movq %rax, %r14
leaq 0x100(%rsp), %rdi
jmp 0x39d1b
jmp 0x39706
jmp 0x3971b
movq %rdx, %r15
movq %rax, %r14
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x396bd
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x60(%rsp), %rdi
callq 0xbb68
jmp 0x397a7
movq %rdx, %r15
movq %rax, %r14
leaq 0x120(%rsp), %rdi
callq 0xbb68
jmp 0x397ba
jmp 0x39887
jmp 0x3985d
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x60(%rsp), %rdi
callq 0xbb68
jmp 0x397df
movq %rdx, %r15
movq %rax, %r14
leaq 0xb0(%rsp), %rdi
callq 0xbb68
jmp 0x39721
movq %rdx, %r15
movq %rax, %r14
leaq 0x18(%rsp), %rdi
callq 0xbb68
jmp 0x397f7
movq %rdx, %r15
movq %rax, %r14
leaq 0xb0(%rsp), %rdi
callq 0xbb68
jmp 0x3980f
movq %rax, %r14
leaq 0xb0(%rsp), %rdi
callq 0xbb68
jmp 0x39821
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x60(%rsp), %rdi
callq 0xbb68
jmp 0x39866
jmp 0x39887
movq %rdx, %r15
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
callq 0xbb68
jmp 0x3988d
jmp 0x39c6e
jmp 0x39d49
jmp 0x397f1
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x88(%rsp), %rdi
jmp 0x39a85
movq %rdx, %r15
movq %rax, %r14
leaq 0x100(%rsp), %rdi
callq 0xbb68
jmp 0x39caf
jmp 0x39c28
jmp 0x39972
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x88(%rsp), %rdi
callq 0xbb68
jmp 0x3990b
movq %rdx, %r15
movq %rax, %r14
leaq 0x100(%rsp), %rdi
callq 0xbb68
jmp 0x3991e
movq %rdx, %r15
movq %rax, %r14
leaq 0x18(%rsp), %rdi
callq 0xbb68
jmp 0x39936
movq %rax, %r14
leaq 0x18(%rsp), %rdi
callq 0xbb68
jmp 0x39948
movq %rdx, %r15
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x3984e
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x39960
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x88(%rsp), %rdi
callq 0xbb68
jmp 0x3997b
jmp 0x39992
jmp 0x39992
jmp 0x39c28
movq %rdx, %r15
movq %rax, %r14
leaq 0x88(%rsp), %rdi
jmp 0x39b1f
jmp 0x39ce4
jmp 0x39918
jmp 0x39c15
jmp 0x39ca9
jmp 0x39a74
movq %rdx, %r15
movq %rax, %r14
leaq 0x18(%rsp), %rdi
callq 0xbb68
jmp 0x398cb
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0xe0(%rsp), %rdi
callq 0xbb68
jmp 0x39a00
movq %rdx, %r15
movq %rax, %r14
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x398f8
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x60(%rsp), %rdi
jmp 0x39a85
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0xe0(%rsp), %rdi
jmp 0x39a85
movq %rdx, %r15
movq %rax, %r14
leaq 0x120(%rsp), %rdi
callq 0xbb68
jmp 0x39a22
movq %rdx, %r15
movq %rax, %r14
leaq 0x60(%rsp), %rdi
callq 0xbb68
jmp 0x39a37
movq %rax, %r14
leaq 0x60(%rsp), %rdi
callq 0xbb68
jmp 0x39a44
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0xb0(%rsp), %rdi
callq 0xbb68
jmp 0x39a5c
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0xe0(%rsp), %rdi
callq 0xbb68
jmp 0x39a7d
jmp 0x39c28
movq %rdx, %r15
movq %rax, %r14
movq %rbx, %rdi
callq 0xb470
jmp 0x39cbc
jmp 0x39dbc
movq %rdx, %r15
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x399c8
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0xb0(%rsp), %rdi
jmp 0x39a61
jmp 0x39a1c
jmp 0x39d49
movq %rdx, %r15
movq %rax, %r14
pushq $0x38
popq %rsi
movq %rbx, %rdi
callq 0xb5b0
jmp 0x39cbc
jmp 0x39c15
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x100(%rsp), %rdi
callq 0xbb68
jmp 0x39b94
jmp 0x39c15
jmp 0x39c15
movq %rdx, %r15
movq %rax, %r14
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x39be3
movq %rdx, %r15
movq %rax, %r14
leaq 0x38(%rsp), %rdi
jmp 0x39e2d
movq %rax, %r14
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x39bfa
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x18(%rsp), %rdi
callq 0xbb68
testb %bpl, %bpl
jne 0x39c08
jmp 0x39dfb
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x100(%rsp), %rdi
callq 0xbb68
testb %bpl, %bpl
jne 0x39c1b
jmp 0x39d4f
jmp 0x39b11
jmp 0x39c28
movq %rdx, %r15
movq %rax, %r14
leaq 0x18(%rsp), %rdi
callq 0xbb68
jmp 0x39ab7
movq %rdx, %r15
movq %rax, %r14
leaq 0x38(%rsp), %rdi
jmp 0x39b1f
jmp 0x39aef
jmp 0x39c28
jmp 0x39c28
jmp 0x39ada
jmp 0x39aef
jmp 0x39aef
jmp 0x39c28
jmp 0x39c28
movq %rdx, %r15
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x39af5
movq %rdx, %r15
movq %rax, %r14
leaq 0x18(%rsp), %rdi
jmp 0x39b1f
jmp 0x39c28
jmp 0x39b11
jmp 0x39c28
jmp 0x39b11
jmp 0x39c28
jmp 0x39b11
movq %rdx, %r15
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x39cbc
jmp 0x39c28
jmp 0x39c28
jmp 0x39c02
jmp 0x39bdd
movq %rdx, %r15
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0x1da04
jmp 0x39caf
jmp 0x39ca9
jmp 0x39c83
jmp 0x39dbc
movq %rdx, %r15
movq %rax, %r14
movl $0x200, %esi            # imm = 0x200
movq %rbx, %rdi
callq 0xb5b0
jmp 0x39dc2
jmp 0x39dbc
jmp 0x39dbc
jmp 0x39df5
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x39c4f
jmp 0x39d49
movq %rdx, %r15
movq %rax, %r14
leaq 0x18(%rsp), %rdi
callq 0xbb68
jmp 0x39bc3
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x38(%rsp), %rdi
callq 0xbb68
testb %bpl, %bpl
jne 0x39c61
jmp 0x39d59
jmp 0x39c28
movq %rdx, %r15
movq %rax, %r14
leaq 0x60(%rsp), %rdi
callq 0xbb68
jmp 0x39c74
jmp 0x39e0a
movq %rax, %r14
movq %r14, %rdi
callq 0xba30
movq %rdx, %r15
movq %rax, %r14
movq %rbx, %rdi
callq 0xb470
jmp 0x39dfb
movq %rdx, %r15
movq %rax, %r14
movq %rbx, %rdi
callq 0xb470
jmp 0x39d4f
movq %rdx, %r15
movq %rax, %r14
jmp 0x39cbc
jmp 0x39df5
jmp 0x39c6e
jmp 0x39d49
jmp 0x39dbc
jmp 0x39c83
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x60(%rsp), %rdi
callq 0xbb68
jmp 0x39cd2
movq %rdx, %r15
movq %rax, %r14
movq %rbx, %rdi
callq 0xb470
jmp 0x39d59
movq %rdx, %r15
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
callq 0xbb68
jmp 0x39cea
movq %rdx, %r15
movq %rax, %r14
jmp 0x39d59
jmp 0x39c90
movq %rdx, %r15
movq %rax, %r14
jmp 0x39d0c
jmp 0x39c9a
movq %rdx, %r15
movq %rax, %r14
jmp 0x39d16
jmp 0x39d49
jmp 0x39ce4
movq %rdx, %r15
movq %rax, %r14
leaq 0x148(%rsp), %rdi
callq 0x280f2
leaq 0xb0(%rsp), %rdi
jmp 0x39dca
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x88(%rsp), %rdi
jmp 0x39d7c
jmp 0x39dbc
movq %rdx, %r15
movq %rax, %r14
leaq 0x88(%rsp), %rdi
jmp 0x39d61
jmp 0x39e0a
movq %rdx, %r15
movq %rax, %r14
leaq 0x88(%rsp), %rdi
callq 0xbb68
leaq 0x60(%rsp), %rdi
callq 0xbb68
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x39d4f
movq %rdx, %r15
movq %rax, %r14
leaq 0x18(%rsp), %rdi
callq 0xbb68
jmp 0x39d3d
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x38(%rsp), %rdi
callq 0xbb68
jmp 0x39d77
movq %rdx, %r15
movq %rax, %r14
leaq 0x18(%rsp), %rdi
callq 0xbb68
leaq 0xb0(%rsp), %rdi
callq 0xbb68
jmp 0x39dc2
jmp 0x39dbc
jmp 0x39d8c
jmp 0x39dbc
movq %rdx, %r15
movq %rax, %r14
movb $0x1, %bpl
leaq 0x60(%rsp), %rdi
callq 0xbb68
testb %bpl, %bpl
jne 0x39d92
jmp 0x39dd7
jmp 0x39da2
jmp 0x39dd1
movq %rdx, %r15
movq %rax, %r14
movq %rbx, %rdi
callq 0xb470
jmp 0x39dd7
jmp 0x39df5
jmp 0x39e12
jmp 0x39e12
movq %rdx, %r15
movq %rax, %r14
leaq 0x18(%rsp), %rdi
callq 0xbb68
jmp 0x39dd7
jmp 0x39dd1
jmp 0x39dd1
jmp 0x39dbc
jmp 0x39dd1
movq %rdx, %r15
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x39dfb
movq %rdx, %r15
movq %rax, %r14
leaq 0xb0(%rsp), %rdi
callq 0x3e2e6
leaq 0x1e8(%rsp), %rdi
callq 0x3e2e6
jmp 0x39dfb
jmp 0x39df5
movq %rdx, %r15
movq %rax, %r14
leaq 0x150(%rsp), %rdi
callq 0x3e360
jmp 0x39e32
movq %rdx, %r15
movq %rax, %r14
jmp 0x39e32
movq %rdx, %r15
movq %rax, %r14
leaq 0x150(%rsp), %rdi
callq 0xbb68
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
cmpl $0x6, %r15d
jne 0x39e92
movq %r14, %rdi
callq 0xb270
movq %rax, %rbx
leaq 0x23bd0(%rip), %rsi     # 0x5da1a
leaq 0x150(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x1b7b6
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x10(%rax)
leaq 0x1e8(%rsp), %rdi
leaq 0x150(%rsp), %rsi
movq %rax, %rdx
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224e3
jmp 0x39faa
cmpl $0x5, %r15d
jne 0x39ef2
movq %r14, %rdi
callq 0xb270
movq %rax, %rbx
leaq 0x23b5f(%rip), %rsi     # 0x5da09
leaq 0x150(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x1b7b6
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x10(%rax)
leaq 0x1e8(%rsp), %rdi
leaq 0x150(%rsp), %rsi
movq %rax, %rdx
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224e3
jmp 0x39faa
cmpl $0x4, %r15d
jne 0x39f4f
movq %r14, %rdi
callq 0xb270
movq %rax, %rbx
leaq 0x23aed(%rip), %rsi     # 0x5d9f7
leaq 0x150(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x1b7b6
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x10(%rax)
leaq 0x1e8(%rsp), %rdi
leaq 0x150(%rsp), %rsi
movq %rax, %rdx
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224e3
jmp 0x39faa
cmpl $0x3, %r15d
jne 0x39fce
movq %r14, %rdi
callq 0xb270
movq %rax, %rbx
leaq 0x23a81(%rip), %rsi     # 0x5d9e8
leaq 0x150(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
callq 0x1b7b6
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x10(%rax)
leaq 0x1e8(%rsp), %rdi
leaq 0x150(%rsp), %rsi
movq %rax, %rdx
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224e3
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
leaq 0x150(%rsp), %rdi
callq 0xbb68
callq 0xb970
jmp 0x38473
cmpl $0x2, %r15d
je 0x3a0ae
cmpl $0x1, %r15d
jne 0x39bfa
movq %r14, %rdi
callq 0xb270
movq %rax, %rbx
movq 0xa8(%rsp), %rax
movl (%rax), %ebp
movl %ebp, %edi
callq 0xb1e0
movq %rax, %r14
leaq 0x238ec(%rip), %rsi     # 0x5d8f4
leaq 0x60(%rsp), %rdi
leaq 0x88(%rsp), %rdx
callq 0x1b7b6
leaq 0xb0(%rsp), %r15
leaq 0x60(%rsp), %rdx
movq %r15, %rdi
movq %r14, %rsi
callq 0x1b94c
testl %ebp, %ebp
leaq 0x4aabd(%rip), %rax     # 0x84af8
cmoveq %rax, %r15
leaq 0x150(%rsp), %rdi
movq %r15, %rsi
callq 0xb7b0
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x10(%rax)
leaq 0x1e8(%rsp), %rdi
leaq 0x150(%rsp), %rsi
movq %rax, %rdx
callq 0x1b92d
leaq 0x1e8(%rsp), %rdi
callq 0x224e3
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
leaq 0x150(%rsp), %rdi
callq 0xbb68
leaq 0xb0(%rsp), %rdi
callq 0xbb68
leaq 0x60(%rsp), %rdi
jmp 0x39fbf
movq %r14, %rdi
callq 0xb270
movq %rax, %rbx
callq 0x2243d
movq 0x4aa13(%rip), %r14     # 0x84ad8
testq %r14, %r14
jne 0x3a0d1
movq 0x49f0f(%rip), %r14     # 0x83fe0
leaq 0x1e8(%rsp), %rdi
pushq $0x1f
popq %rdx
pushq $0x1
popq %rcx
movq %r14, %rsi
movl %ecx, %r8d
callq 0x1e0c2
leaq 0x206f5(%rip), %rsi     # 0x5a7e6
movq %r14, %rdi
callq 0xb590
leaq 0x1e8(%rsp), %rdi
callq 0x1e15c
movq %r14, %rdi
callq 0xb2f0
movq %rax, %r14
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x10(%rax)
movq %r14, %rdi
movq %rax, %rsi
callq 0xb590
movq %rax, %rdi
callq 0xb2f0
pushq $0x1
popq %rdi
callq 0xb6d0
jmp 0x3a14b
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0x1e15c
jmp 0x3a14e
jmp 0x3a14b
movq %rax, %r14
callq 0xb970
jmp 0x39bfa
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x3a16d
movq %rax, %r14
leaq 0x150(%rsp), %rdi
callq 0xbb68
jmp 0x3a17f
movq %rax, %r14
leaq 0xb0(%rsp), %rdi
callq 0xbb68
jmp 0x3a191
movq %rax, %r14
leaq 0x60(%rsp), %rdi
callq 0xbb68
callq 0xb970
jmp 0x39bfa
movq %rax, %r14
jmp 0x3a19b
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x3a1bf
movq %rax, %r14
leaq 0x150(%rsp), %rdi
callq 0xbb68
jmp 0x3a1d1
movq %rax, %r14
callq 0xb970
jmp 0x39bfa
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x3a1f0
movq %rax, %r14
leaq 0x150(%rsp), %rdi
callq 0xbb68
jmp 0x3a202
movq %rax, %r14
callq 0xb970
jmp 0x39bfa
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x3a221
movq %rax, %r14
leaq 0x150(%rsp), %rdi
callq 0xbb68
jmp 0x3a233
movq %rax, %r14
callq 0xb970
jmp 0x39bfa
movq %rax, %r14
leaq 0x1e8(%rsp), %rdi
callq 0xbb68
jmp 0x3a252
movq %rax, %r14
leaq 0x150(%rsp), %rdi
callq 0xbb68
jmp 0x3a264
movq %rax, %r14
callq 0xb970
jmp 0x39bfa
movq %rax, %rdi
callq 0x1bdcd