// File: /workspace/github_c_makefile_star2_O0/ugobas[P]tnm/nma.c
// Function: Selection
int Selection (char *atom_name, atom *atom, char *SEL){
  if(strncmp(SEL, "ALL", 2)==0){               // All atoms
    if((atom_name[0]=='H')&&(HYD_REF==0)){return(0);}
    else{return(1);}
  }else if(strncmp(SEL, "CB", 2)==0){          // CB
    if(strncmp(atom_name,"CB",2)==0)return(1);
    if((atom->aa=='G')&&(strncmp(atom_name,"CA",2)==0))
      return(1);
  }else if(strncmp(atom_name,"CA",2)==0){      // CA or BB or EB
    return(1);
  }else if(strncmp(SEL, "BB", 2)==0){          // BB: N-CA-C
    if(strncmp(atom_name,"N ",2)==0)return(1);
    if(strncmp(atom_name,"C ",2)==0)return(1);
  }else if(strncmp(SEL, "EB", 2)==0){          // EB: N-CA-CB-C-O
    if(strncmp(atom_name,"N ",2)==0)return(1);
    if(strncmp(atom_name,"C ",2)==0)return(1);
    if(strncmp(atom_name,"O ",2)==0)return(1);
    if(strncmp(atom_name,"CB",2)==0)return(1);
  }
  return(0);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq -0x20(%rbp), %rdi
leaq 0x3ef54(%rip), %rsi     # 0x76303
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x373ee
movq -0x10(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x48, %eax
jne 0x373e2
leaq 0x54c53(%rip), %rax     # 0x8c024
cmpl $0x0, (%rax)
jne 0x373e2
movl $0x0, -0x4(%rbp)
jmp 0x375b2
movl $0x1, -0x4(%rbp)
jmp 0x375b2
movq -0x20(%rbp), %rdi
leaq 0x3ef50(%rip), %rsi     # 0x76349
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x37466
movq -0x10(%rbp), %rdi
leaq 0x3ef36(%rip), %rsi     # 0x76349
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x3742e
movl $0x1, -0x4(%rbp)
jmp 0x375b2
movq -0x18(%rbp), %rax
movsbl 0x68(%rax), %eax
cmpl $0x47, %eax
jne 0x37461
movq -0x10(%rbp), %rdi
leaq 0x3eec2(%rip), %rsi     # 0x76308
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x37461
movl $0x1, -0x4(%rbp)
jmp 0x375b2
jmp 0x375a9
movq -0x10(%rbp), %rdi
leaq 0x3ee97(%rip), %rsi     # 0x76308
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x3748c
movl $0x1, -0x4(%rbp)
jmp 0x375b2
movq -0x20(%rbp), %rdi
leaq 0x40d34(%rip), %rsi     # 0x781cb
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x374f7
movq -0x10(%rbp), %rdi
leaq 0x43b7c(%rip), %rsi     # 0x7b02d
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x374cc
movl $0x1, -0x4(%rbp)
jmp 0x375b2
movq -0x10(%rbp), %rdi
leaq 0x43b59(%rip), %rsi     # 0x7b030
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x374f2
movl $0x1, -0x4(%rbp)
jmp 0x375b2
jmp 0x375a5
movq -0x20(%rbp), %rdi
leaq 0x3eeea(%rip), %rsi     # 0x763ec
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x375a3
movq -0x10(%rbp), %rdi
leaq 0x43b0d(%rip), %rsi     # 0x7b02d
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x37538
movl $0x1, -0x4(%rbp)
jmp 0x375b2
movq -0x10(%rbp), %rdi
leaq 0x43aed(%rip), %rsi     # 0x7b030
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x3755b
movl $0x1, -0x4(%rbp)
jmp 0x375b2
movq -0x10(%rbp), %rdi
leaq 0x43acd(%rip), %rsi     # 0x7b033
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x3757e
movl $0x1, -0x4(%rbp)
jmp 0x375b2
movq -0x10(%rbp), %rdi
leaq 0x3edc0(%rip), %rsi     # 0x76349
movl $0x2, %edx
callq 0x1050
cmpl $0x0, %eax
jne 0x375a1
movl $0x1, -0x4(%rbp)
jmp 0x375b2
jmp 0x375a3
jmp 0x375a5
jmp 0x375a7
jmp 0x375a9
jmp 0x375ab
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax,%rax)