// File: /workspace/github_c_makefile_star2_O0/olcaytaner[P]Isell/process.c
// Function: run_supervised_algorithm
void run_supervised_algorithm(int meta_algorithm, int algorithm)
{
 /*!Last Changed 12.12.2005*/
 /*!Last Changed 31.10.2005*/
 /*!Last Changed 11.04.2005*/
 /*!Last Changed 10.04.2004 allow also regression algorithms to run*/
 /*!Last Changed 29.01.2004* if dataset is not active you can not run any algorithm on it*/
 int i, runstart, k, **partition, *classes, *classcounts;
 RUN_TYPE runtype;
 void* parameters;
 char* testfname;
 FILE* posfile = NULL;
 FILE* modelfile = NULL;
 FILE* testcodefile = NULL;
 FILE* confusionfile = NULL;
 if (!checkparams(paramcount, 3, m1006, m1048, m1049))
   return;
 totalrun = 0;
 current_dataset = search_dataset(Datasets, params[0]);
 if (!current_dataset)
  {
   printf(m1320);
   return;
  }
 mustrealize = must_realize(algorithm);
 if (current_dataset->storetype != STORE_KERNEL)
   mustnormalize = must_normalize(algorithm);
 else
  {
   read_kernel_of_dataset(current_dataset);
   mustnormalize = NO;
  }
 if (!check_supervised_algorithm_type(algorithm, current_dataset))  
   return;
 if (current_dataset->active == NO)
   return;
 if (strIcmp(params[1], "cv") == 0)
   if (get_parameter_f("testpercentage") > 0)
     runtype = CROSSVALIDATION_WITH_SEPARATE_TEST_SET;
   else
     runtype = CROSSVALIDATION;
 else
   if (strIcmp(params[1], "bootstrap") == 0)
     if (get_parameter_f("testpercentage") > 0)
       runtype = BOOTSTRAP;
     else
      {
       printf(m1414);
       return;
      }
   else
     if (paramcount == 4)
       runtype = TRAIN_TEST_SETS_GIVEN;
     else
       if (paramcount == 5)
         runtype = TRAIN_TEST_CV_SETS_GIVEN;
       else
        {
         printf(m1186);
         return;
        }
 parameters = prepare_supervised_algorithm_parameters(algorithm);
 if (get_parameter_o("printposterior"))
  {
   posfile = fopen(get_parameter_s("posteriorfilename"), "w");
   if (!posfile)
     return;
  }
 if (get_parameter_o("printconfusion"))
  {
   confusionfile = fopen(get_parameter_s("confusionfilename"), "w");
   if (!confusionfile)
     return;
  }
 if (get_parameter_o("savetestcode"))
  {
   testfname = test_code_file_name_with_extension(get_parameter_s("testcodefilename"), get_parameter_l("language"));
   testcodefile = fopen(testfname, "w");
   if (!testcodefile)
     return;
   safe_free(testfname);
  }
 if (get_parameter_o("savemodel"))
  {
   modelfile = fopen(get_parameter_s("modelfilename"), "w");
   if (!modelfile)
     return;
   switch (runtype){
     case                        CROSSVALIDATION:
     case CROSSVALIDATION_WITH_SEPARATE_TEST_SET:fprintf(modelfile, "%s %s %d\n", current_dataset->name, get_algorithm_name(algorithm), get_parameter_i("runcount") * get_parameter_i("runtofold"));
                                                 break;
     case                              BOOTSTRAP:fprintf(modelfile, "%s %s %d\n", current_dataset->name, get_algorithm_name(algorithm), get_parameter_i("runcount"));
                                                 break;
     case                  TRAIN_TEST_SETS_GIVEN:
     case               TRAIN_TEST_CV_SETS_GIVEN:fprintf(modelfile, "%s %s 1\n", current_dataset->name, get_algorithm_name(algorithm));
                                                 break;
   }
  }
 if (runtype == CROSSVALIDATION || runtype == CROSSVALIDATION_WITH_SEPARATE_TEST_SET)
  {
   runstart = atoi(params[2]);
   get_prior_information();
   mysrand(runstart);
   partition = safemalloc(get_parameter_i("runcount") * sizeof(int *), "run_supervised_algorithm", 34);
   classes = read_train_and_test_lines(&classcounts);
   for (i = 0; i < get_parameter_i("runcount"); i++)
     partition[i] = stratified_partition(classes, trainlinecount, current_dataset->classno, classcounts);
   for (i = 0; i < get_parameter_i("runcount"); i++)
     for (k = get_parameter_i("runfromfold"); k < get_parameter_i("runtofold"); k++)
      {
       #ifdef MPI
       if (get_parameter_o("parallel") && get_parameter_i("paralleltype") == 2 && get_parameter_i("proccount") > 1 && rank > 0)   
         get_fold_mpiclient(k, partition[i]);
       else
         get_fold(k, partition[i]);
       #else
       if (get_parameter_i("foldcount") != 1)
         get_fold(k, partition[i]);
       else
        {
         read_from_train_file(current_dataset, &traindata);
         read_from_train_file(current_dataset, &testdata);
        }
       #endif
       if (runtype == CROSSVALIDATION_WITH_SEPARATE_TEST_SET)
        {
         read_data_from_lines(testlines, testlinecount, &separateddata);
         handle_missing_values(traindata, separateddata);
        }
       single_run_supervised_algorithm(parameters, meta_algorithm, algorithm, runtype, posfile, modelfile, testcodefile, confusionfile);
       separateddata = NULL;
      }
   free_2d((void**)partition, get_parameter_i("runcount"));
   free_train_and_test_lines();
   if (current_dataset->classno > 0)
    {
     safe_free(classes);
     safe_free(classcounts);
    }
  }
 else
   if (runtype == BOOTSTRAP)
    {
     runstart = atoi(params[2]);
     get_prior_information();
     mysrand(runstart);
     classes = read_train_and_test_lines(&classcounts);
     for (i = 0; i < get_parameter_i("runcount"); i++)
      {
       bootstrap_sample_with_stratification(classes, classcounts);
       read_data_from_lines(testlines, testlinecount, &testdata);
       handle_missing_values(traindata, testdata);
       single_run_supervised_algorithm(parameters, meta_algorithm, algorithm, runtype, posfile, modelfile, testcodefile, confusionfile);
      }
     free_train_and_test_lines();
     if (current_dataset->classno > 0)
      {
       safe_free(classes);
       safe_free(classcounts);
      }
    }
   else
     if (runtype == TRAIN_TEST_SETS_GIVEN)
      {
       if (prepare_from_files(current_dataset, params[1], params[2], NULL))
        {
         mysrand(atoi(params[3]));
         single_run_supervised_algorithm(parameters, meta_algorithm, algorithm, runtype, posfile, modelfile, testcodefile, confusionfile);
        }
      }
     else
      {
       if (prepare_from_files(current_dataset, params[1], params[2], params[3]))
        {
         mysrand(atoi(params[4]));
         single_run_supervised_algorithm(parameters, meta_algorithm, algorithm, runtype, posfile, modelfile, testcodefile, confusionfile);
        }
      }
 free_supervised_algorithm_parameters(algorithm, parameters);
 if (get_parameter_o("printposterior"))
   fclose(posfile);
 if (get_parameter_o("savemodel"))
   fclose(modelfile);
 if (get_parameter_o("savetestcode"))
   fclose(testcodefile);
 if (get_parameter_o("printconfusion"))
   fclose(confusionfile);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xf0, %rsp
movl %edi, -0x4(%rbp)
movl %esi, -0x8(%rbp)
movq $0x0, -0x50(%rbp)
movq $0x0, -0x58(%rbp)
movq $0x0, -0x60(%rbp)
movq $0x0, -0x68(%rbp)
movl 0x355db9(%rip), %edi    # 0x3e1f70
movl $0x3, %esi
leaq 0x5c2c5(%rip), %rdx     # 0xe8488
leaq 0x5c32e(%rip), %rcx     # 0xe84f8
leaq 0x5c351(%rip), %r8      # 0xe8522
movb $0x0, %al
callq 0x53f70
cmpl $0x0, %eax
jne 0x8c1e2
jmp 0x8ca52
movl $0x0, 0x355e04(%rip)    # 0x3e1ff0
movq 0x79655(%rip), %rdi     # 0x105848
movq 0x79306(%rip), %rsi     # 0x105500
callq 0x1db80
movq %rax, 0x7963a(%rip)     # 0x105840
cmpq $0x0, 0x79632(%rip)     # 0x105840
jne 0x8c223
leaq 0x5c23c(%rip), %rdi     # 0xe8453
movb $0x0, %al
callq 0x4030
jmp 0x8ca52
movl -0x8(%rbp), %edi
callq 0x4480
movl %eax, 0x355d43(%rip)    # 0x3e1f74
movq 0x79608(%rip), %rax     # 0x105840
cmpl $0x3, 0x140713c(%rax)
je 0x8c251
movl -0x8(%rbp), %edi
callq 0x44f0
movl %eax, 0x2dbbf1(%rip)    # 0x367e40
jmp 0x8c267
movq 0x795e8(%rip), %rdi     # 0x105840
callq 0x20a00
movl $0x0, 0x2dbbd9(%rip)    # 0x367e40
movl -0x8(%rbp), %edi
movq 0x795cf(%rip), %rsi     # 0x105840
callq 0x4640
cmpl $0x0, %eax
jne 0x8c280
jmp 0x8ca52
movq 0x795b9(%rip), %rax     # 0x105840
cmpl $0x0, (%rax)
jne 0x8c291
jmp 0x8ca52
movq 0x79270(%rip), %rdi     # 0x105508
leaq 0x622aa(%rip), %rsi     # 0xee549
callq 0x54990
cmpl $0x0, %eax
jne 0x8c2d3
leaq 0x5c153(%rip), %rdi     # 0xe8403
callq 0x79040
xorps %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x8c2c7
movl $0x1, -0x34(%rbp)
jmp 0x8c2ce
movl $0x0, -0x34(%rbp)
jmp 0x8c35b
movq 0x7922e(%rip), %rdi     # 0x105508
leaq 0x5c265(%rip), %rsi     # 0xe8546
callq 0x54990
cmpl $0x0, %eax
jne 0x8c31e
leaq 0x5c111(%rip), %rdi     # 0xe8403
callq 0x79040
xorps %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x8c309
movl $0x2, -0x34(%rbp)
jmp 0x8c31c
leaq 0x5c240(%rip), %rdi     # 0xe8550
movb $0x0, %al
callq 0x4030
jmp 0x8ca52
jmp 0x8c359
cmpl $0x4, 0x355c4b(%rip)    # 0x3e1f70
jne 0x8c330
movl $0x3, -0x34(%rbp)
jmp 0x8c357
cmpl $0x5, 0x355c39(%rip)    # 0x3e1f70
jne 0x8c342
movl $0x4, -0x34(%rbp)
jmp 0x8c355
leaq 0x5c243(%rip), %rdi     # 0xe858c
movb $0x0, %al
callq 0x4030
jmp 0x8ca52
jmp 0x8c357
jmp 0x8c359
jmp 0x8c35b
movl -0x8(%rbp), %edi
callq 0x7410
movq %rax, -0x40(%rbp)
leaq 0x5bfae(%rip), %rdi     # 0xe831c
callq 0x79440
cmpl $0x0, %eax
je 0x8c3a5
leaq 0x5c0ad(%rip), %rdi     # 0xe842c
callq 0x79190
movq %rax, %rdi
leaq 0x5be30(%rip), %rsi     # 0xe81be
callq 0x40c0
movq %rax, -0x50(%rbp)
cmpq $0x0, -0x50(%rbp)
jne 0x8c3a3
jmp 0x8ca52
jmp 0x8c3a5
leaq 0x5bf9d(%rip), %rdi     # 0xe8349
callq 0x79440
cmpl $0x0, %eax
je 0x8c3e3
leaq 0x5c1e3(%rip), %rdi     # 0xe85a0
callq 0x79190
movq %rax, %rdi
leaq 0x5bdf2(%rip), %rsi     # 0xe81be
callq 0x40c0
movq %rax, -0x68(%rbp)
cmpq $0x0, -0x68(%rbp)
jne 0x8c3e1
jmp 0x8ca52
jmp 0x8c3e3
leaq 0x5bfa1(%rip), %rdi     # 0xe838b
callq 0x79440
cmpl $0x0, %eax
je 0x8c448
leaq 0x5c1b7(%rip), %rdi     # 0xe85b2
callq 0x79190
movq %rax, -0x70(%rbp)
leaq 0x5bf8d(%rip), %rdi     # 0xe8398
callq 0x792b0
movq -0x70(%rbp), %rdi
movl %eax, %esi
callq 0xaf0e0
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rdi
leaq 0x5bd94(%rip), %rsi     # 0xe81be
callq 0x40c0
movq %rax, -0x60(%rbp)
cmpq $0x0, -0x60(%rbp)
jne 0x8c43f
jmp 0x8ca52
movq -0x48(%rbp), %rdi
callq 0x52e80
leaq 0x5bf32(%rip), %rdi     # 0xe8381
callq 0x79440
cmpl $0x0, %eax
je 0x8c5d4
leaq 0x5c15f(%rip), %rdi     # 0xe85c3
callq 0x79190
movq %rax, %rdi
leaq 0x5bd4b(%rip), %rsi     # 0xe81be
callq 0x40c0
movq %rax, -0x58(%rbp)
cmpq $0x0, -0x58(%rbp)
jne 0x8c488
jmp 0x8ca52
movl -0x34(%rbp), %eax
movl %eax, -0x74(%rbp)
subl $0x2, %eax
jb 0x8c4b7
jmp 0x8c495
movl -0x74(%rbp), %eax
subl $0x2, %eax
je 0x8c52e
jmp 0x8c4a3
movl -0x74(%rbp), %eax
addl $-0x3, %eax
subl $0x2, %eax
jb 0x8c58e
jmp 0x8c5d2
movq -0x58(%rbp), %rax
movq %rax, -0x90(%rbp)
movq 0x79377(%rip), %rax     # 0x105840
movq 0x8(%rax), %rax
movq %rax, -0x88(%rbp)
movl -0x8(%rbp), %edi
callq 0x45d0
movq %rax, -0x80(%rbp)
leaq 0x5b276(%rip), %rdi     # 0xe775d
callq 0x78f10
movl %eax, -0x94(%rbp)
leaq 0x5bf50(%rip), %rdi     # 0xe8449
callq 0x78f10
movl -0x94(%rbp), %r8d
movq -0x90(%rbp), %rdi
movq -0x88(%rbp), %rdx
movq -0x80(%rbp), %rcx
imull %eax, %r8d
leaq 0x5c0af(%rip), %rsi     # 0xe85d1
movb $0x0, %al
callq 0x4280
jmp 0x8c5d2
movq -0x58(%rbp), %rax
movq %rax, -0xb0(%rbp)
movq 0x79300(%rip), %rax     # 0x105840
movq 0x8(%rax), %rax
movq %rax, -0xa8(%rbp)
movl -0x8(%rbp), %edi
callq 0x45d0
movq %rax, -0xa0(%rbp)
leaq 0x5b1fc(%rip), %rdi     # 0xe775d
callq 0x78f10
movq -0xb0(%rbp), %rdi
movq -0xa8(%rbp), %rdx
movq -0xa0(%rbp), %rcx
movl %eax, %r8d
leaq 0x5c04c(%rip), %rsi     # 0xe85d1
movb $0x0, %al
callq 0x4280
jmp 0x8c5d2
movq -0x58(%rbp), %rax
movq %rax, -0xc0(%rbp)
movq 0x792a0(%rip), %rax     # 0x105840
movq 0x8(%rax), %rax
movq %rax, -0xb8(%rbp)
movl -0x8(%rbp), %edi
callq 0x45d0
movq -0xc0(%rbp), %rdi
movq -0xb8(%rbp), %rdx
movq %rax, %rcx
leaq 0x5c010(%rip), %rsi     # 0xe85db
movb $0x0, %al
callq 0x4280
jmp 0x8c5d4
cmpl $0x0, -0x34(%rbp)
je 0x8c5e4
cmpl $0x1, -0x34(%rbp)
jne 0x8c815
movq 0x78f25(%rip), %rdi     # 0x105510
callq 0x41c0
movl %eax, -0x10(%rbp)
callq 0x86430
movl -0x10(%rbp), %edi
callq 0x54580
leaq 0x5b156(%rip), %rdi     # 0xe775d
callq 0x78f10
movslq %eax, %rdi
shlq $0x3, %rdi
leaq 0x5bfca(%rip), %rsi     # 0xe85e4
movl $0x22, %edx
callq 0x52d70
movq %rax, -0x20(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x87220
movq %rax, -0x28(%rbp)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
movl %eax, -0xc4(%rbp)
leaq 0x5b111(%rip), %rdi     # 0xe775d
callq 0x78f10
movl %eax, %ecx
movl -0xc4(%rbp), %eax
cmpl %ecx, %eax
jge 0x8c694
movq -0x28(%rbp), %rdi
movl 0x78e79(%rip), %esi     # 0x1054e0
movq 0x791d2(%rip), %rax     # 0x105840
movl 0x10(%rax), %edx
movq -0x30(%rbp), %rcx
callq 0x43d20
movq %rax, %rdx
movq -0x20(%rbp), %rax
movslq -0xc(%rbp), %rcx
movq %rdx, (%rax,%rcx,8)
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x8c63c
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
movl %eax, -0xc8(%rbp)
leaq 0x5b0b2(%rip), %rdi     # 0xe775d
callq 0x78f10
movl %eax, %ecx
movl -0xc8(%rbp), %eax
cmpl %ecx, %eax
jge 0x8c7c7
leaq 0x5bf36(%rip), %rdi     # 0xe85fd
callq 0x78f10
movl %eax, -0x14(%rbp)
movl -0x14(%rbp), %eax
movl %eax, -0xcc(%rbp)
leaq 0x5bd6a(%rip), %rdi     # 0xe8449
callq 0x78f10
movl %eax, %ecx
movl -0xcc(%rbp), %eax
cmpl %ecx, %eax
jge 0x8c7b7
leaq 0x5b06b(%rip), %rdi     # 0xe7766
callq 0x78f10
cmpl $0x1, %eax
je 0x8c71b
movl -0x14(%rbp), %edi
movq -0x20(%rbp), %rax
movslq -0xc(%rbp), %rcx
movq (%rax,%rcx,8), %rsi
callq 0x867e0
jmp 0x8c741
movq 0x7911e(%rip), %rdi     # 0x105840
leaq 0x2db6d7(%rip), %rsi    # 0x367e00
callq 0x85c60
movq 0x7910b(%rip), %rdi     # 0x105840
leaq 0x2db6cc(%rip), %rsi    # 0x367e08
callq 0x85c60
cmpl $0x1, -0x34(%rbp)
jne 0x8c773
movq 0x790da(%rip), %rdi     # 0x105828
movl 0x78d88(%rip), %esi     # 0x1054dc
leaq 0x2db6bd(%rip), %rdx    # 0x367e18
callq 0x87530
movq 0x2db699(%rip), %rdi    # 0x367e00
movq 0x2db6aa(%rip), %rsi    # 0x367e18
callq 0x85060
movq -0x40(%rbp), %rdi
movl -0x4(%rbp), %esi
movl -0x8(%rbp), %edx
movl -0x34(%rbp), %ecx
movq -0x50(%rbp), %r8
movq -0x58(%rbp), %r9
movq -0x60(%rbp), %r10
movq -0x68(%rbp), %rax
movq %r10, (%rsp)
movq %rax, 0x8(%rsp)
callq 0x8a700
movq $0x0, 0x2db66f(%rip) # 0x367e18
movl -0x14(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x14(%rbp)
jmp 0x8c6cf
jmp 0x8c7b9
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x8c69b
movq -0x20(%rbp), %rax
movq %rax, -0xd8(%rbp)
leaq 0x5af84(%rip), %rdi     # 0xe775d
callq 0x78f10
movq -0xd8(%rbp), %rdi
movl %eax, %esi
callq 0x52e20
callq 0x8b040
movq 0x79048(%rip), %rax     # 0x105840
cmpl $0x0, 0x10(%rax)
jle 0x8c810
movq -0x28(%rbp), %rdi
callq 0x52e80
movq -0x30(%rbp), %rdi
callq 0x52e80
jmp 0x8c9de
cmpl $0x2, -0x34(%rbp)
jne 0x8c90b
movq 0x78cea(%rip), %rdi     # 0x105510
callq 0x41c0
movl %eax, -0x10(%rbp)
callq 0x86430
movl -0x10(%rbp), %edi
callq 0x54580
leaq -0x30(%rbp), %rdi
callq 0x87220
movq %rax, -0x28(%rbp)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
movl %eax, -0xdc(%rbp)
leaq 0x5aefe(%rip), %rdi     # 0xe775d
callq 0x78f10
movl %eax, %ecx
movl -0xdc(%rbp), %eax
cmpl %ecx, %eax
jge 0x8c8e2
movq -0x28(%rbp), %rdi
movq -0x30(%rbp), %rsi
callq 0x86640
movq 0x78fa4(%rip), %rdi     # 0x105828
movl 0x78c52(%rip), %esi     # 0x1054dc
leaq 0x2db577(%rip), %rdx    # 0x367e08
callq 0x87530
movq 0x2db563(%rip), %rdi    # 0x367e00
movq 0x2db564(%rip), %rsi    # 0x367e08
callq 0x85060
movq -0x40(%rbp), %rdi
movl -0x4(%rbp), %esi
movl -0x8(%rbp), %edx
movl -0x34(%rbp), %ecx
movq -0x50(%rbp), %r8
movq -0x58(%rbp), %r9
movq -0x60(%rbp), %r10
movq -0x68(%rbp), %rax
movq %r10, (%rsp)
movq %rax, 0x8(%rsp)
callq 0x8a700
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0x8c84f
callq 0x8b040
movq 0x78f52(%rip), %rax     # 0x105840
cmpl $0x0, 0x10(%rax)
jle 0x8c906
movq -0x28(%rbp), %rdi
callq 0x52e80
movq -0x30(%rbp), %rdi
callq 0x52e80
jmp 0x8c9dc
cmpl $0x3, -0x34(%rbp)
jne 0x8c974
movq 0x78f28(%rip), %rdi     # 0x105840
movq 0x78be9(%rip), %rsi     # 0x105508
movq 0x78bea(%rip), %rdx     # 0x105510
xorl %eax, %eax
movl %eax, %ecx
callq 0x86230
cmpl $0x0, %eax
je 0x8c972
movq 0x78bdd(%rip), %rdi     # 0x105518
callq 0x41c0
movl %eax, %edi
callq 0x54580
movq -0x40(%rbp), %rdi
movl -0x4(%rbp), %esi
movl -0x8(%rbp), %edx
movl -0x34(%rbp), %ecx
movq -0x50(%rbp), %r8
movq -0x58(%rbp), %r9
movq -0x60(%rbp), %r10
movq -0x68(%rbp), %rax
movq %r10, (%rsp)
movq %rax, 0x8(%rsp)
callq 0x8a700
jmp 0x8c9da
movq 0x78ec5(%rip), %rdi     # 0x105840
movq 0x78b86(%rip), %rsi     # 0x105508
movq 0x78b87(%rip), %rdx     # 0x105510
movq 0x78b88(%rip), %rcx     # 0x105518
callq 0x86230
cmpl $0x0, %eax
je 0x8c9d8
movq 0x78b7f(%rip), %rdi     # 0x105520
callq 0x41c0
movl %eax, %edi
callq 0x54580
movq -0x40(%rbp), %rdi
movl -0x4(%rbp), %esi
movl -0x8(%rbp), %edx
movl -0x34(%rbp), %ecx
movq -0x50(%rbp), %r8
movq -0x58(%rbp), %r9
movq -0x60(%rbp), %r10
movq -0x68(%rbp), %rax
movq %r10, (%rsp)
movq %rax, 0x8(%rsp)
callq 0x8a700
jmp 0x8c9da
jmp 0x8c9dc
jmp 0x8c9de
movl -0x8(%rbp), %edi
movq -0x40(%rbp), %rsi
callq 0x5a00
leaq 0x5b92b(%rip), %rdi     # 0xe831c
callq 0x79440
cmpl $0x0, %eax
je 0x8ca04
movq -0x50(%rbp), %rdi
callq 0x4250
leaq 0x5b976(%rip), %rdi     # 0xe8381
callq 0x79440
cmpl $0x0, %eax
je 0x8ca1e
movq -0x58(%rbp), %rdi
callq 0x4250
leaq 0x5b966(%rip), %rdi     # 0xe838b
callq 0x79440
cmpl $0x0, %eax
je 0x8ca38
movq -0x60(%rbp), %rdi
callq 0x4250
leaq 0x5b90a(%rip), %rdi     # 0xe8349
callq 0x79440
cmpl $0x0, %eax
je 0x8ca52
movq -0x68(%rbp), %rdi
callq 0x4250
addq $0xf0, %rsp
popq %rbp
retq
nopl (%rax,%rax)