// File: /workspace/github_c_makefile_star2_O0/ugobas[P]tnm/dof_tnm.c
// Function: Select_axes_int
int Select_axes_int(int *skipped, struct axe *axes, int *N_axes, int start,
		    atom *atoms, int natoms, int MIN_INT)
{
  int n_skipped=0;
  int n=start, last=*N_axes-1, last_a, a, i;
  for(a=start; a<*N_axes; a++){
    struct axe *axe=axes+a;
    if(a<last){
      struct axe *next=axe+1;
      if(((next->type=='l')||(axe->type=='l')||(axe->type=='a'))&&
	 ((a+1)<last)){
	next++;
      }
      last_a=next->first_atom;
    }else{
      last_a=natoms;
    }
    int num_int=0;
    for(i=axe->first_atom; i< last_a; i++)num_int+=atoms[i].N_int;
    if((num_int >= MIN_INT)||(axe->rigid)){ //
      if(a!=n)axes[n]=*axe;
      n++;
    }else{
      printf("%c%d ", axe->type, a);
      skipped[n_skipped]=a;
      n_skipped++;
    }
  }
  *N_axes=n;
  return(n_skipped);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movl 0x10(%rbp), %eax
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movl %ecx, -0x1c(%rbp)
movq %r8, -0x28(%rbp)
movl %r9d, -0x2c(%rbp)
movl $0x0, -0x30(%rbp)
movl -0x1c(%rbp), %eax
movl %eax, -0x34(%rbp)
movq -0x18(%rbp), %rax
movl (%rax), %eax
subl $0x1, %eax
movl %eax, -0x38(%rbp)
movl -0x1c(%rbp), %eax
movl %eax, -0x40(%rbp)
movl -0x40(%rbp), %eax
movq -0x18(%rbp), %rcx
cmpl (%rcx), %eax
jge 0x1b1cb
movq -0x10(%rbp), %rax
movslq -0x40(%rbp), %rcx
imulq $0x158, %rcx, %rcx      # imm = 0x158
addq %rcx, %rax
movq %rax, -0x50(%rbp)
movl -0x40(%rbp), %eax
cmpl -0x38(%rbp), %eax
jge 0x1b105
movq -0x50(%rbp), %rax
addq $0x158, %rax            # imm = 0x158
movq %rax, -0x58(%rbp)
movq -0x58(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x6c, %eax
je 0x1b0e0
movq -0x50(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x6c, %eax
je 0x1b0e0
movq -0x50(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x61, %eax
jne 0x1b0f9
movl -0x40(%rbp), %eax
addl $0x1, %eax
cmpl -0x38(%rbp), %eax
jge 0x1b0f9
movq -0x58(%rbp), %rax
addq $0x158, %rax            # imm = 0x158
movq %rax, -0x58(%rbp)
movq -0x58(%rbp), %rax
movl 0x10(%rax), %eax
movl %eax, -0x3c(%rbp)
jmp 0x1b10b
movl -0x2c(%rbp), %eax
movl %eax, -0x3c(%rbp)
movl $0x0, -0x5c(%rbp)
movq -0x50(%rbp), %rax
movl 0x10(%rax), %eax
movl %eax, -0x44(%rbp)
movl -0x44(%rbp), %eax
cmpl -0x3c(%rbp), %eax
jge 0x1b147
movq -0x28(%rbp), %rax
movslq -0x44(%rbp), %rcx
imulq $0x70, %rcx, %rcx
addq %rcx, %rax
movl 0x60(%rax), %eax
addl -0x5c(%rbp), %eax
movl %eax, -0x5c(%rbp)
movl -0x44(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x44(%rbp)
jmp 0x1b11c
movl -0x5c(%rbp), %eax
cmpl 0x10(%rbp), %eax
jge 0x1b159
movq -0x50(%rbp), %rax
cmpl $0x0, 0x4(%rax)
je 0x1b18c
movl -0x40(%rbp), %eax
cmpl -0x34(%rbp), %eax
je 0x1b181
movq -0x10(%rbp), %rdi
movslq -0x34(%rbp), %rax
imulq $0x158, %rax, %rax      # imm = 0x158
addq %rax, %rdi
movq -0x50(%rbp), %rsi
movl $0x158, %edx            # imm = 0x158
callq 0x1160
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x1b1bb
movq -0x50(%rbp), %rax
movsbl (%rax), %esi
movl -0x40(%rbp), %edx
leaq 0x60869(%rip), %rdi     # 0x7ba06
movb $0x0, %al
callq 0x10d0
movl -0x40(%rbp), %edx
movq -0x8(%rbp), %rax
movslq -0x30(%rbp), %rcx
movl %edx, (%rax,%rcx,4)
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x1b1bd
movl -0x40(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x40(%rbp)
jmp 0x1b081
movl -0x34(%rbp), %ecx
movq -0x18(%rbp), %rax
movl %ecx, (%rax)
movl -0x30(%rbp), %eax
addq $0x60, %rsp
popq %rbp
retq
nopl (%rax)