// File: /workspace/github_cpp_makefile_star2_O3/ncbi[P]amr/seq.cpp
// Function: Seq_sp::codon2aa(char const*, unsigned char, bool)
char codon2aa (const char codon [3],
               Gencode gencode,
               bool lowercasePossibleStartCodon)
{
  char c [3];
  FOR (size_t, i, 3)
    c [i] = toLower (codon [i]);


  char aa = 'X';
  switch (c [0])
  {
    case 't':
     	switch (c [1])
   	  {
   	    case 't':
   	      switch (c [2])
      		{
      		  case 't': case 'c': case 'y': aa = 'F';
      		  Case 'a': case 'g': case 'r': aa = 'L';
      		}
   	    Case 'c':                         aa = 'S'; 
   	    Case 'a':
   	      switch (c [2])
      		{
      		  case 't': case 'c': case 'y': aa = 'Y';
      		  Case 'a': case 'g': case 'r': aa = *terminator;
      		}
   	    Case 'g':
   	      switch (c [2])
      		{
      		  case 't': case 'c': case 'y': aa = 'C';
      		  Case 'a': 
      		    switch (gencode)
      		    {
      		      case 4: case 25:          aa = 'W';
      		      Default:                  aa = *terminator;
      		    }
      		  Case 'g':                     aa = 'W';
      		}
   	    Case 'r':
   	      if (c [2] == 'a')          aa = *terminator;
   	  }
    Case 'c':
     	switch (c [1])
   	  {
   	    case 't':                         aa = 'L';
   	    Case 'c':                         aa = 'P';
   	    Case 'a':
   	      switch (c [2])
      		{
      		  case 't': case 'c': case 'y': aa = 'H';
      		  Case 'a': case 'g': case 'r': aa = 'Q';
      		}
   	    Case 'g':                         aa = 'R';
   	  }
    Case 'a':
     	switch (c [1])
   	  {
   	    case 't':
   	      switch (c [2])
      		{
      		  case 't': case 'c': case 'a':
      		  case 'y': case 'w': case 'm':
      		  case 'h':                     aa = 'I';
      		  Case 'g':                     aa = 'M'; 
      		}
   	    Case 'c':                         aa = 'T';
   	    Case 'a':
   	      switch (c [2])
      		{
      		  case 't': case 'c': case 'y': aa = 'N';
      		  Case 'a': case 'g': case 'r': aa = 'K';
      		}
   	    Case 'g':
   	      switch (c [2])
      		{
      		  case 't': case 'c': case 'y': aa = 'S';
      		  Case 'a': case 'g': case 'r': aa = 'R';
      		}
   	  }
    Case 'g':
     	switch (c [1])
   	  {
   	    case 't':                         aa = 'V';
   	    Case 'c':                         aa = 'A';
   	    Case 'a':
   	      switch (c [2])
      		{
      		  case 't': case 'c': case 'y': aa = 'D';
      		  Case 'a': case 'g': case 'r': aa = 'E';
      		}
   	    Case 'g':                         aa = 'G';
   	  }
    Case 'm':
      if (c [1] == 'g' &&
          charInSet (c [2], "agr"))  aa = 'R';
    Case 'r':
      if (c [1] == 'a' &&
          charInSet (c [2], "tcy"))  aa = 'B';
    Case 's':
      if (c [1] == 'a' &&
          charInSet (c [2], "agr"))  aa = 'Z';
    Case 'y':
      if (c [1] == 't' &&
          charInSet (c [2], "agr"))  aa = 'L';
  }
  ASSERT (charInSet (aa, extTermPeptideAlphabet));
  
  
  if (lowercasePossibleStartCodon)
  {
    bool startcodon = false;
    switch (gencode)
    {
      case  1: if (    c[0] == 'a' && c[1] == 't' && c[2] == 'g' )  startcodon = true;
      Case  4: if (   (               c[1] == 't' && c[2] == 'g')
                   || (c[0] == 'a' && c[1] == 't'               )
                   || (c[0] == 't' && c[1] == 't' && c[2] == 'a'))  startcodon = true;
      Case 11: if (                  (c[1] == 't' && c[2] == 'g')
                   || (c[0] == 'a' && c[1] == 't')               )  startcodon = true;  
      Case 25: if (    c[0] != 'c' && c[1] == 't' && c[2] == 'g' )  startcodon = true;
      Default: throw runtime_error (FUNC "Genetic code " + to_string ((int) gencode) + " is not implemented");
    }
    if (startcodon)
      aa = toLower (aa);
  }


  return aa;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x118, %rsp            # imm = 0x118
movl %edx, %ebx
movl %esi, %r13d
movq %rdi, %r14
xorl %r15d, %r15d
movsbl (%r14,%r15), %edi
callq 0xb840
movb %al, 0xd(%rsp,%r15)
incq %r15
cmpq $0x3, %r15
jne 0x6e56b
movb 0xd(%rsp), %bpl
movzbl %bpl, %eax
movb $0x58, %r14b
cmpl $0x6c, %eax
movl %ebx, 0x34(%rsp)
jg 0x6e5db
cmpl $0x61, %eax
je 0x6e666
cmpl $0x63, %eax
je 0x6e68e
cmpl $0x67, %eax
jne 0x6ea7a
movzbl 0xe(%rsp), %eax
cmpl $0x66, %eax
jg 0x6e8ad
cmpl $0x61, %eax
je 0x6e962
cmpl $0x63, %eax
jne 0x6ea7a
movb $0x41, %r14b
jmp 0x6ea7a
leal -0x72(%rax), %ecx
cmpl $0x7, %ecx
ja 0x6e6b6
leaq 0x298ae(%rip), %rax     # 0x97e9c
movslq (%rax,%rcx,4), %rcx
addq %rax, %rcx
jmpq *%rcx
cmpb $0x61, 0xe(%rsp)
jne 0x6ea7a
movsbl 0xf(%rsp), %r14d
leaq 0x20(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x29d54(%rip), %rsi     # 0x9836d
leaq 0x29d50(%rip), %rdx     # 0x98370
leaq 0x10(%rsp), %r15
movq %r15, %rdi
callq 0xdc76
movq %r15, %rdi
movl %r14d, %esi
xorl %edx, %edx
callq 0xb760
movq %rax, %r14
movq (%r15), %rdi
cmpq %r12, %rdi
je 0x6e652
movq 0x20(%rsp), %rsi
incq %rsi
callq 0xb5a0
cmpq $-0x1, %r14
movl $0x58, %eax
movl $0x42, %r14d
jmp 0x6e795
movzbl 0xe(%rsp), %eax
cmpl $0x66, %eax
jg 0x6e86b
cmpl $0x61, %eax
je 0x6e8f4
cmpl $0x63, %eax
jne 0x6ea7a
movb $0x54, %r14b
jmp 0x6ea7a
movzbl 0xe(%rsp), %eax
cmpl $0x66, %eax
jg 0x6e8c7
cmpl $0x61, %eax
je 0x6e99f
cmpl $0x63, %eax
jne 0x6ea7a
movb $0x50, %r14b
jmp 0x6ea7a
cmpl $0x6d, %eax
jne 0x6ea7a
cmpb $0x67, 0xe(%rsp)
jne 0x6ea7a
movsbl 0xf(%rsp), %r14d
leaq 0x20(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x29c88(%rip), %rsi     # 0x98369
leaq 0x29c84(%rip), %rdx     # 0x9836c
leaq 0x10(%rsp), %r15
movq %r15, %rdi
callq 0xdc76
movq %r15, %rdi
movl %r14d, %esi
xorl %edx, %edx
callq 0xb760
movq %rax, %r14
movq (%r15), %rdi
cmpq %r12, %rdi
je 0x6e71a
movq 0x20(%rsp), %rsi
incq %rsi
callq 0xb5a0
cmpq $-0x1, %r14
movl $0x58, %eax
movl $0x52, %r14d
jmp 0x6e795
cmpb $0x74, 0xe(%rsp)
jne 0x6ea7a
movsbl 0xf(%rsp), %r14d
leaq 0x20(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x29c1c(%rip), %rsi     # 0x98369
leaq 0x29c18(%rip), %rdx     # 0x9836c
leaq 0x10(%rsp), %r15
movq %r15, %rdi
callq 0xdc76
movq %r15, %rdi
movl %r14d, %esi
xorl %edx, %edx
callq 0xb760
movq %rax, %r14
movq (%r15), %rdi
cmpq %r12, %rdi
je 0x6e786
movq 0x20(%rsp), %rsi
incq %rsi
callq 0xb5a0
cmpq $-0x1, %r14
movl $0x58, %eax
movl $0x4c, %r14d
cmovel %eax, %r14d
jmp 0x6ea7a
cmpb $0x61, 0xe(%rsp)
jne 0x6ea7a
movsbl 0xf(%rsp), %r14d
leaq 0x20(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x29ba9(%rip), %rsi     # 0x98369
leaq 0x29ba5(%rip), %rdx     # 0x9836c
leaq 0x10(%rsp), %r15
movq %r15, %rdi
callq 0xdc76
movq %r15, %rdi
movl %r14d, %esi
xorl %edx, %edx
callq 0xb760
movq %rax, %r14
movq (%r15), %rdi
cmpq %r12, %rdi
je 0x6e7f9
movq 0x20(%rsp), %rsi
incq %rsi
callq 0xb5a0
cmpq $-0x1, %r14
setne %r14b
addb %r14b, %r14b
orb $0x58, %r14b
jmp 0x6ea7a
movzbl 0xe(%rsp), %eax
cmpl $0x66, %eax
jle 0x6e8e1
cmpl $0x67, %eax
je 0x6e9d4
cmpl $0x72, %eax
je 0x6e9f2
cmpl $0x74, %eax
jne 0x6ea7a
movzbl 0xf(%rsp), %eax
addl $-0x61, %eax
cmpl $0x18, %eax
ja 0x6ea7a
movl $0x20041, %ecx          # imm = 0x20041
btl %eax, %ecx
jb 0x6e8d9
movl $0x1080004, %ecx        # imm = 0x1080004
btl %eax, %ecx
jae 0x6ea7a
movb $0x46, %r14b
jmp 0x6ea7a
cmpl $0x67, %eax
je 0x6e929
cmpl $0x74, %eax
jne 0x6ea7a
movzbl 0xf(%rsp), %eax
leal -0x61(%rax), %ecx
cmpl $0x7, %ecx
jbe 0x6ea21
addl $-0x6d, %eax
cmpl $0xc, %eax
ja 0x6ea7a
movl $0x1481, %ecx           # imm = 0x1481
btl %eax, %ecx
jb 0x6ea31
jmp 0x6ea7a
cmpl $0x67, %eax
je 0x6e997
cmpl $0x74, %eax
jne 0x6ea7a
movb $0x56, %r14b
jmp 0x6ea7a
cmpl $0x67, %eax
je 0x6e95a
cmpl $0x74, %eax
jne 0x6ea7a
movb $0x4c, %r14b
jmp 0x6ea7a
cmpl $0x61, %eax
je 0x6e9fb
cmpl $0x63, %eax
je 0x6e952
jmp 0x6ea7a
movzbl 0xf(%rsp), %eax
addl $-0x61, %eax
cmpl $0x18, %eax
ja 0x6ea7a
movl $0x20041, %ecx          # imm = 0x20041
btl %eax, %ecx
jb 0x6ea36
movl $0x1080004, %ecx        # imm = 0x1080004
btl %eax, %ecx
jae 0x6ea7a
movb $0x4e, %r14b
jmp 0x6ea7a
movzbl 0xf(%rsp), %eax
addl $-0x61, %eax
cmpl $0x18, %eax
ja 0x6ea7a
movl $0x20041, %ecx          # imm = 0x20041
btl %eax, %ecx
jb 0x6e95a
movl $0x1080004, %ecx        # imm = 0x1080004
btl %eax, %ecx
jae 0x6ea7a
movb $0x53, %r14b
jmp 0x6ea7a
movb $0x52, %r14b
jmp 0x6ea7a
movzbl 0xf(%rsp), %eax
addl $-0x61, %eax
cmpl $0x18, %eax
ja 0x6ea7a
movl $0x20041, %ecx          # imm = 0x20041
btl %eax, %ecx
jb 0x6ea3b
movl $0x1080004, %ecx        # imm = 0x1080004
btl %eax, %ecx
jae 0x6ea7a
movb $0x44, %r14b
jmp 0x6ea7a
movb $0x47, %r14b
jmp 0x6ea7a
movzbl 0xf(%rsp), %eax
addl $-0x61, %eax
cmpl $0x18, %eax
ja 0x6ea7a
movl $0x20041, %ecx          # imm = 0x20041
btl %eax, %ecx
jb 0x6ea40
movl $0x1080004, %ecx        # imm = 0x1080004
btl %eax, %ecx
jae 0x6ea7a
movb $0x48, %r14b
jmp 0x6ea7a
movzbl 0xf(%rsp), %eax
cmpl $0x66, %eax
jle 0x6ea45
cmpl $0x67, %eax
je 0x6ea59
cmpl $0x79, %eax
je 0x6ea4f
cmpl $0x74, %eax
je 0x6ea4f
jmp 0x6ea7a
cmpb $0x61, 0xf(%rsp)
je 0x6ea70
jmp 0x6ea7a
movzbl 0xf(%rsp), %eax
addl $-0x61, %eax
cmpl $0x18, %eax
ja 0x6ea7a
movl $0x20041, %ecx          # imm = 0x20041
btl %eax, %ecx
jb 0x6ea70
movl $0x1080004, %ecx        # imm = 0x1080004
btl %eax, %ecx
jae 0x6ea7a
movb $0x59, %r14b
jmp 0x6ea7a
leaq 0x29494(%rip), %rax     # 0x97ebc
movslq (%rax,%rcx,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movb $0x49, %r14b
jmp 0x6ea7a
movb $0x4b, %r14b
jmp 0x6ea7a
movb $0x45, %r14b
jmp 0x6ea7a
movb $0x51, %r14b
jmp 0x6ea7a
cmpl $0x61, %eax
je 0x6ea5e
cmpl $0x63, %eax
jne 0x6ea7a
movb $0x43, %r14b
jmp 0x6ea7a
movb $0x4d, %r14b
jmp 0x6ea7a
movb $0x57, %r14b
jmp 0x6ea7a
movb $0x57, %r14b
cmpb $0x4, %r13b
je 0x6ea7a
movzbl %r13b, %eax
cmpl $0x19, %eax
je 0x6ea7a
movq 0x4b169(%rip), %rax     # 0xb9be0
movb (%rax), %r14b
movl %r13d, %ebx
callq 0xb070
movl $0x0, (%rax)
movq 0x4b159(%rip), %rsi     # 0xb9be8
leaq 0x10(%rsp), %r13
leaq 0x98(%rsp), %rdx
movq %r13, %rdi
callq 0x40b7c
movsbl %r14b, %r15d
movq %r13, %rdi
movl %r15d, %esi
xorl %edx, %edx
callq 0xb760
movq %rax, %r12
movq (%r13), %rdi
leaq 0x20(%rsp), %r13
cmpq %r13, %rdi
je 0x6ead3
movq 0x20(%rsp), %rsi
incq %rsi
callq 0xb5a0
cmpq $-0x1, %r12
je 0x6eba3
cmpb $0x0, 0x34(%rsp)
je 0x6eb6d
movzbl %bl, %ebx
cmpl $0xa, %ebx
jg 0x6eb38
cmpl $0x1, %ebx
je 0x6eb4e
cmpl $0x4, %ebx
jne 0x6ec3c
movb 0xe(%rsp), %cl
movb 0xf(%rsp), %al
cmpb $0x74, %cl
sete %dl
cmpb $0x67, %al
sete %sil
andb %dl, %sil
cmpb $0x61, %bpl
sete %dil
andb %dl, %dil
orb %sil, %dil
jne 0x6eb62
xorb $0x74, %cl
xorb $0x74, %bpl
orb %cl, %bpl
xorb $0x61, %al
orb %bpl, %al
je 0x6eb62
jmp 0x6eb6d
cmpl $0xb, %ebx
je 0x6eb82
cmpl $0x19, %ebx
jne 0x6ec3c
cmpb $0x63, %bpl
jne 0x6eb54
jmp 0x6eb6d
cmpb $0x61, %bpl
jne 0x6eb6d
cmpb $0x74, 0xe(%rsp)
jne 0x6eb6d
cmpb $0x67, 0xf(%rsp)
jne 0x6eb6d
movl %r15d, %edi
callq 0xb840
movl %eax, %r14d
movl %r14d, %eax
addq $0x118, %rsp            # imm = 0x118
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
cmpb $0x74, 0xe(%rsp)
sete %al
cmpb $0x67, 0xf(%rsp)
sete %cl
cmpb $0x61, %bpl
sete %dl
testb %al, %dl
jne 0x6eb62
andb %cl, %al
je 0x6eb6d
jmp 0x6eb62
callq 0xb6b0
testl %eax, %eax
jne 0x6ec32
leaq 0x88(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x2948f(%rip), %rsi     # 0x98052
leaq 0x29498(%rip), %rdx     # 0x98062
leaq 0x78(%rsp), %rdi
callq 0xdc76
leaq 0xf8(%rsp), %rdi
movl $0x52e, %esi            # imm = 0x52E
callq 0xe1b2
leaq 0x58(%rsp), %rdi
leaq 0x78(%rsp), %rsi
leaq 0xf8(%rsp), %rdx
callq 0xe10a
leaq 0x245cd(%rip), %rsi     # 0x931d1
leaq 0x58(%rsp), %rdi
callq 0xbb10
leaq 0x48(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x6eca5
movups (%rcx), %xmm0
movups %xmm0, (%r15)
jmp 0x6ecb2
movl $0x1, %edi
callq 0xb6d0
movl $0x10, %edi
callq 0xb2d0
movq %rax, %r14
leaq 0x68(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x29718(%rip), %rsi     # 0x98371
leaq 0x29743(%rip), %rdx     # 0x983a3
leaq 0x58(%rsp), %rdi
callq 0xdc76
leaq 0x2975a(%rip), %rsi     # 0x983cb
leaq 0x58(%rsp), %rdi
callq 0xbb10
leaq 0x48(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x6ed31
movups (%rcx), %xmm0
movups %xmm0, (%r12)
jmp 0x6ed3e
movq %rdx, 0x38(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x48(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x40(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0xe8(%rsp), %r12
movq %r12, -0x10(%r12)
leaq 0x29693(%rip), %rsi     # 0x98371
leaq 0x296be(%rip), %rdx     # 0x983a3
leaq 0xd8(%rsp), %rdi
callq 0xdc76
leaq 0x24bb8(%rip), %rsi     # 0x938b1
leaq 0xd8(%rsp), %rdi
callq 0xbb10
leaq 0xc8(%rsp), %rbp
movq %rbp, -0x10(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x6edb2
movups (%rcx), %xmm0
movups %xmm0, (%rbp)
jmp 0x6edc5
movq %rdx, 0x38(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x48(%rsp)
movq 0x8(%rax), %rdx
movq %rdx, 0x40(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x78(%rsp), %rdi
movl %ebx, %esi
callq 0xe1b2
leaq 0x98(%rsp), %rdi
leaq 0x38(%rsp), %rsi
leaq 0x78(%rsp), %rdx
callq 0xe10a
leaq 0x243c5(%rip), %rsi     # 0x93145
leaq 0x98(%rsp), %rdi
callq 0xbb10
movq %r13, 0x10(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x6ee28
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x6ee35
movq %rdx, 0xb8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xc8(%rsp)
movq 0x8(%rax), %rsi
leaq 0xb8(%rsp), %rdx
movq %rsi, 0x8(%rdx)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x98(%rsp), %rdi
leaq 0x38(%rsp), %rsi
callq 0xe10a
leaq 0x295a7(%rip), %rsi     # 0x983a4
leaq 0x98(%rsp), %rdi
callq 0xbb10
movq %r13, 0x10(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x6ee74
movups (%rcx), %xmm0
movups %xmm0, (%r13)
jmp 0x6ee81
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
movq 0x8(%rax), %rdx
leaq 0x10(%rsp), %rsi
movq %rdx, 0x8(%rsi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movb $0x1, %bpl
movq %r14, %rdi
callq 0xb960
xorl %ebp, %ebp
movq 0x4a18b(%rip), %rsi     # 0xb8ff0
movq 0x4a104(%rip), %rdx     # 0xb8f70
movq %r14, %rdi
callq 0xba00
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
movq 0x8(%rax), %rdx
leaq 0x10(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x1155a
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
je 0x6eec1
movq 0x20(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6eec1
movq %rax, %rbx
leaq 0xa8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6ef2c
movq 0xa8(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6ef2c
movq %rax, %rbx
movq 0x10(%rsp), %rdi
cmpq %r13, %rdi
je 0x6ef06
movq 0x20(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6ef06
movq %rax, %rbx
movb $0x1, %bpl
leaq 0xa8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6ef51
movq 0xa8(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6ef51
movq %rax, %rbx
movq 0xb8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x6ef77
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6ef77
movq %rax, %rbx
movb $0x1, %bpl
leaq 0x88(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6ef9c
movq 0x88(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6ef9c
movq %rax, %rbx
movq 0xd8(%rsp), %rdi
cmpq %r12, %rdi
je 0x6efd7
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6efd7
movq %rax, %rbx
movb $0x1, %bpl
movq 0x38(%rsp), %rdi
cmpq %r12, %rdi
je 0x6efb3
movq 0x48(%rsp), %rsi
incq %rsi
callq 0xb5a0
movq 0x58(%rsp), %rdi
cmpq %r15, %rdi
je 0x6efca
movq 0x68(%rsp), %rsi
incq %rsi
callq 0xb5a0
testb %bpl, %bpl
jne 0x6f02f
jmp 0x6f081
movq %rax, %rbx
movq 0x38(%rsp), %rdi
cmpq %r15, %rdi
je 0x6f00f
movq 0x48(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6f00f
movq %rax, %rbx
movq 0x58(%rsp), %rdi
cmpq %r15, %rdi
je 0x6f02f
movq 0x68(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6f02f
movq %rax, %rbx
leaq 0x68(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6f03c
movq 0x68(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6f03c
movq %rax, %rbx
movq %r14, %rdi
callq 0xb440
jmp 0x6f081
movq %rax, %rbx
leaq 0x108(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x6f062
movq 0x108(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6f062
movq %rax, %rbx
movq 0x78(%rsp), %rdi
cmpq %r14, %rdi
je 0x6f081
movq 0x88(%rsp), %rsi
incq %rsi
callq 0xb5a0
jmp 0x6f081
movq %rax, %rbx
movq %rbx, %rdi
callq 0xba60
nop