// File: /workspace/github_c_makefile_star2_O0/olcaytaner[P]Isell/process.c
// Function: export_all_two_class_problems
void export_all_two_class_problems(Datasetptr d, char* inifile)
{
/*!Last Changed 09.01.2009*/
 int i, j, k, p, classno = d->classno, tmpcount = d->datacount, tmpclasscounts[MAXCLASSES];
 char tmpname[READLINELENGTH];
 char tmpcommand[READLINELENGTH];
 char backupname[READLINELENGTH];
 char backupdirectory[READLINELENGTH];
 char backupclasses[MAXCLASSES][READLINELENGTH];
 char backupvalues[MAXCLASSES][READLINELENGTH];
 char* fname;
 char* dname;
 FILE* datafile;
 FILE* xmlfile;
 get_prior_information();
 read_train_lines();
 k = 0;
 strcpy(backupname, d->name);
 safe_free(d->name);
 strcpy(backupdirectory, d->directory);
 safe_free(d->directory);
 for (i = 0; i < classno; i++)
  {
   tmpclasscounts[i] = d->classcounts[i];
   strcpy(backupclasses[i], d->classes[i]);
   safe_free(d->classes[i]);
   strcpy(backupvalues[i], d->features[d->classdefno].strings[i]);
   safe_free(d->features[d->classdefno].strings[i]);
  }
 d->classno = 2;
 d->features[d->classdefno].valuecount = 2;
 xmlfile = fopen(inifile, "w");
 fprintf(xmlfile, "<datasets>\n");
 for (i = 0; i < classno; i++)
   for (j = i + 1; j < classno; j++)
    {
     k++;
     sprintf(tmpname, "%s%d", backupname, k);
     d->name = strcopy(d->name, tmpname);
     d->datacount = tmpclasscounts[i] + tmpclasscounts[j];
     d->classcounts[0] = tmpclasscounts[i];
     d->classcounts[1] = tmpclasscounts[j];
     sprintf(tmpname, "%s%d", backupdirectory, k);
     d->directory = strcopy(d->directory, tmpname);
     d->classes[0] = strcopy(d->classes[0], backupclasses[i]);
     d->classes[1] = strcopy(d->classes[1], backupclasses[j]);
     d->features[d->classdefno].strings[0] = strcopy(d->features[d->classdefno].strings[0], backupvalues[i]);
     d->features[d->classdefno].strings[1] = strcopy(d->features[d->classdefno].strings[1], backupvalues[j]);
     dname = dataset_directory_name(d);
     sprintf(tmpcommand, "mkdir %s", dname);
     safe_free(dname);
     system(tmpcommand);
     save_definitions_of_dataset_as_xml(xmlfile, d);
     fname = dataset_file_name(d);
     datafile = fopen(fname, "w");
     for (p = 0; p < trainlinecount; p++)
       if (prior_class_information[p] == i || prior_class_information[p] == j)
         fprintf(datafile, "%s", trainlines[p]);
     fclose(datafile);
     safe_free(fname);
     safe_free(d->name);
     safe_free(d->directory);
     safe_free(d->classes[0]);
     safe_free(d->classes[1]);
     safe_free(d->features[d->classdefno].strings[0]);
     safe_free(d->features[d->classdefno].strings[1]);
    }
 fprintf(xmlfile, "</datasets>\n");
 fclose(xmlfile);
 d->datacount = tmpcount;
 d->classno = classno;
 d->features[d->classdefno].valuecount = d->classno;
 d->name = strcopy(d->name, backupname);
 d->directory = strcopy(d->directory, backupdirectory);
 for (i = 0; i < classno; i++)
  {
   d->classcounts[i] = tmpclasscounts[i];
   d->classes[i] = strcopy(d->classes[i], backupclasses[i]);
   d->features[d->classdefno].strings[i] = strcopy(d->features[d->classdefno].strings[i], backupvalues[i]);
  }
 free_train_and_test_lines();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x3197610, %rsp        # imm = 0x3197610
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movl 0x10(%rax), %eax
movl %eax, -0x24(%rbp)
movq -0x8(%rbp), %rax
movl 0x1407120(%rax), %eax
movl %eax, -0x28(%rbp)
callq 0x86430
callq 0x8b0b0
movl $0x0, -0x1c(%rbp)
leaq -0x16e450(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rsi
callq 0x4220
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdi
callq 0x52e80
leaq -0x1e8570(%rbp), %rdi
movq -0x8(%rbp), %rax
movq 0x1407118(%rax), %rsi
callq 0x4220
movq -0x8(%rbp), %rax
movq 0x1407118(%rax), %rdi
callq 0x52e80
movl $0x0, -0x14(%rbp)
movl -0x14(%rbp), %eax
cmpl -0x24(%rbp), %eax
jge 0x86ad6
movq -0x8(%rbp), %rax
movslq -0x14(%rbp), %rcx
movl 0x1407140(%rax,%rcx,4), %ecx
movslq -0x14(%rbp), %rax
movl %ecx, -0xf0(%rbp,%rax,4)
movslq -0x14(%rbp), %rax
leaq -0x19bfdb0(%rbp), %rdi
imulq $0x7a120, %rax, %rax    # imm = 0x7A120
addq %rax, %rdi
movq -0x8(%rbp), %rax
movslq -0x14(%rbp), %rcx
movq 0x18(%rax,%rcx,8), %rsi
callq 0x4220
movq -0x8(%rbp), %rax
movslq -0x14(%rbp), %rcx
movq 0x18(%rax,%rcx,8), %rdi
callq 0x52e80
movslq -0x14(%rbp), %rax
leaq -0x31975f0(%rbp), %rdi
imulq $0x7a120, %rax, %rax    # imm = 0x7A120
addq %rax, %rdi
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rcx
movslq 0x1407128(%rcx), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movslq -0x14(%rbp), %rcx
movq 0x20(%rax,%rcx,8), %rsi
callq 0x4220
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rcx
movslq 0x1407128(%rcx), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movslq -0x14(%rbp), %rcx
movq 0x20(%rax,%rcx,8), %rdi
callq 0x52e80
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x869fa
movq -0x8(%rbp), %rax
movl $0x2, 0x10(%rax)
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rcx
movslq 0x1407128(%rcx), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movl $0x2, 0x18(%rax)
movq -0x10(%rbp), %rdi
leaq 0x616ac(%rip), %rsi     # 0xe81be
callq 0x40c0
movq %rax, -0x3197610(%rbp)
movq -0x3197610(%rbp), %rdi
leaq 0x61715(%rip), %rsi     # 0xe8241
movb $0x0, %al
callq 0x4280
movl $0x0, -0x14(%rbp)
movl -0x14(%rbp), %eax
cmpl -0x24(%rbp), %eax
jge 0x86ef4
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
movl -0x18(%rbp), %eax
cmpl -0x24(%rbp), %eax
jge 0x86ee4
movl -0x1c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x1c(%rbp)
leaq -0x7a210(%rbp), %rdi
leaq -0x16e450(%rbp), %rdx
movl -0x1c(%rbp), %ecx
leaq 0x6177f(%rip), %rsi     # 0xe82fb
movb $0x0, %al
callq 0x4170
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdi
leaq -0x7a210(%rbp), %rsi
callq 0x54ba0
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x8(%rax)
movslq -0x14(%rbp), %rax
movl -0xf0(%rbp,%rax,4), %ecx
movslq -0x18(%rbp), %rax
addl -0xf0(%rbp,%rax,4), %ecx
movq -0x8(%rbp), %rax
movl %ecx, 0x1407120(%rax)
movslq -0x14(%rbp), %rax
movl -0xf0(%rbp,%rax,4), %ecx
movq -0x8(%rbp), %rax
movl %ecx, 0x1407140(%rax)
movslq -0x18(%rbp), %rax
movl -0xf0(%rbp,%rax,4), %ecx
movq -0x8(%rbp), %rax
movl %ecx, 0x1407144(%rax)
leaq -0x7a210(%rbp), %rdi
leaq -0x1e8570(%rbp), %rdx
movl -0x1c(%rbp), %ecx
leaq 0x616f7(%rip), %rsi     # 0xe82fb
movb $0x0, %al
callq 0x4170
movq -0x8(%rbp), %rax
movq 0x1407118(%rax), %rdi
leaq -0x7a210(%rbp), %rsi
callq 0x54ba0
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x1407118(%rax)
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
movslq -0x14(%rbp), %rax
leaq -0x19bfdb0(%rbp), %rsi
imulq $0x7a120, %rax, %rax    # imm = 0x7A120
addq %rax, %rsi
callq 0x54ba0
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x18(%rax)
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rdi
movslq -0x18(%rbp), %rax
leaq -0x19bfdb0(%rbp), %rsi
imulq $0x7a120, %rax, %rax    # imm = 0x7A120
addq %rax, %rsi
callq 0x54ba0
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x20(%rax)
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rcx
movslq 0x1407128(%rcx), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movq 0x20(%rax), %rdi
movslq -0x14(%rbp), %rax
leaq -0x31975f0(%rbp), %rsi
imulq $0x7a120, %rax, %rax    # imm = 0x7A120
addq %rax, %rsi
callq 0x54ba0
movq %rax, %rcx
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rdx
movslq 0x1407128(%rdx), %rdx
imulq $0x340, %rdx, %rdx      # imm = 0x340
addq %rdx, %rax
movq %rcx, 0x20(%rax)
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rcx
movslq 0x1407128(%rcx), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movq 0x28(%rax), %rdi
movslq -0x18(%rbp), %rax
leaq -0x31975f0(%rbp), %rsi
imulq $0x7a120, %rax, %rax    # imm = 0x7A120
addq %rax, %rsi
callq 0x54ba0
movq %rax, %rcx
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rdx
movslq 0x1407128(%rdx), %rdx
imulq $0x340, %rdx, %rdx      # imm = 0x340
addq %rdx, %rax
movq %rcx, 0x28(%rax)
movq -0x8(%rbp), %rdi
callq 0x1fbf0
movq %rax, -0x3197600(%rbp)
leaq -0xf4330(%rbp), %rdi
movq -0x3197600(%rbp), %rdx
leaq 0x5c7b6(%rip), %rsi     # 0xe352b
movb $0x0, %al
callq 0x4170
movq -0x3197600(%rbp), %rdi
callq 0x52e80
leaq -0xf4330(%rbp), %rdi
callq 0x40d0
movq -0x3197610(%rbp), %rdi
movq -0x8(%rbp), %rsi
callq 0x20320
movq -0x8(%rbp), %rdi
callq 0x1fc90
movq %rax, -0x31975f8(%rbp)
movq -0x31975f8(%rbp), %rdi
leaq 0x613fc(%rip), %rsi     # 0xe81be
callq 0x40c0
movq %rax, -0x3197608(%rbp)
movl $0x0, -0x20(%rbp)
movl -0x20(%rbp), %eax
cmpl 0x7e702(%rip), %eax     # 0x1054e0
jge 0x86e37
movq 0x2e1041(%rip), %rax    # 0x367e28
movslq -0x20(%rbp), %rcx
movl (%rax,%rcx,4), %eax
cmpl -0x14(%rbp), %eax
je 0x86e06
movq 0x2e102e(%rip), %rax    # 0x367e28
movslq -0x20(%rbp), %rcx
movl (%rax,%rcx,4), %eax
cmpl -0x18(%rbp), %eax
jne 0x86e2a
movq -0x3197608(%rbp), %rdi
movq 0x7ea1c(%rip), %rax     # 0x105830
movslq -0x20(%rbp), %rcx
movq (%rax,%rcx,8), %rdx
leaq 0x5dc75(%rip), %rsi     # 0xe4a98
movb $0x0, %al
callq 0x4280
jmp 0x86e2c
movl -0x20(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x20(%rbp)
jmp 0x86dd5
movq -0x3197608(%rbp), %rdi
callq 0x4250
movq -0x31975f8(%rbp), %rdi
callq 0x52e80
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdi
callq 0x52e80
movq -0x8(%rbp), %rax
movq 0x1407118(%rax), %rdi
callq 0x52e80
movq -0x8(%rbp), %rax
movq 0x18(%rax), %rdi
callq 0x52e80
movq -0x8(%rbp), %rax
movq 0x20(%rax), %rdi
callq 0x52e80
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rcx
movslq 0x1407128(%rcx), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movq 0x20(%rax), %rdi
callq 0x52e80
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rcx
movslq 0x1407128(%rcx), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movq 0x28(%rax), %rdi
callq 0x52e80
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x86b4f
jmp 0x86ee6
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x86b3a
movq -0x3197610(%rbp), %rdi
leaq 0x61364(%rip), %rsi     # 0xe8266
movb $0x0, %al
callq 0x4280
movq -0x3197610(%rbp), %rdi
callq 0x4250
movl -0x28(%rbp), %ecx
movq -0x8(%rbp), %rax
movl %ecx, 0x1407120(%rax)
movl -0x24(%rbp), %ecx
movq -0x8(%rbp), %rax
movl %ecx, 0x10(%rax)
movq -0x8(%rbp), %rax
movl 0x10(%rax), %ecx
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rdx
movslq 0x1407128(%rdx), %rdx
imulq $0x340, %rdx, %rdx      # imm = 0x340
addq %rdx, %rax
movl %ecx, 0x18(%rax)
movq -0x8(%rbp), %rax
movq 0x8(%rax), %rdi
leaq -0x16e450(%rbp), %rsi
callq 0x54ba0
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x8(%rax)
movq -0x8(%rbp), %rax
movq 0x1407118(%rax), %rdi
leaq -0x1e8570(%rbp), %rsi
callq 0x54ba0
movq %rax, %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x1407118(%rax)
movl $0x0, -0x14(%rbp)
movl -0x14(%rbp), %eax
cmpl -0x24(%rbp), %eax
jge 0x87078
movslq -0x14(%rbp), %rax
movl -0xf0(%rbp,%rax,4), %edx
movq -0x8(%rbp), %rax
movslq -0x14(%rbp), %rcx
movl %edx, 0x1407140(%rax,%rcx,4)
movq -0x8(%rbp), %rax
movslq -0x14(%rbp), %rcx
movq 0x18(%rax,%rcx,8), %rdi
movslq -0x14(%rbp), %rax
leaq -0x19bfdb0(%rbp), %rsi
imulq $0x7a120, %rax, %rax    # imm = 0x7A120
addq %rax, %rsi
callq 0x54ba0
movq %rax, %rdx
movq -0x8(%rbp), %rax
movslq -0x14(%rbp), %rcx
movq %rdx, 0x18(%rax,%rcx,8)
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rcx
movslq 0x1407128(%rcx), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movslq -0x14(%rbp), %rcx
movq 0x20(%rax,%rcx,8), %rdi
movslq -0x14(%rbp), %rax
leaq -0x31975f0(%rbp), %rsi
imulq $0x7a120, %rax, %rax    # imm = 0x7A120
addq %rax, %rsi
callq 0x54ba0
movq %rax, %rdx
movq -0x8(%rbp), %rax
addq $0x30f08, %rax          # imm = 0x30F08
movq -0x8(%rbp), %rcx
movslq 0x1407128(%rcx), %rcx
imulq $0x340, %rcx, %rcx      # imm = 0x340
addq %rcx, %rax
movslq -0x14(%rbp), %rcx
movq %rdx, 0x20(%rax,%rcx,8)
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x86fa0
callq 0x8b040
addq $0x3197610, %rsp        # imm = 0x3197610
popq %rbp
retq
nopw %cs:(%rax,%rax)