// File: /workspace/github_c_makefile_star2_O0/ugobas[P]tnm/simulation.c
// Function: Print_PDB
void Print_PDB(FILE *file_out, atom *atoms, int natoms, float *atom_str3,
	       struct residue *seq, int k, float rmsd)
{
  int i, ij=0, j=0; atom *atom1=atoms;
  char aaname3[10]; for(i=0; i<4; i++)aaname3[i]='\0';
  if(k>=0)fprintf(file_out, "MODEL %d RMSD from PDB= %.3f\n", k, rmsd);
  for(i=0; i<natoms; i++){
    //ALIGN
    if(atom1->ali<0){atom1++; continue;}
    int res=atom1->res; Name3(aaname3,seq[res].i_aa);
    if(j < 99999)j++;
    fprintf(file_out,
	    "ATOM  %5d  %3s %3s %c%4s    %8.3f%8.3f%8.3f%6.2f%6.2f\n",
	    j,atom1->name,aaname3,seq[res].chain, seq[res].pdbres,
	    atom_str3[ij],atom_str3[ij+1],atom_str3[ij+2],1.0,
	    atom1->B_factor);
    ij+=3;
    atom1++;
  }
  fprintf(file_out, "ENDMDL\n");
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movq %rcx, -0x20(%rbp)
movq %r8, -0x28(%rbp)
movl %r9d, -0x2c(%rbp)
movss %xmm0, -0x30(%rbp)
movl $0x0, -0x38(%rbp)
movl $0x0, -0x3c(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x48(%rbp)
movl $0x0, -0x34(%rbp)
cmpl $0x4, -0x34(%rbp)
jge 0x49abb
movslq -0x34(%rbp), %rax
movb $0x0, -0x52(%rbp,%rax)
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x49aa1
cmpl $0x0, -0x2c(%rbp)
jl 0x49adf
movq -0x8(%rbp), %rdi
movl -0x2c(%rbp), %edx
movss -0x30(%rbp), %xmm0
cvtss2sd %xmm0, %xmm0
leaq 0x3666d(%rip), %rsi     # 0x80145
movb $0x1, %al
callq 0x1150
movl $0x0, -0x34(%rbp)
movl -0x34(%rbp), %eax
cmpl -0x14(%rbp), %eax
jge 0x49c0d
movq -0x48(%rbp), %rax
cmpl $0x0, 0x54(%rax)
jge 0x49b0d
movq -0x48(%rbp), %rax
addq $0x70, %rax
movq %rax, -0x48(%rbp)
jmp 0x49bff
movq -0x48(%rbp), %rax
movl 0x64(%rax), %eax
movl %eax, -0x58(%rbp)
leaq -0x52(%rbp), %rdi
movq -0x28(%rbp), %rax
movslq -0x58(%rbp), %rcx
shlq $0x5, %rcx
addq %rcx, %rax
movswl 0x14(%rax), %esi
callq 0x37330
cmpl $0x1869f, -0x3c(%rbp)   # imm = 0x1869F
jge 0x49b45
movl -0x3c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x3c(%rbp)
movq -0x8(%rbp), %rdi
movl -0x3c(%rbp), %edx
movq -0x48(%rbp), %rcx
addq $0x18, %rcx
leaq -0x52(%rbp), %r8
movq -0x28(%rbp), %rax
movslq -0x58(%rbp), %rsi
shlq $0x5, %rsi
addq %rsi, %rax
movsbl 0xc(%rax), %r9d
movq -0x28(%rbp), %rax
movslq -0x58(%rbp), %rsi
shlq $0x5, %rsi
addq %rsi, %rax
addq $0xd, %rax
movq -0x20(%rbp), %rsi
movslq -0x38(%rbp), %r10
movss (%rsi,%r10,4), %xmm0
cvtss2sd %xmm0, %xmm0
movq -0x20(%rbp), %rsi
movl -0x38(%rbp), %r10d
addl $0x1, %r10d
movslq %r10d, %r10
movss (%rsi,%r10,4), %xmm1
cvtss2sd %xmm1, %xmm1
movq -0x20(%rbp), %rsi
movl -0x38(%rbp), %r10d
addl $0x2, %r10d
movslq %r10d, %r10
movss (%rsi,%r10,4), %xmm2
cvtss2sd %xmm2, %xmm2
movq -0x48(%rbp), %rsi
movss 0x1c(%rsi), %xmm3
cvtss2sd %xmm3, %xmm4
leaq 0x3658c(%rip), %rsi     # 0x80163
movsd 0x2c469(%rip), %xmm3    # 0x76048
movq %rax, (%rsp)
movb $0x5, %al
callq 0x1150
movl -0x38(%rbp), %eax
addl $0x3, %eax
movl %eax, -0x38(%rbp)
movq -0x48(%rbp), %rax
addq $0x70, %rax
movq %rax, -0x48(%rbp)
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x49ae6
movq -0x8(%rbp), %rdi
leaq 0x3484c(%rip), %rsi     # 0x7e464
movb $0x0, %al
callq 0x1150
addq $0x60, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)