// File: ncbi[P]amr/seq.cpp
// Function: Seq_sp::aa2num(char)
size_t aa2num (char wildAminoacid)
{
  const char c = toUpper (wildAminoacid);

  size_t i = 0;
  for (const char* a = peptideAlphabet; *a; a++)
    if (c == *a)
      return i;
    else
    	i++;
  if (wildAminoacid == *terminator)
    return 20;
  if (isAmbigAa (c))
    return 21;

  NEVER_CALL;
}

// Assembly:
subq $0x158, %rsp            # imm = 0x158
movb %dil, %al
movb %al, 0x14f(%rsp)
movsbl 0x14f(%rsp), %edi
callq 0x4cae0
movb %al, 0x14e(%rsp)
movq $0x0, 0x140(%rsp)
movq 0x658d8(%rip), %rax     # 0x120bf0
movq %rax, 0x138(%rsp)
movq 0x138(%rsp), %rax
cmpb $0x0, (%rax)
je 0xbb385
movsbl 0x14e(%rsp), %eax
movq 0x138(%rsp), %rcx
movsbl (%rcx), %ecx
cmpl %ecx, %eax
jne 0xbb359
movq 0x140(%rsp), %rax
movq %rax, 0x150(%rsp)
jmp 0xbb633
movq 0x140(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x140(%rsp)
jmp 0xbb36f
movq 0x138(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x138(%rsp)
jmp 0xbb320
movsbl 0x14f(%rsp), %eax
movq 0x65a0c(%rip), %rcx     # 0x120da0
movsbl (%rcx), %ecx
cmpl %ecx, %eax
jne 0xbb3ac
movq $0x14, 0x150(%rsp)
jmp 0xbb633
movsbl 0x14e(%rsp), %edi
callq 0xd8470
testb $0x1, %al
jne 0xbb3bf
jmp 0xbb3d0
movq $0x15, 0x150(%rsp)
jmp 0xbb633
callq 0xd8c0
cmpl $0x0, %eax
jne 0xbb629
leaq 0x97(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0xdd50
movq 0x10(%rsp), %rdx
leaq 0x2d04a(%rip), %rsi     # 0xe8446
leaq 0x98(%rsp), %rdi
callq 0xfae0
jmp 0xbb40b
leaq 0x60(%rsp), %rdi
movl $0xd7c, %esi            # imm = 0xD7C
callq 0x11600
jmp 0xbb41c
leaq 0xb8(%rsp), %rdi
leaq 0x98(%rsp), %rsi
leaq 0x60(%rsp), %rdx
callq 0x11510
jmp 0xbb438
leaq 0x27d92(%rip), %rdx     # 0xe31d1
leaq 0xd8(%rsp), %rdi
leaq 0xb8(%rsp), %rsi
callq 0x114c0
jmp 0xbb456
leaq 0x1f(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0xdd50
movq 0x8(%rsp), %rdx
leaq 0x2db0a(%rip), %rsi     # 0xe8f7b
leaq 0x20(%rsp), %rdi
callq 0xfae0
jmp 0xbb47d
leaq 0x28520(%rip), %rdx     # 0xe39a4
leaq 0x40(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x114c0
jmp 0xbb495
leaq 0xf8(%rsp), %rdi
leaq 0xd8(%rsp), %rsi
leaq 0x40(%rsp), %rdx
callq 0x11510
jmp 0xbb4b1
leaq 0x2866b(%rip), %rdx     # 0xe3b23
leaq 0x118(%rsp), %rdi
leaq 0xf8(%rsp), %rsi
callq 0x114c0
jmp 0xbb4cf
leaq 0x118(%rsp), %rdi
callq 0x173d0
jmp 0xbb4de
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
jmp 0xbb61a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
jmp 0xbb60d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
jmp 0xbb603
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
jmp 0xbb5f6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
jmp 0xbb5df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
jmp 0xbb5d5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
jmp 0xbb5cb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
jmp 0xbb5be
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x88(%rsp)
movl %eax, 0x84(%rsp)
leaq 0x118(%rsp), %rdi
callq 0xdf08
leaq 0xf8(%rsp), %rdi
callq 0xdf08
leaq 0x40(%rsp), %rdi
callq 0xdf08
leaq 0x20(%rsp), %rdi
callq 0xdf08
leaq 0x1f(%rsp), %rdi
callq 0xd7a0
leaq 0xd8(%rsp), %rdi
callq 0xdf08
leaq 0xb8(%rsp), %rdi
callq 0xdf08
leaq 0x60(%rsp), %rdi
callq 0xdf08
leaq 0x98(%rsp), %rdi
callq 0xdf08
leaq 0x97(%rsp), %rdi
callq 0xd7a0
jmp 0xbb643
movl $0x1, %edi
callq 0xd8e0
movq 0x150(%rsp), %rax
addq $0x158, %rsp            # imm = 0x158
retq
movq 0x88(%rsp), %rdi
callq 0xdd40