// File: /workspace/github_c_makefile_star2_O3/josch[P]stride/p_rem.c
// Function: Process_REMARK
int Process_REMARK(BUFFER Buffer, enum METHOD *Method, float *Resolution, BOOLEAN *DsspAssigned)
{
  char *Field[MAX_FIELD];
  int NFields;

  NFields = SplitString(Buffer,Field,10);
  
  if( NFields >= 5 &&  !strncmp(Field[2],"RESOLUTION",10) && 
      !strncmp(Field[4],"ANGSTROMS",9) && isdigit(*Field[3]) ) 
    *Resolution = atof(Field[3]);

  if( NFields >= 9 && !strcmp(Field[2],"THESE") && !strcmp(Field[3],"COORDINATES") &&
      !strcmp(Field[4],"WERE")  && !strcmp(Field[5],"GENERATED") &&
      !strcmp(Field[6],"FROM")  && !strcmp(Field[7],"SOLUTION") &&
      ( !strcmp(Field[8],"NMR") || !strcmp(Field[8],"/NMR$") ) ) *Method = NMR;

  if( strstr(Buffer,"SANDER ") || strstr(Buffer,"SANDER,") || strstr(Buffer,"SANDER:") || 
      strstr(Buffer,"SANDER;") || strstr(Buffer,"SANDER.") || strstr(Buffer,"SANDER(") || 
      strstr(Buffer,"SANDER)") || strstr(Buffer,"DSSP") )
    *DsspAssigned = YES;
  
  return(SUCCESS);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x198, %rsp            # imm = 0x198
movq %rcx, %rbx
movq %rdx, %r12
movq %rsi, %r15
movq %rdi, %r14
movq %rsp, %rsi
movl $0xa, %edx
callq 0x36c4
cmpl $0x5, %eax
jl 0xef7a
movl %eax, %ebp
movq 0x10(%rsp), %r13
leaq 0xb26f(%rip), %rsi      # 0x1a0d8
movl $0xa, %edx
movq %r13, %rdi
callq 0x2060
testl %eax, %eax
jne 0xeebb
movq 0x20(%rsp), %rdi
leaq 0xb25d(%rip), %rsi      # 0x1a0e3
movl $0x9, %edx
callq 0x2060
testl %eax, %eax
jne 0xeebb
callq 0x2290
movq (%rax), %rax
movq 0x18(%rsp), %rdi
movsbq (%rdi), %rcx
testb $0x8, 0x1(%rax,%rcx,2)
je 0xeebb
callq 0x2080
cvtsd2ss %xmm0, %xmm0
movss %xmm0, (%r12)
cmpl $0x9, %ebp
jb 0xef7a
leaq 0xb222(%rip), %rsi      # 0x1a0ed
movq %r13, %rdi
callq 0x2150
testl %eax, %eax
jne 0xef7a
movq 0x18(%rsp), %rdi
leaq 0xb20c(%rip), %rsi      # 0x1a0f3
callq 0x2150
testl %eax, %eax
jne 0xef7a
movq 0x20(%rsp), %rdi
leaq 0xb1ff(%rip), %rsi      # 0x1a0ff
callq 0x2150
testl %eax, %eax
jne 0xef7a
movq 0x28(%rsp), %rdi
leaq 0xb1ef(%rip), %rsi      # 0x1a104
callq 0x2150
testl %eax, %eax
jne 0xef7a
movq 0x30(%rsp), %rdi
leaq 0xb1e4(%rip), %rsi      # 0x1a10e
callq 0x2150
testl %eax, %eax
jne 0xef7a
movq 0x38(%rsp), %rdi
leaq 0xb19b(%rip), %rsi      # 0x1a0da
callq 0x2150
testl %eax, %eax
jne 0xef7a
movq 0x40(%rsp), %r12
leaq 0xb1bf(%rip), %rsi      # 0x1a113
movq %r12, %rdi
callq 0x2150
testl %eax, %eax
je 0xef73
leaq 0xb1b0(%rip), %rsi      # 0x1a117
movq %r12, %rdi
callq 0x2150
testl %eax, %eax
jne 0xef7a
movl $0x1, (%r15)
leaq 0xb19c(%rip), %rsi      # 0x1a11d
movq %r14, %rdi
callq 0x2270
testq %rax, %rax
jne 0xf01e
leaq 0xb18c(%rip), %rsi      # 0x1a125
movq %r14, %rdi
callq 0x2270
testq %rax, %rax
jne 0xf01e
leaq 0xb180(%rip), %rsi      # 0x1a12d
movq %r14, %rdi
callq 0x2270
testq %rax, %rax
jne 0xf01e
leaq 0xb174(%rip), %rsi      # 0x1a135
movq %r14, %rdi
callq 0x2270
testq %rax, %rax
jne 0xf01e
leaq 0xb168(%rip), %rsi      # 0x1a13d
movq %r14, %rdi
callq 0x2270
testq %rax, %rax
jne 0xf01e
leaq 0xb15c(%rip), %rsi      # 0x1a145
movq %r14, %rdi
callq 0x2270
testq %rax, %rax
jne 0xf01e
leaq 0xb150(%rip), %rsi      # 0x1a14d
movq %r14, %rdi
callq 0x2270
testq %rax, %rax
jne 0xf01e
leaq 0xbe6f(%rip), %rsi      # 0x1ae80
movq %r14, %rdi
callq 0x2270
testq %rax, %rax
je 0xf024
movl $0x1, (%rbx)
movl $0x1, %eax
addq $0x198, %rsp            # imm = 0x198
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
nop