// File: /workspace/github_c_makefile_star2_O0/olcaytaner[P]Isell/process.c
// Function: write_to_output_variables
void write_to_output_variables(int algorithm, void* model, Instanceptr* trdata, Instanceptr testdata)
{
 /*!Last Changed 04.08.2005*/
 int i, j, h, nodecount, rulecount, conditioncount, treecount;
 Ruleset r;
 double error;
 Decisionnodeptr* forest;
 Decisionnodeptr rootnode;
 Regressionnodeptr regrootnode;
 Regressionruleset regr;
 Mlpnetworkptr mlpnet;
 Model_divsptr mdivs;
 char nodetypes[READLINELENGTH];
 char datasizes[READLINELENGTH];
 switch (algorithm)
  {
   case C45           :rootnode = (Decisionnodeptr) model;
                       strcpy(nodetypes, ""); 
                       decisiontree_node_types(rootnode, nodetypes, 1);
                       if (strlen(nodetypes) == 0)
                         strcpy(nodetypes, " ");
                       error = decisiontree_falsepositive_count(rootnode) / (rootnode->covered + 0.0);
                       h = decisiontree_vc_dimension_recursive(current_dataset, rootnode);
                       write_array_variables("aout", totalrun, 3, "dddfs", decisiontree_node_count(rootnode), decisiontree_rule_count(rootnode), decisiontree_condition_count(rootnode), 100 * srm_classification(error, h, rootnode->covered, get_parameter_f("srma1"), get_parameter_f("srma2")), nodetypes);
                       break;
   case LDT           :
   case NBTREE        :
   case MULTILDT      :
   case CART          :rootnode = (Decisionnodeptr) model;
                       write_array_variables("aout", totalrun, 3, "ddd", decisiontree_node_count(rootnode), decisiontree_rule_count(rootnode), decisiontree_condition_count(rootnode));
                       break;
   case KTREE         :rootnode = (Decisionnodeptr) model;
                       strcpy(nodetypes, "");
                       decisiontree_node_types(rootnode, nodetypes, 1);
                       if (strlen(nodetypes) == 0)
                         strcpy(nodetypes, " ");
                       write_array_variables("aout", totalrun, 3, "ddds", decisiontree_node_count(rootnode), decisiontree_rule_count(rootnode), decisiontree_condition_count(rootnode), nodetypes);
                       break;
   case RANDOMFOREST  :
   case KFOREST       :forest = (Decisionnodeptr*) model;
                       treecount = get_parameter_i("forestsize");
                       nodecount = rulecount = conditioncount = 0;
                       for (i = 0; i < treecount; i++)
                        {
                         rootnode = forest[i];
                         nodecount += decisiontree_node_count(rootnode);
                         rulecount += decisiontree_rule_count(rootnode);
                         conditioncount += decisiontree_condition_count(rootnode);
                        }
                       write_array_variables("aout", totalrun, 3, "fff", nodecount, rulecount, conditioncount);
                       break;
   case SVMTREE       :forest = (Decisionnodeptr*) model;
                       if (get_parameter_l("multiclasstype") == ONE_VS_ONE)
                         treecount = current_dataset->classno * (current_dataset->classno - 1) / 2;
                       else
                         treecount = current_dataset->classno;
                       nodecount = rulecount = conditioncount = 0;
                       for (i = 0; i < treecount; i++)
                        {
                         rootnode = forest[i];
                         nodecount += decisiontree_node_count(rootnode);
                         rulecount += decisiontree_rule_count(rootnode);
                         conditioncount += decisiontree_condition_count(rootnode);
                        }
                       write_array_variables("aout", totalrun, 3, "fff", nodecount / (treecount + 0.0), rulecount / (treecount + 0.0), conditioncount / (treecount + 0.0));
                       break;
   case OMNILDT       :rootnode = (Decisionnodeptr) model;
                       strcpy(nodetypes, ""); 
                       decisiontree_node_types(rootnode, nodetypes, 1);
                       if (strlen(nodetypes) == 0)
                         strcpy(nodetypes, " ");
                       write_array_variables("aout", totalrun, 3, "dddddds",  decisiontree_univariate_node_count(rootnode), decisiontree_multivariate_linear_node_count(rootnode), decisiontree_multivariate_quadratic_node_count(rootnode), decisiontree_node_count(rootnode), decisiontree_rule_count(rootnode), decisiontree_condition_count(rootnode), nodetypes);
                       break;
   case DNC           :
   case DNCREG        :mlpnet = (Mlpnetworkptr) model;
                       write_array_variables("aout", totalrun, 3, "df", mlpnet->P.hidden[0], mlpnet->P.sqrderror);
                       break;
   case IREP          :
   case IREP2         :
   case RIPPER        :
   case C45RULES      :
   case MULTIRIPPER   :
   case CN2           :
   case LERILS        :
   case PART          :r = *((Ruleset*) model);
                       error = error_of_ruleset(r, *trdata) / (data_size(*trdata) + 0.0);
                       h = ruleset_vc_dimension(current_dataset, &r);
                       write_nodetypes_rule(r, nodetypes);
                       error = 100 * srm_classification(error, h, data_size(*trdata), get_parameter_f("srma1"), get_parameter_f("srma2"));
                       /*write_array_variables("aout", totalrun, 3, "ddsf", r.rulecount, condition_count(r), nodetypes, error);*/
                       break;
   case RISE          :r = *((Ruleset*) model);
                       write_array_variables("aout", totalrun, 3, "dd", r.rulecount, condition_count(r));
                       break;
   case DIVS          :mdivs = (Model_divsptr) model;
                       rulecount = 0;
                       conditioncount = 0;
                       for (i = 0; i < mdivs->datacount; i++)
                        {
                         rulecount += mdivs->rulecounts[i];
                         for (j = 0; j < mdivs->rulecounts[i]; j++)
                           conditioncount += mdivs->conditioncounts[i][j];
                        }
                       write_array_variables("aout", totalrun, 3, "dd", rulecount, conditioncount);
                       break;
   case HYBRIDRIPPER  :r = *((Ruleset*) model);
                       write_nodetypes_rule(r, nodetypes);
                       write_datasizes_and_nodetypes_rule(r, datasizes);
                       write_array_variables("aout", totalrun, 3, "ddss", r.rulecount, condition_count(r), nodetypes, datasizes);
                       break; 
   case REXRIPPER     :r = ((Model_rexripperptr) model)->r;
                       write_array_variables("aout", totalrun, 3, "ddddf", r.rulecount, condition_count(r),  data_size(((Model_rexripperptr) model)->exceptiondata), count_exceptions(testdata), exception_performance(testdata));
                       break;
   case REGTREE       :regrootnode = (Regressionnodeptr) model;
                       strcpy(nodetypes, ""); 
                       regressiontree_node_types(regrootnode, nodetypes, 1);
                       write_array_variables("aout", totalrun, 3, "ds", regressiontree_node_count(regrootnode), nodetypes);
                       break;
   case SOFTREGTREE   :regrootnode = (Regressionnodeptr) model;
                       strcpy(nodetypes, ""); 
                       soft_regtree_dimension_reduction(regrootnode, nodetypes, 1);
                       write_array_variables("aout", totalrun, 3, "ds", regressiontree_node_count(regrootnode), nodetypes);
                       break;
   case SOFTTREE      :rootnode = (Decisionnodeptr) model;
                       strcpy(nodetypes, ""); 
                       soft_tree_dimension_reduction(rootnode, nodetypes, 1);
                       write_array_variables("aout", totalrun, 3, "ds", decisiontree_node_count(rootnode), nodetypes);
                       break;
   case REGRULE       :regr = *((Regressionruleset*) model);
                       strcpy(nodetypes, ""); 
                       write_nodetypes_regression_rule(regr, nodetypes);
                       write_array_variables("aout", totalrun, 3, "s", nodetypes);
                       break;
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0xf43f0, %rsp          # imm = 0xF43F0
movl %edi, -0x14(%rbp)
movq %rsi, -0x20(%rbp)
movq %rdx, -0x28(%rbp)
movq %rcx, -0x30(%rbp)
movl -0x14(%rbp), %eax
movl %eax, -0xf4324(%rbp)
subl $0x3ea, %eax            # imm = 0x3EA
je 0x880cb
jmp 0x87f33
movl -0xf4324(%rbp), %eax
subl $0x3ed, %eax            # imm = 0x3ED
je 0x88273
jmp 0x87f46
movl -0xf4324(%rbp), %eax
addl $0xfffffc12, %eax       # imm = 0xFFFFFC12
subl $0x5, %eax
jb 0x8872f
jmp 0x87f5c
movl -0xf4324(%rbp), %eax
subl $0x3f3, %eax            # imm = 0x3F3
je 0x88998
jmp 0x87f6f
movl -0xf4324(%rbp), %eax
subl $0x3f5, %eax            # imm = 0x3F5
je 0x88a70
jmp 0x87f82
movl -0xf4324(%rbp), %eax
subl $0x3f6, %eax            # imm = 0x3F6
je 0x88273
jmp 0x87f95
movl -0xf4324(%rbp), %eax
subl $0x3f7, %eax            # imm = 0x3F7
je 0x885c4
jmp 0x87fa8
movl -0xf4324(%rbp), %eax
subl $0x3fb, %eax            # imm = 0x3FB
je 0x88495
jmp 0x87fbb
movl -0xf4324(%rbp), %eax
subl $0x3fd, %eax            # imm = 0x3FD
je 0x88273
jmp 0x87fce
movl -0xf4324(%rbp), %eax
subl $0x3ff, %eax            # imm = 0x3FF
je 0x886e5
jmp 0x87fe1
movl -0xf4324(%rbp), %eax
subl $0x403, %eax            # imm = 0x403
je 0x883cd
jmp 0x87ff4
movl -0xf4324(%rbp), %eax
subl $0x404, %eax            # imm = 0x404
je 0x88859
jmp 0x88007
movl -0xf4324(%rbp), %eax
subl $0x405, %eax            # imm = 0x405
je 0x888ce
jmp 0x8801a
movl -0xf4324(%rbp), %eax
addl $0xfffffbfa, %eax       # imm = 0xFFFFFBFA
subl $0x3, %eax
jb 0x8872f
jmp 0x88030
movl -0xf4324(%rbp), %eax
subl $0x409, %eax            # imm = 0x409
je 0x88c29
jmp 0x88043
movl -0xf4324(%rbp), %eax
subl $0x40a, %eax            # imm = 0x40A
je 0x88273
jmp 0x88056
movl -0xf4324(%rbp), %eax
subl $0x40b, %eax            # imm = 0x40B
je 0x882f0
jmp 0x88069
movl -0xf4324(%rbp), %eax
subl $0x40c, %eax            # imm = 0x40C
je 0x883cd
jmp 0x8807c
movl -0xf4324(%rbp), %eax
subl $0x7d2, %eax            # imm = 0x7D2
je 0x88b2f
jmp 0x8808f
movl -0xf4324(%rbp), %eax
subl $0x7d7, %eax            # imm = 0x7D7
je 0x88ca6
jmp 0x880a2
movl -0xf4324(%rbp), %eax
subl $0x7da, %eax            # imm = 0x7DA
je 0x886e5
jmp 0x880b5
movl -0xf4324(%rbp), %eax
subl $0x7de, %eax            # imm = 0x7DE
je 0x88bac
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0x90(%rbp)
leaq -0x7a200(%rbp), %rdi
leaq 0x65ef6(%rip), %rsi     # 0xedfda
callq 0x4220
movq -0x90(%rbp), %rdi
leaq -0x7a200(%rbp), %rsi
movl $0x1, %edx
callq 0x76150
leaq -0x7a200(%rbp), %rdi
callq 0x4150
cmpq $0x0, %rax
jne 0x88126
leaq -0x7a200(%rbp), %rdi
leaq 0x5d164(%rip), %rsi     # 0xe5285
callq 0x4220
movq -0x90(%rbp), %rdi
callq 0x28a70
cvtsi2sd %eax, %xmm0
movq -0x90(%rbp), %rax
cvtsi2sdl 0x84(%rax), %xmm1
xorps %xmm2, %xmm2
addsd %xmm2, %xmm1
divsd %xmm1, %xmm0
movsd %xmm0, -0x80(%rbp)
movq 0x7d6e4(%rip), %rdi     # 0x105840
movq -0x90(%rbp), %rsi
callq 0xe04e0
movl %eax, -0x3c(%rbp)
movl 0x359e7f(%rip), %eax    # 0x3e1ff0
movl %eax, -0xf4334(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28de0
movl %eax, -0xf4330(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ff0
movl %eax, -0xf432c(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ee0
movl %eax, -0xf4328(%rbp)
movsd -0x80(%rbp), %xmm0
movsd %xmm0, -0xf4340(%rbp)
movl -0x3c(%rbp), %eax
movl %eax, -0xf4350(%rbp)
movq -0x90(%rbp), %rax
movl 0x84(%rax), %eax
movl %eax, -0xf434c(%rbp)
leaq 0x5a5d4(%rip), %rdi     # 0xe27b1
callq 0x79040
movsd %xmm0, -0xf4348(%rbp)
leaq 0x5a5c6(%rip), %rdi     # 0xe27b7
callq 0x79040
movl -0xf4350(%rbp), %edi
movl -0xf434c(%rbp), %esi
movsd -0xf4348(%rbp), %xmm1
movaps %xmm0, %xmm2
movsd -0xf4340(%rbp), %xmm0
callq 0x67a20
movl -0xf4334(%rbp), %esi
movl -0xf4330(%rbp), %r8d
movl -0xf432c(%rbp), %r9d
movl -0xf4328(%rbp), %r10d
movaps %xmm0, %xmm1
movsd 0x5a800(%rip), %xmm0    # 0xe2a40
mulsd %xmm1, %xmm0
leaq -0x7a200(%rbp), %rax
leaq 0x5a263(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x60082(%rip), %rcx     # 0xe82e0
movl %r10d, (%rsp)
movq %rax, 0x8(%rsp)
movb $0x1, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0x90(%rbp)
movl 0x359d6c(%rip), %eax    # 0x3e1ff0
movl %eax, -0xf435c(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28de0
movl %eax, -0xf4358(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ff0
movl %eax, -0xf4354(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ee0
movl -0xf435c(%rbp), %esi
movl -0xf4358(%rbp), %r8d
movl -0xf4354(%rbp), %r9d
leaq 0x5a1e0(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x62938(%rip), %rcx     # 0xeac19
movl %eax, (%rsp)
movb $0x0, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0x90(%rbp)
leaq -0x7a200(%rbp), %rdi
leaq 0x65cd1(%rip), %rsi     # 0xedfda
callq 0x4220
movq -0x90(%rbp), %rdi
leaq -0x7a200(%rbp), %rsi
movl $0x1, %edx
callq 0x76150
leaq -0x7a200(%rbp), %rdi
callq 0x4150
cmpq $0x0, %rax
jne 0x8834b
leaq -0x7a200(%rbp), %rdi
leaq 0x5cf3f(%rip), %rsi     # 0xe5285
callq 0x4220
movl 0x359c9f(%rip), %eax    # 0x3e1ff0
movl %eax, -0xf4368(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28de0
movl %eax, -0xf4364(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ff0
movl %eax, -0xf4360(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ee0
movl -0xf4368(%rbp), %esi
movl -0xf4364(%rbp), %r8d
movl -0xf4360(%rbp), %r9d
movl %eax, %r10d
leaq -0x7a200(%rbp), %rax
leaq 0x5a109(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x5ff31(%rip), %rcx     # 0xe82e9
movl %r10d, (%rsp)
movq %rax, 0x8(%rsp)
movb $0x0, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0x88(%rbp)
leaq 0x59f5e(%rip), %rdi     # 0xe233d
callq 0x78f10
movl %eax, -0x4c(%rbp)
movl $0x0, -0x48(%rbp)
movl $0x0, -0x44(%rbp)
movl $0x0, -0x40(%rbp)
movl $0x0, -0x34(%rbp)
movl -0x34(%rbp), %eax
cmpl -0x4c(%rbp), %eax
jge 0x88462
movq -0x88(%rbp), %rax
movslq -0x34(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x90(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28de0
addl -0x40(%rbp), %eax
movl %eax, -0x40(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ff0
addl -0x44(%rbp), %eax
movl %eax, -0x44(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ee0
addl -0x48(%rbp), %eax
movl %eax, -0x48(%rbp)
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x88403
movl 0x359b88(%rip), %esi    # 0x3e1ff0
movl -0x40(%rbp), %r8d
movl -0x44(%rbp), %r9d
movl -0x48(%rbp), %eax
leaq 0x5a03b(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x65f5c(%rip), %rcx     # 0xee3e2
movl %eax, (%rsp)
movb $0x0, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0x88(%rbp)
leaq 0x59ea1(%rip), %rdi     # 0xe2348
callq 0x792b0
cmpl $0x0, %eax
jne 0x884d8
movq 0x7d388(%rip), %rax     # 0x105840
movl 0x10(%rax), %eax
movq 0x7d37e(%rip), %rcx     # 0x105840
movl 0x10(%rcx), %ecx
subl $0x1, %ecx
imull %ecx, %eax
movl $0x2, %ecx
cltd
idivl %ecx
movl %eax, -0x4c(%rbp)
jmp 0x884e5
movq 0x7d361(%rip), %rax     # 0x105840
movl 0x10(%rax), %eax
movl %eax, -0x4c(%rbp)
movl $0x0, -0x48(%rbp)
movl $0x0, -0x44(%rbp)
movl $0x0, -0x40(%rbp)
movl $0x0, -0x34(%rbp)
movl -0x34(%rbp), %eax
cmpl -0x4c(%rbp), %eax
jge 0x88560
movq -0x88(%rbp), %rax
movslq -0x34(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movq %rax, -0x90(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28de0
addl -0x40(%rbp), %eax
movl %eax, -0x40(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ff0
addl -0x44(%rbp), %eax
movl %eax, -0x44(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ee0
addl -0x48(%rbp), %eax
movl %eax, -0x48(%rbp)
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x88501
movl 0x359a8a(%rip), %esi    # 0x3e1ff0
cvtsi2sdl -0x40(%rbp), %xmm0
cvtsi2sdl -0x4c(%rbp), %xmm1
xorps %xmm2, %xmm2
addsd %xmm2, %xmm1
divsd %xmm1, %xmm0
cvtsi2sdl -0x44(%rbp), %xmm1
cvtsi2sdl -0x4c(%rbp), %xmm2
xorps %xmm3, %xmm3
addsd %xmm3, %xmm2
divsd %xmm2, %xmm1
cvtsi2sdl -0x48(%rbp), %xmm2
cvtsi2sdl -0x4c(%rbp), %xmm3
xorps %xmm4, %xmm4
addsd %xmm4, %xmm3
divsd %xmm3, %xmm2
leaq 0x59f09(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x65e2a(%rip), %rcx     # 0xee3e2
movb $0x3, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0x90(%rbp)
leaq -0x7a200(%rbp), %rdi
leaq 0x659fd(%rip), %rsi     # 0xedfda
callq 0x4220
movq -0x90(%rbp), %rdi
leaq -0x7a200(%rbp), %rsi
movl $0x1, %edx
callq 0x76150
leaq -0x7a200(%rbp), %rdi
callq 0x4150
cmpq $0x0, %rax
jne 0x8861f
leaq -0x7a200(%rbp), %rdi
leaq 0x5cc6b(%rip), %rsi     # 0xe5285
callq 0x4220
movl 0x3599cb(%rip), %eax    # 0x3e1ff0
movl %eax, -0xf4378(%rbp)
movq -0x90(%rbp), %rdi
callq 0xdba00
movl %eax, -0xf4374(%rbp)
movq -0x90(%rbp), %rdi
callq 0x6df20
movl %eax, -0xf4370(%rbp)
movq -0x90(%rbp), %rdi
callq 0x6dfb0
movl %eax, %r14d
movq -0x90(%rbp), %rdi
callq 0x28de0
movl %eax, %ebx
movq -0x90(%rbp), %rdi
callq 0x28ff0
movl %eax, -0xf436c(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28ee0
movl -0xf4378(%rbp), %esi
movl -0xf4374(%rbp), %r8d
movl -0xf4370(%rbp), %r9d
movl -0xf436c(%rbp), %r11d
movl %eax, %r10d
leaq -0x7a200(%rbp), %rax
leaq 0x59dff(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x5fc24(%rip), %rcx     # 0xe82e6
movl %r14d, (%rsp)
movl %ebx, 0x8(%rsp)
movl %r11d, 0x10(%rsp)
movl %r10d, 0x18(%rsp)
movq %rax, 0x20(%rsp)
movb $0x0, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0xd8(%rbp)
movl 0x3598fa(%rip), %esi    # 0x3e1ff0
movq -0xd8(%rbp), %rax
movl 0x50(%rax), %r8d
movq -0xd8(%rbp), %rax
movsd 0x90(%rax), %xmm0
leaq 0x59d9e(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x5fbd3(%rip), %rcx     # 0xe82f6
movb $0x1, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rsi
leaq -0x78(%rbp), %rdi
movl $0x28, %edx
callq 0x42b0
movq -0x28(%rbp), %rax
movq (%rax), %rdi
movq -0x58(%rbp), %rcx
movq %rsp, %rax
movq %rcx, 0x20(%rax)
movups -0x78(%rbp), %xmm0
movups -0x68(%rbp), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0xacee0
cvtsi2sd %eax, %xmm0
movsd %xmm0, -0xf4398(%rbp)
movq -0x28(%rbp), %rax
movq (%rax), %rdi
callq 0x449f0
movsd -0xf4398(%rbp), %xmm0
cvtsi2sd %eax, %xmm1
xorps %xmm2, %xmm2
addsd %xmm2, %xmm1
divsd %xmm1, %xmm0
movsd %xmm0, -0x80(%rbp)
movq 0x7d09e(%rip), %rdi     # 0x105840
leaq -0x78(%rbp), %rsi
callq 0xe0aa0
movl %eax, -0x3c(%rbp)
leaq -0x7a200(%rbp), %rdi
movq -0x58(%rbp), %rcx
movq %rsp, %rax
movq %rcx, 0x20(%rax)
movups -0x78(%rbp), %xmm0
movups -0x68(%rbp), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x73800
movsd -0x80(%rbp), %xmm0
movsd %xmm0, -0xf4380(%rbp)
movl -0x3c(%rbp), %eax
movl %eax, -0xf4390(%rbp)
movq -0x28(%rbp), %rax
movq (%rax), %rdi
callq 0x449f0
movl %eax, -0xf438c(%rbp)
leaq 0x59fae(%rip), %rdi     # 0xe27b1
callq 0x79040
movsd %xmm0, -0xf4388(%rbp)
leaq 0x59fa0(%rip), %rdi     # 0xe27b7
callq 0x79040
movl -0xf4390(%rbp), %edi
movl -0xf438c(%rbp), %esi
movsd -0xf4388(%rbp), %xmm1
movaps %xmm0, %xmm2
movsd -0xf4380(%rbp), %xmm0
callq 0x67a20
movaps %xmm0, %xmm1
movsd 0x5a1f5(%rip), %xmm0    # 0xe2a40
mulsd %xmm1, %xmm0
movsd %xmm0, -0x80(%rbp)
jmp 0x88d2f
movq -0x20(%rbp), %rsi
leaq -0x78(%rbp), %rdi
movl $0x28, %edx
callq 0x42b0
movl 0x35977f(%rip), %eax    # 0x3e1ff0
movl %eax, -0xf43a0(%rbp)
movl -0x68(%rbp), %eax
movl %eax, -0xf439c(%rbp)
movq -0x58(%rbp), %rcx
movq %rsp, %rax
movq %rcx, 0x20(%rax)
movups -0x78(%rbp), %xmm0
movups -0x68(%rbp), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0xac460
movl -0xf43a0(%rbp), %esi
movl -0xf439c(%rbp), %r8d
movl %eax, %r9d
leaq 0x59bff(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x62358(%rip), %rcx     # 0xeac1a
movb $0x0, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0xe0(%rbp)
movl $0x0, -0x44(%rbp)
movl $0x0, -0x48(%rbp)
movl $0x0, -0x34(%rbp)
movl -0x34(%rbp), %eax
movq -0xe0(%rbp), %rcx
cmpl 0x20(%rcx), %eax
jge 0x8896b
movq -0xe0(%rbp), %rax
movq 0x8(%rax), %rax
movslq -0x34(%rbp), %rcx
movl (%rax,%rcx,4), %eax
addl -0x44(%rbp), %eax
movl %eax, -0x44(%rbp)
movl $0x0, -0x38(%rbp)
movl -0x38(%rbp), %eax
movq -0xe0(%rbp), %rcx
movq 0x8(%rcx), %rcx
movslq -0x34(%rbp), %rdx
cmpl (%rcx,%rdx,4), %eax
jge 0x8895e
movq -0xe0(%rbp), %rax
movq 0x18(%rax), %rax
movslq -0x34(%rbp), %rcx
movq (%rax,%rcx,8), %rax
movslq -0x38(%rbp), %rcx
movl (%rax,%rcx,4), %eax
addl -0x48(%rbp), %eax
movl %eax, -0x48(%rbp)
movl -0x38(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x38(%rbp)
jmp 0x8891c
jmp 0x88960
movl -0x34(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x34(%rbp)
jmp 0x888ee
movl 0x35967f(%rip), %esi    # 0x3e1ff0
movl -0x44(%rbp), %r8d
movl -0x48(%rbp), %r9d
leaq 0x59b35(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x6228e(%rip), %rcx     # 0xeac1a
movb $0x0, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rsi
leaq -0x78(%rbp), %rdi
movl $0x28, %edx
callq 0x42b0
leaq -0x7a200(%rbp), %rdi
movq -0x58(%rbp), %rcx
movq %rsp, %rax
movq %rcx, 0x20(%rax)
movups -0x78(%rbp), %xmm0
movups -0x68(%rbp), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x73800
leaq -0xf4320(%rbp), %rdi
movq -0x58(%rbp), %rcx
movq %rsp, %rax
movq %rcx, 0x20(%rax)
movups -0x78(%rbp), %xmm0
movups -0x68(%rbp), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0x73950
movl 0x3595f4(%rip), %eax    # 0x3e1ff0
movl %eax, -0xf43a8(%rbp)
movl -0x68(%rbp), %eax
movl %eax, -0xf43a4(%rbp)
movq -0x58(%rbp), %rcx
movq %rsp, %rax
movq %rcx, 0x20(%rax)
movups -0x78(%rbp), %xmm0
movups -0x68(%rbp), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0xac460
movl -0xf43a8(%rbp), %esi
movl -0xf43a4(%rbp), %r8d
movl %eax, %r9d
leaq -0x7a200(%rbp), %r10
leaq -0xf4320(%rbp), %rax
leaq 0x59a66(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x5f893(%rip), %rcx     # 0xe82ee
movq %r10, (%rsp)
movq %rax, 0x8(%rsp)
movb $0x0, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rsi
leaq -0x78(%rbp), %rdi
movl $0x28, %edx
callq 0x42b0
movl 0x359568(%rip), %eax    # 0x3e1ff0
movl %eax, -0xf43bc(%rbp)
movl -0x68(%rbp), %eax
movl %eax, -0xf43b8(%rbp)
movq -0x58(%rbp), %rcx
movq %rsp, %rax
movq %rcx, 0x20(%rax)
movups -0x78(%rbp), %xmm0
movups -0x68(%rbp), %xmm1
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0xac460
movl %eax, -0xf43b4(%rbp)
movq -0x20(%rbp), %rax
movq 0x28(%rax), %rdi
callq 0x449f0
movl %eax, -0xf43b0(%rbp)
movq -0x30(%rbp), %rdi
callq 0x1a790
movl %eax, -0xf43ac(%rbp)
movq -0x30(%rbp), %rdi
callq 0x1a7e0
movl -0xf43bc(%rbp), %esi
movl -0xf43b8(%rbp), %r8d
movl -0xf43b4(%rbp), %r9d
movl -0xf43b0(%rbp), %r10d
movl -0xf43ac(%rbp), %eax
leaq 0x599a6(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x5f7d8(%rip), %rcx     # 0xe82f3
movl %r10d, (%rsp)
movl %eax, 0x8(%rsp)
movb $0x1, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0x98(%rbp)
leaq -0x7a200(%rbp), %rdi
leaq 0x65492(%rip), %rsi     # 0xedfda
callq 0x4220
movq -0x98(%rbp), %rdi
leaq -0x7a200(%rbp), %rsi
movl $0x1, %edx
callq 0xa5de0
movl 0x359485(%rip), %eax    # 0x3e1ff0
movl %eax, -0xf43c0(%rbp)
movq -0x98(%rbp), %rdi
callq 0xa5f80
movl -0xf43c0(%rbp), %esi
movl %eax, %r8d
leaq -0x7a200(%rbp), %r9
leaq 0x59921(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x5a115(%rip), %rcx     # 0xe2cb5
movb $0x0, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0x98(%rbp)
leaq -0x7a200(%rbp), %rdi
leaq 0x65415(%rip), %rsi     # 0xedfda
callq 0x4220
movq -0x98(%rbp), %rdi
leaq -0x7a200(%rbp), %rsi
movl $0x1, %edx
callq 0xa8a80
movl 0x359408(%rip), %eax    # 0x3e1ff0
movl %eax, -0xf43c4(%rbp)
movq -0x98(%rbp), %rdi
callq 0xa5f80
movl -0xf43c4(%rbp), %esi
movl %eax, %r8d
leaq -0x7a200(%rbp), %r9
leaq 0x598a4(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x5a098(%rip), %rcx     # 0xe2cb5
movb $0x0, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rax
movq %rax, -0x90(%rbp)
leaq -0x7a200(%rbp), %rdi
leaq 0x65398(%rip), %rsi     # 0xedfda
callq 0x4220
movq -0x90(%rbp), %rdi
leaq -0x7a200(%rbp), %rsi
movl $0x1, %edx
callq 0xc0670
movl 0x35938b(%rip), %eax    # 0x3e1ff0
movl %eax, -0xf43c8(%rbp)
movq -0x90(%rbp), %rdi
callq 0x28de0
movl -0xf43c8(%rbp), %esi
movl %eax, %r8d
leaq -0x7a200(%rbp), %r9
leaq 0x59827(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x5a01b(%rip), %rcx     # 0xe2cb5
movb $0x0, %al
callq 0x490c0
jmp 0x88d2f
movq -0x20(%rbp), %rsi
leaq -0xd0(%rbp), %rdi
movl $0x38, %edx
callq 0x42b0
leaq -0x7a200(%rbp), %rdi
leaq 0x65311(%rip), %rsi     # 0xedfda
callq 0x4220
leaq -0x7a200(%rbp), %rdi
movq -0xa0(%rbp), %rcx
movq %rsp, %rax
movq %rcx, 0x30(%rax)
movups -0xd0(%rbp), %xmm0
movups -0xc0(%rbp), %xmm1
movups -0xb0(%rbp), %xmm2
movups %xmm2, 0x20(%rax)
movups %xmm1, 0x10(%rax)
movups %xmm0, (%rax)
callq 0xa2c70
movl 0x3592e2(%rip), %esi    # 0x3e1ff0
leaq -0x7a200(%rbp), %r8
leaq 0x59799(%rip), %rdi     # 0xe24b5
movl $0x3, %edx
leaq 0x5bd71(%rip), %rcx     # 0xe4a99
movb $0x0, %al
callq 0x490c0
addq $0xf43f0, %rsp          # imm = 0xF43F0
popq %rbx
popq %r14
popq %rbp
retq
nopl (%rax,%rax)