// File: /workspace/github_c_makefile_star2_O0/olcaytaner[P]Isell/dataset.c
// Function: save_names_file
void save_names_file(char* datasetname, char* namesfile)
{
 /*!Last Changed 19.02.2004 added C5.0 names type*/
 /*!Last Changed 27.10.2003*/
 int i, j, k;
 Datasetptr d;
 FILE* outfile;
 outfile = fopen(namesfile, "w");
 if (!outfile)
   return;
 d = search_dataset(Datasets, datasetname);
 switch (get_parameter_l("namestype"))
  {
   case NAMES_C50   :fprintf(outfile,"Feature%d.\n",d->classdefno + 1);
                     break;
   case NAMES_RIPPER:for (i = 0; i < d->classno-1; i++)
                       fprintf(outfile,"c%s,",d->classes[i]);
                     fprintf(outfile,"c%s.\n",d->classes[i]);
                     break;
   default          :printf(m1239, get_parameter_l("namestype"));
                     break;
  }
 k = 0;
 for (i = 0; i < d->featurecount; i++)
   if (get_parameter_l("namestype") == NAMES_C50 || d->features[i].type != CLASSDEF)
    {
     k++;
     fprintf(outfile,"Feature%d: ",k);
     switch (d->features[i].type)
      {
       case INTEGER :
       case REAL    :fprintf(outfile,"continuous");
                     break;
       case STRING  :
       case CLASSDEF:for (j = 0; j < d->features[i].valuecount-1; j++)
                       fprintf(outfile,"%s, ",d->features[i].strings[j]);
                     fprintf(outfile,"%s",d->features[i].strings[j]);
                     break;
      }
     fprintf(outfile,".\n");
    }
 fclose(outfile);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rdi
leaq 0xc5b13(%rip), %rsi     # 0xe81be
callq 0x40c0
movq %rax, -0x30(%rbp)
cmpq $0x0, -0x30(%rbp)
jne 0x226c0
jmp 0x22923
leaq 0xe3181(%rip), %rax     # 0x105848
movq (%rax), %rdi
movq -0x8(%rbp), %rsi
callq 0x1db80
movq %rax, -0x28(%rbp)
leaq 0xc1761(%rip), %rdi     # 0xe3e3f
callq 0x792b0
movl %eax, %ecx
movl %ecx, -0x34(%rbp)
testl %eax, %eax
je 0x226fb
jmp 0x226ee
movl -0x34(%rbp), %eax
subl $0x1, %eax
je 0x2271c
jmp 0x2277f
movq -0x30(%rbp), %rdi
movq -0x28(%rbp), %rax
movl 0x1407128(%rax), %edx
addl $0x1, %edx
leaq 0xc1736(%rip), %rsi     # 0xe3e49
movb $0x0, %al
callq 0x4280
jmp 0x2279b
movl $0x0, -0x14(%rbp)
movl -0x14(%rbp), %eax
movq -0x28(%rbp), %rcx
movl 0x10(%rcx), %ecx
subl $0x1, %ecx
cmpl %ecx, %eax
jge 0x2275e
movq -0x30(%rbp), %rdi
movq -0x28(%rbp), %rax
movslq -0x14(%rbp), %rcx
movq 0x18(%rax,%rcx,8), %rdx
leaq 0xc1709(%rip), %rsi     # 0xe3e55
movb $0x0, %al
callq 0x4280
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x22723
movq -0x30(%rbp), %rdi
movq -0x28(%rbp), %rax
movslq -0x14(%rbp), %rcx
movq 0x18(%rax,%rcx,8), %rdx
leaq 0xc16e4(%rip), %rsi     # 0xe3e5a
movb $0x0, %al
callq 0x4280
jmp 0x2279b
leaq 0xc16b9(%rip), %rdi     # 0xe3e3f
callq 0x792b0
movl %eax, %esi
leaq 0xc16cc(%rip), %rdi     # 0xe3e60
movb $0x0, %al
callq 0x4030
movl $0x0, -0x1c(%rbp)
movl $0x0, -0x14(%rbp)
movl -0x14(%rbp), %eax
movq -0x28(%rbp), %rcx
cmpl 0x1bc(%rcx), %eax
jge 0x2291a
leaq 0xc167c(%rip), %rdi     # 0xe3e3f
callq 0x792b0
cmpl $0x0, %eax
je 0x227ee
movq -0x28(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movslq -0x14(%rbp), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
cmpl $0x3, (%rax)
je 0x2290a
movl -0x1c(%rbp), %eax
incl %eax
movl %eax, -0x1c(%rbp)
movq -0x30(%rbp), %rdi
movl -0x1c(%rbp), %edx
leaq 0xc169e(%rip), %rsi     # 0xe3ea2
xorl %eax, %eax
callq 0x4280
movq -0x28(%rbp), %rax
movslq -0x14(%rbp), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
movl 0x30f08(%rax,%rcx), %eax
movq %rax, -0x40(%rbp)
subq $0x3, %rax
ja 0x228f8
movq -0x40(%rbp), %rax
leaq 0xc08da(%rip), %rcx     # 0xe3114
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x30(%rbp), %rdi
leaq 0xc1660(%rip), %rsi     # 0xe3eae
movb $0x0, %al
callq 0x4280
jmp 0x228f8
movl $0x0, -0x18(%rbp)
movl -0x18(%rbp), %eax
movq -0x28(%rbp), %rcx
addq $0x30f08, %rcx          # imm = 0x30F08
movslq -0x14(%rbp), %rdx
imulq $0x340, %rdx, %rdx      # imm = 0x340
addq %rdx, %rcx
movl 0x18(%rcx), %ecx
subl $0x1, %ecx
cmpl %ecx, %eax
jge 0x228c5
movq -0x30(%rbp), %rdi
movq -0x28(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movslq -0x14(%rbp), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movslq -0x18(%rbp), %rcx
movq 0x20(%rax,%rcx,8), %rdx
leaq 0xc1606(%rip), %rsi     # 0xe3eb9
movb $0x0, %al
callq 0x4280
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x22861
movq -0x30(%rbp), %rdi
movq -0x28(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movslq -0x14(%rbp), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movslq -0x18(%rbp), %rcx
movq 0x20(%rax,%rcx,8), %rdx
leaq 0xc21a7(%rip), %rsi     # 0xe4a98
movb $0x0, %al
callq 0x4280
movq -0x30(%rbp), %rdi
leaq 0xc2861(%rip), %rsi     # 0xe5164
movb $0x0, %al
callq 0x4280
jmp 0x2290c
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x227a9
movq -0x30(%rbp), %rdi
callq 0x4250
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax)