// File: AshOlogn[P]ash-language-interpreter/src/bitlogicaleval.cpp
// Function: evaluateBitLogicalExpression(BitLogicalOperatorNode*)
ParseData evaluateBitLogicalExpression(BitLogicalOperatorNode* node) {

  ParseData left = node->leftArg->evaluate();
  ParseData right = node->rightArg->evaluate();
  
  switch(node->operation) {
    
    case BIT_AND_OP: {

      switch(left.type) {

        case CHAR_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((unsigned char) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT32_T: return bitHelper((unsigned char) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT64_T: return bitHelper((unsigned char) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT32_T: return bitHelper((unsigned char) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT64_T: return bitHelper((unsigned char) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_AND_OP);  
          }
        }    

        case INT32_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((int32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT32_T: return bitHelper((int32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT64_T: return bitHelper((int32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT32_T: return bitHelper((int32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT64_T: return bitHelper((int32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_AND_OP);                
          }
        }

        case INT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((int64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT32_T: return bitHelper((int64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT64_T: return bitHelper((int64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT32_T: return bitHelper((int64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT64_T: return bitHelper((int64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_AND_OP); 
          }    
        }

        case UINT32_T: {

          switch(right.type) {            
            case CHAR_T: return bitHelper((uint32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT32_T: return bitHelper((uint32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT64_T: return bitHelper((uint32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT32_T: return bitHelper((uint32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT64_T: return bitHelper((uint32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_AND_OP);   
          }
        }

        case UINT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((uint64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT32_T: return bitHelper((uint64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT64_T: return bitHelper((uint64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT32_T: return bitHelper((uint64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT64_T: return bitHelper((uint64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_AND_OP); 
          }
        }
      }
    }
    
    case BIT_XOR_OP: {

      switch(left.type) {

        case CHAR_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((unsigned char) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT32_T: return bitHelper((unsigned char) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT64_T: return bitHelper((unsigned char) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT32_T: return bitHelper((unsigned char) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT64_T: return bitHelper((unsigned char) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_XOR_OP);  
          }
        }    

        case INT32_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((int32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT32_T: return bitHelper((int32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT64_T: return bitHelper((int32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT32_T: return bitHelper((int32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT64_T: return bitHelper((int32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_XOR_OP);                
          }
        }

        case INT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((int64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT32_T: return bitHelper((int64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT64_T: return bitHelper((int64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT32_T: return bitHelper((int64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT64_T: return bitHelper((int64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
          }    
        }

        case UINT32_T: {

          switch(right.type) {            
            case CHAR_T: return bitHelper((uint32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT32_T: return bitHelper((uint32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT64_T: return bitHelper((uint32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT32_T: return bitHelper((uint32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT64_T: return bitHelper((uint32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_XOR_OP);   
          }
        }

        case UINT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((uint64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT32_T: return bitHelper((uint64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT64_T: return bitHelper((uint64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT32_T: return bitHelper((uint64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT64_T: return bitHelper((uint64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
          }
        }
      }
    }
    
    case BIT_OR_OP: {

      switch(left.type) {

        case CHAR_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((unsigned char) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT32_T: return bitHelper((unsigned char) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT64_T: return bitHelper((unsigned char) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT32_T: return bitHelper((unsigned char) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT64_T: return bitHelper((unsigned char) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_OR_OP);  
          }
        }    

        case INT32_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((int32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT32_T: return bitHelper((int32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT64_T: return bitHelper((int32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT32_T: return bitHelper((int32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT64_T: return bitHelper((int32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_OR_OP);                
          }
        }

        case INT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((int64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT32_T: return bitHelper((int64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT64_T: return bitHelper((int64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT32_T: return bitHelper((int64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT64_T: return bitHelper((int64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_OR_OP); 
          }    
        }

        case UINT32_T: {

          switch(right.type) {            
            case CHAR_T: return bitHelper((uint32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT32_T: return bitHelper((uint32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT64_T: return bitHelper((uint32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT32_T: return bitHelper((uint32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT64_T: return bitHelper((uint32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_OR_OP);   
          }
        }

        case UINT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((uint64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT32_T: return bitHelper((uint64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT64_T: return bitHelper((uint64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT32_T: return bitHelper((uint64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT64_T: return bitHelper((uint64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_OR_OP); 
          }
        }
      }
    }

		case BIT_LEFT_OP: {

      switch(left.type) {

        case CHAR_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((unsigned char) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT32_T: return bitHelper((unsigned char) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT64_T: return bitHelper((unsigned char) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT32_T: return bitHelper((unsigned char) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT64_T: return bitHelper((unsigned char) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_LEFT_OP);  
          }
        }    

        case INT32_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((int32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT32_T: return bitHelper((int32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT64_T: return bitHelper((int32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT32_T: return bitHelper((int32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT64_T: return bitHelper((int32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_LEFT_OP);                
          }
        }

        case INT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((int64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT32_T: return bitHelper((int64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT64_T: return bitHelper((int64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT32_T: return bitHelper((int64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT64_T: return bitHelper((int64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
          }    
        }

        case UINT32_T: {

          switch(right.type) {            
            case CHAR_T: return bitHelper((uint32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT32_T: return bitHelper((uint32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT64_T: return bitHelper((uint32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT32_T: return bitHelper((uint32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT64_T: return bitHelper((uint32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_LEFT_OP);   
          }
        }

        case UINT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((uint64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT32_T: return bitHelper((uint64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT64_T: return bitHelper((uint64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT32_T: return bitHelper((uint64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT64_T: return bitHelper((uint64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
          }
        }
      }
    }

		case BIT_RIGHT_OP: {

      switch(left.type) {

        case CHAR_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((unsigned char) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT32_T: return bitHelper((unsigned char) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT64_T: return bitHelper((unsigned char) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT32_T: return bitHelper((unsigned char) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT64_T: return bitHelper((unsigned char) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_RIGHT_OP);  
          }
        }    

        case INT32_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((int32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT32_T: return bitHelper((int32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT64_T: return bitHelper((int32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT32_T: return bitHelper((int32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT64_T: return bitHelper((int32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_RIGHT_OP);                
          }
        }

        case INT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((int64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT32_T: return bitHelper((int64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT64_T: return bitHelper((int64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT32_T: return bitHelper((int64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT64_T: return bitHelper((int64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
          }    
        }

        case UINT32_T: {

          switch(right.type) {            
            case CHAR_T: return bitHelper((uint32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT32_T: return bitHelper((uint32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT64_T: return bitHelper((uint32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT32_T: return bitHelper((uint32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT64_T: return bitHelper((uint32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_RIGHT_OP);   
          }
        }

        case UINT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((uint64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT32_T: return bitHelper((uint64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT64_T: return bitHelper((uint64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT32_T: return bitHelper((uint64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT64_T: return bitHelper((uint64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
          }
        }
      }
    }
    
    case AND_OP: return logicHelper((bool) left.value.integer, (bool) right.value.integer, AND_OP); 
    case XOR_OP: return logicHelper((bool) left.value.integer, (bool) right.value.integer, XOR_OP); 
    case OR_OP: return logicHelper((bool) left.value.integer, (bool) right.value.integer, OR_OP); 
  }

  ParseData dummy;
  return dummy;

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x130, %rsp            # imm = 0x130
movq %rdi, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rdi
movq (%rdi), %rax
movq (%rax), %rax
callq *%rax
movl %eax, -0x28(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x18(%rbp), %rax
movq 0x28(%rax), %rdi
movq (%rdi), %rax
movq (%rax), %rax
callq *%rax
movl %eax, -0x38(%rbp)
movq %rdx, -0x30(%rbp)
movq -0x18(%rbp), %rax
movl 0x18(%rax), %eax
addl $-0x11, %eax
movl %eax, %ecx
movq %rcx, -0x40(%rbp)
subl $0xd, %eax
ja 0x1ec98
movq -0x40(%rbp), %rax
leaq 0x24fb7(%rip), %rcx     # 0x422a8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl -0x28(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x48(%rbp)
subl $0x6, %eax
ja 0x1d7e1
movq -0x48(%rbp), %rax
leaq 0x24fc6(%rip), %rcx     # 0x422e0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x50(%rbp)
subl $0x6, %eax
ja 0x1d41f
movq -0x50(%rbp), %rax
leaq 0x24fb9(%rip), %rcx     # 0x422fc
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movb %al, %sil
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x19, %ecx
movzbl %sil, %edi
movzbl %al, %esi
callq 0x1ecb0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movl %ecx, %esi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x19, %ecx
movzbl %al, %edi
callq 0x1efa0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x19, %ecx
movzbl %al, %edi
callq 0x1f250
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movl %ecx, %esi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x19, %ecx
movzbl %al, %edi
callq 0x1f510
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x19, %ecx
movzbl %al, %edi
callq 0x1f7c0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1d421
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x58(%rbp)
subl $0x6, %eax
ja 0x1d514
movq -0x58(%rbp), %rax
leaq 0x24ed7(%rip), %rcx     # 0x42318
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x19, %ecx
movzbl %al, %esi
callq 0x1fa80
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x1fd50
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x1ffe0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x20290
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x20520
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1d516
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x60(%rbp)
subl $0x6, %eax
ja 0x1d5ff
movq -0x60(%rbp), %rax
leaq 0x24dfe(%rip), %rcx     # 0x42334
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x19, %ecx
movzbl %al, %esi
callq 0x207d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x20ad0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x20db0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x21070
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x21340
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1d601
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x68(%rbp)
subl $0x6, %eax
ja 0x1d6f4
movq -0x68(%rbp), %rax
leaq 0x24d2f(%rip), %rcx     # 0x42350
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x19, %ecx
movzbl %al, %esi
callq 0x21600
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x218d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x21b60
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x21e00
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x22090
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1d6f6
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x70(%rbp)
subl $0x6, %eax
ja 0x1d7df
movq -0x70(%rbp), %rax
leaq 0x24c56(%rip), %rcx     # 0x4236c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x19, %ecx
movzbl %al, %esi
callq 0x22330
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x22630
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x22910
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x22bd0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x19, %ecx
callq 0x22ea0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1d7e1
jmp 0x1d7e3
movl -0x28(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x78(%rbp)
subl $0x6, %eax
ja 0x1dce2
movq -0x78(%rbp), %rax
leaq 0x24b85(%rip), %rcx     # 0x42388
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x80(%rbp)
subl $0x6, %eax
ja 0x1d908
movq -0x80(%rbp), %rax
leaq 0x24b78(%rip), %rcx     # 0x423a4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movb %al, %sil
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1a, %ecx
movzbl %sil, %edi
movzbl %al, %esi
callq 0x1ecb0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movl %ecx, %esi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1a, %ecx
movzbl %al, %edi
callq 0x1efa0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1a, %ecx
movzbl %al, %edi
callq 0x1f250
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movl %ecx, %esi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1a, %ecx
movzbl %al, %edi
callq 0x1f510
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1a, %ecx
movzbl %al, %edi
callq 0x1f7c0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1d90a
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x88(%rbp)
subl $0x6, %eax
ja 0x1da03
movq -0x88(%rbp), %rax
leaq 0x24a90(%rip), %rcx     # 0x423c0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1a, %ecx
movzbl %al, %esi
callq 0x1fa80
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x1fd50
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x1ffe0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x20290
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x20520
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1da05
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x90(%rbp)
subl $0x6, %eax
ja 0x1daf4
movq -0x90(%rbp), %rax
leaq 0x249b1(%rip), %rcx     # 0x423dc
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1a, %ecx
movzbl %al, %esi
callq 0x207d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x20ad0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x20db0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x21070
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x21340
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1daf6
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x98(%rbp)
subl $0x6, %eax
ja 0x1dbef
movq -0x98(%rbp), %rax
leaq 0x248dc(%rip), %rcx     # 0x423f8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1a, %ecx
movzbl %al, %esi
callq 0x21600
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x218d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x21b60
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x21e00
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x22090
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1dbf1
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xa0(%rbp)
subl $0x6, %eax
ja 0x1dce0
movq -0xa0(%rbp), %rax
leaq 0x247fd(%rip), %rcx     # 0x42414
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1a, %ecx
movzbl %al, %esi
callq 0x22330
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x22630
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x22910
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x22bd0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1a, %ecx
callq 0x22ea0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1dce2
jmp 0x1dce4
movl -0x28(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xa8(%rbp)
subl $0x6, %eax
ja 0x1e1ef
movq -0xa8(%rbp), %rax
leaq 0x24726(%rip), %rcx     # 0x42430
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xb0(%rbp)
subl $0x6, %eax
ja 0x1de15
movq -0xb0(%rbp), %rax
leaq 0x24713(%rip), %rcx     # 0x4244c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movb %al, %sil
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1b, %ecx
movzbl %sil, %edi
movzbl %al, %esi
callq 0x1ecb0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movl %ecx, %esi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1b, %ecx
movzbl %al, %edi
callq 0x1efa0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1b, %ecx
movzbl %al, %edi
callq 0x1f250
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movl %ecx, %esi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1b, %ecx
movzbl %al, %edi
callq 0x1f510
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1b, %ecx
movzbl %al, %edi
callq 0x1f7c0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1de17
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xb8(%rbp)
subl $0x6, %eax
ja 0x1df10
movq -0xb8(%rbp), %rax
leaq 0x2462b(%rip), %rcx     # 0x42468
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1b, %ecx
movzbl %al, %esi
callq 0x1fa80
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x1fd50
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x1ffe0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x20290
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x20520
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1df12
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xc0(%rbp)
subl $0x6, %eax
ja 0x1e001
movq -0xc0(%rbp), %rax
leaq 0x2454c(%rip), %rcx     # 0x42484
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1b, %ecx
movzbl %al, %esi
callq 0x207d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x20ad0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x20db0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x21070
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x21340
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1e003
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xc8(%rbp)
subl $0x6, %eax
ja 0x1e0fc
movq -0xc8(%rbp), %rax
leaq 0x24477(%rip), %rcx     # 0x424a0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1b, %ecx
movzbl %al, %esi
callq 0x21600
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x218d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x21b60
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x21e00
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x22090
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1e0fe
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xd0(%rbp)
subl $0x6, %eax
ja 0x1e1ed
movq -0xd0(%rbp), %rax
leaq 0x24398(%rip), %rcx     # 0x424bc
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x1b, %ecx
movzbl %al, %esi
callq 0x22330
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x22630
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x22910
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x22bd0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x1b, %ecx
callq 0x22ea0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1e1ef
jmp 0x1e1f1
movl -0x28(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xd8(%rbp)
subl $0x6, %eax
ja 0x1e6fc
movq -0xd8(%rbp), %rax
leaq 0x242c1(%rip), %rcx     # 0x424d8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xe0(%rbp)
subl $0x6, %eax
ja 0x1e322
movq -0xe0(%rbp), %rax
leaq 0x242ae(%rip), %rcx     # 0x424f4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movb %al, %sil
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x11, %ecx
movzbl %sil, %edi
movzbl %al, %esi
callq 0x1ecb0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movl %ecx, %esi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x11, %ecx
movzbl %al, %edi
callq 0x1efa0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x11, %ecx
movzbl %al, %edi
callq 0x1f250
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movl %ecx, %esi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x11, %ecx
movzbl %al, %edi
callq 0x1f510
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x11, %ecx
movzbl %al, %edi
callq 0x1f7c0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1e324
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xe8(%rbp)
subl $0x6, %eax
ja 0x1e41d
movq -0xe8(%rbp), %rax
leaq 0x241c6(%rip), %rcx     # 0x42510
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x11, %ecx
movzbl %al, %esi
callq 0x1fa80
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x1fd50
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x1ffe0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x20290
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x20520
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1e41f
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xf0(%rbp)
subl $0x6, %eax
ja 0x1e50e
movq -0xf0(%rbp), %rax
leaq 0x240e7(%rip), %rcx     # 0x4252c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x11, %ecx
movzbl %al, %esi
callq 0x207d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x20ad0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x20db0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x21070
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x21340
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1e510
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0xf8(%rbp)
subl $0x6, %eax
ja 0x1e609
movq -0xf8(%rbp), %rax
leaq 0x24012(%rip), %rcx     # 0x42548
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x11, %ecx
movzbl %al, %esi
callq 0x21600
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x218d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x21b60
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x21e00
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x22090
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1e60b
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x100(%rbp)
subl $0x6, %eax
ja 0x1e6fa
movq -0x100(%rbp), %rax
leaq 0x23f33(%rip), %rcx     # 0x42564
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x11, %ecx
movzbl %al, %esi
callq 0x22330
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x22630
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x22910
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x22bd0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x11, %ecx
callq 0x22ea0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1e6fc
jmp 0x1e6fe
movl -0x28(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x108(%rbp)
subl $0x6, %eax
ja 0x1ec09
movq -0x108(%rbp), %rax
leaq 0x23e5c(%rip), %rcx     # 0x42580
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x110(%rbp)
subl $0x6, %eax
ja 0x1e82f
movq -0x110(%rbp), %rax
leaq 0x23e49(%rip), %rcx     # 0x4259c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movb %al, %sil
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x12, %ecx
movzbl %sil, %edi
movzbl %al, %esi
callq 0x1ecb0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movl %ecx, %esi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x12, %ecx
movzbl %al, %edi
callq 0x1efa0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x12, %ecx
movzbl %al, %edi
callq 0x1f250
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rcx
movl %ecx, %esi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x12, %ecx
movzbl %al, %edi
callq 0x1f510
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x12, %ecx
movzbl %al, %edi
callq 0x1f7c0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1e831
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x118(%rbp)
subl $0x6, %eax
ja 0x1e92a
movq -0x118(%rbp), %rax
leaq 0x23d61(%rip), %rcx     # 0x425b8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x12, %ecx
movzbl %al, %esi
callq 0x1fa80
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x1fd50
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x1ffe0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x20290
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x20520
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1e92c
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x120(%rbp)
subl $0x6, %eax
ja 0x1ea1b
movq -0x120(%rbp), %rax
leaq 0x23c82(%rip), %rcx     # 0x425d4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x12, %ecx
movzbl %al, %esi
callq 0x207d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x20ad0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x20db0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x21070
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x21340
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1ea1d
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x128(%rbp)
subl $0x6, %eax
ja 0x1eb16
movq -0x128(%rbp), %rax
leaq 0x23bad(%rip), %rcx     # 0x425f0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x12, %ecx
movzbl %al, %esi
callq 0x21600
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x218d0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x21b60
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x21e00
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rax
movl %eax, %edi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x22090
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1eb18
movl -0x38(%rbp), %eax
addl $-0x2, %eax
movl %eax, %ecx
movq %rcx, -0x130(%rbp)
subl $0x6, %eax
ja 0x1ec07
movq -0x130(%rbp), %rax
leaq 0x23ace(%rip), %rcx     # 0x4260c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movq -0x18(%rbp), %rcx
movl 0x10(%rcx), %edx
movl $0x12, %ecx
movzbl %al, %esi
callq 0x22330
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x22630
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x22910
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rax
movl %eax, %esi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x22bd0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
movq -0x20(%rbp), %rdi
movq -0x30(%rbp), %rsi
movq -0x18(%rbp), %rax
movl 0x10(%rax), %edx
movl $0x12, %ecx
callq 0x22ea0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1ec09
jmp 0x1ec0b
cmpq $0x0, -0x20(%rbp)
setne %cl
cmpq $0x0, -0x30(%rbp)
setne %al
movzbl %cl, %edi
andl $0x1, %edi
movzbl %al, %esi
andl $0x1, %esi
movl $0x1c, %edx
callq 0x1d1f0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
cmpq $0x0, -0x20(%rbp)
setne %cl
cmpq $0x0, -0x30(%rbp)
setne %al
movzbl %cl, %edi
andl $0x1, %edi
movzbl %al, %esi
andl $0x1, %esi
movl $0x1d, %edx
callq 0x1d1f0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
cmpq $0x0, -0x20(%rbp)
setne %cl
cmpq $0x0, -0x30(%rbp)
setne %al
movzbl %cl, %edi
andl $0x1, %edi
movzbl %al, %esi
andl $0x1, %esi
movl $0x1e, %edx
callq 0x1d1f0
movl %eax, -0x10(%rbp)
movq %rdx, -0x8(%rbp)
jmp 0x1ec9a
jmp 0x1ec9a
movl -0x10(%rbp), %eax
movq -0x8(%rbp), %rdx
addq $0x130, %rsp            # imm = 0x130
popq %rbp
retq
nopw (%rax,%rax)