// File: /workspace/github_c_makefile_star2_O0/ugobas[P]tnm/atoms.c
// Function: Atom_type
int Atom_type(char *name){
  if(init==0){
    num_BB=8;
    strcpy(BB_name[0],"N ");
    strcpy(BB_name[1],"CA");
    strcpy(BB_name[2],"C ");
    strcpy(BB_name[3],"CB");
    strcpy(BB_name[4],"O ");
    strcpy(BB_name[5],"CG");
    strcpy(BB_name[6],"OG");
    strcpy(BB_name[7],"SG");

    BB_length[0]=1.3301; BB_angle[0]=1.1091; // C-N,  CA-C-N
    BB_length[1]=1.4572; BB_angle[1]=1.0196; // N-CA, C-N-CA
    BB_length[2]=1.5236; BB_angle[2]=1.2018; // CA-C, N-CA-C
    BB_length[3]=1.5319; BB_angle[3]=1.2162; // CA-CB,N-CA-CB
    BB_length[4]=1.2316; BB_angle[4]=1.0359; // C-O,  CA-C-O


    init=1;
  }
  for(int i=0; i<num_BB; i++){
    if((name[0]==BB_name[i][0])&&(name[1]==BB_name[i][1]))
      return(i);
  }
  return(-1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
cmpl $0x0, 0x87fcd(%rip)     # 0x9c230
jne 0x143fa
leaq 0x77338(%rip), %rax     # 0x8b5a8
movl $0x8, (%rax)
leaq 0x78b73(%rip), %rdi     # 0x8cdf0
leaq 0x66da9(%rip), %rsi     # 0x7b02d
callq 0x1060
leaq 0x78b60(%rip), %rdi     # 0x8cdf0
addq $0x3, %rdi
leaq 0x6206d(%rip), %rsi     # 0x76308
callq 0x1060
leaq 0x78b49(%rip), %rdi     # 0x8cdf0
addq $0x6, %rdi
leaq 0x66d7e(%rip), %rsi     # 0x7b030
callq 0x1060
leaq 0x78b32(%rip), %rdi     # 0x8cdf0
addq $0x9, %rdi
leaq 0x62080(%rip), %rsi     # 0x76349
callq 0x1060
leaq 0x78b1b(%rip), %rdi     # 0x8cdf0
addq $0xc, %rdi
leaq 0x66d53(%rip), %rsi     # 0x7b033
callq 0x1060
leaq 0x78b04(%rip), %rdi     # 0x8cdf0
addq $0xf, %rdi
leaq 0x66e15(%rip), %rsi     # 0x7b10c
callq 0x1060
leaq 0x78aed(%rip), %rdi     # 0x8cdf0
addq $0x12, %rdi
leaq 0x66e01(%rip), %rsi     # 0x7b10f
callq 0x1060
leaq 0x78ad6(%rip), %rdi     # 0x8cdf0
addq $0x15, %rdi
leaq 0x66ded(%rip), %rsi     # 0x7b112
callq 0x1060
leaq 0x78adf(%rip), %rax     # 0x8ce10
movss 0x66dcf(%rip), %xmm0    # 0x7b108
movss %xmm0, (%rax)
leaq 0x78aec(%rip), %rax     # 0x8ce30
movss 0x66db8(%rip), %xmm0    # 0x7b104
movss %xmm0, (%rax)
leaq 0x78ab9(%rip), %rax     # 0x8ce10
movss 0x66da1(%rip), %xmm0    # 0x7b100
movss %xmm0, 0x4(%rax)
leaq 0x78ac5(%rip), %rax     # 0x8ce30
movss 0x66d89(%rip), %xmm0    # 0x7b0fc
movss %xmm0, 0x4(%rax)
leaq 0x78a91(%rip), %rax     # 0x8ce10
movss 0x66d71(%rip), %xmm0    # 0x7b0f8
movss %xmm0, 0x8(%rax)
leaq 0x78a9d(%rip), %rax     # 0x8ce30
movss 0x66d59(%rip), %xmm0    # 0x7b0f4
movss %xmm0, 0x8(%rax)
leaq 0x78a69(%rip), %rax     # 0x8ce10
movss 0x66d41(%rip), %xmm0    # 0x7b0f0
movss %xmm0, 0xc(%rax)
leaq 0x78a75(%rip), %rax     # 0x8ce30
movss 0x66d29(%rip), %xmm0    # 0x7b0ec
movss %xmm0, 0xc(%rax)
leaq 0x78a41(%rip), %rax     # 0x8ce10
movss 0x66d11(%rip), %xmm0    # 0x7b0e8
movss %xmm0, 0x10(%rax)
leaq 0x78a4d(%rip), %rax     # 0x8ce30
movss 0x66cf9(%rip), %xmm0    # 0x7b0e4
movss %xmm0, 0x10(%rax)
movl $0x1, 0x87e36(%rip)     # 0x9c230
movl $0x0, -0x14(%rbp)
movl -0x14(%rbp), %eax
leaq 0x7719d(%rip), %rcx     # 0x8b5a8
cmpl (%rcx), %eax
jge 0x14466
movq -0x10(%rbp), %rax
movsbl (%rax), %eax
movslq -0x14(%rbp), %rdx
leaq 0x789cf(%rip), %rcx     # 0x8cdf0
imulq $0x3, %rdx, %rdx
addq %rdx, %rcx
movsbl (%rcx), %ecx
cmpl %ecx, %eax
jne 0x14459
movq -0x10(%rbp), %rax
movsbl 0x1(%rax), %eax
movslq -0x14(%rbp), %rdx
leaq 0x789ae(%rip), %rcx     # 0x8cdf0
imulq $0x3, %rdx, %rdx
addq %rdx, %rcx
movsbl 0x1(%rcx), %ecx
cmpl %ecx, %eax
jne 0x14459
movl -0x14(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x1446d
jmp 0x1445b
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x14401
movl $0xffffffff, -0x4(%rbp) # imm = 0xFFFFFFFF
movl -0x4(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)