// File: /workspace/github_c_makefile_star2_O0/olcaytaner[P]Isell/vc.c
// Function: decisiontree_vc_dimension_quadratic1
double decisiontree_vc_dimension_quadratic1(double* testdata)
{
 /*Last Changed 01.10.2006*/
 const double mean[5] = {596.750000,38.500000,85.250000,5.500000,15.500000};
 const double variance[5] = {443780.422241,1054.565217,4882.629599,8.277592,75.167224};
 const double weights0[6] = {92.533543 ,1.971860 ,12.871168 ,50.327602 ,6.863087 ,4.789140 };
 double sum, weights_j, x_j, output;
 int i, j;
 double testdataconverted[5];
 for (i = 0; i < 5; i++)
   testdataconverted[i] = (testdata[i] - mean[i]) / sqrt(variance[i]);
 sum = weights0[0];
 for (j = 1; j < 6; j++)
  {
   weights_j = weights0[j];
   x_j = testdataconverted[j - 1];
   sum = sum + weights_j * x_j;
  }
 output = sum;
 return output;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xf0, %rsp
movq %rdi, -0x8(%rbp)
leaq -0x30(%rbp), %rdi
xorl %esi, %esi
movl $0x28, %edx
callq 0x4050
movsd 0xee69(%rip), %xmm0     # 0xeeb20
movsd %xmm0, -0x30(%rbp)
movsd 0xee54(%rip), %xmm0     # 0xeeb18
movsd %xmm0, -0x28(%rbp)
movsd 0xee3f(%rip), %xmm0     # 0xeeb10
movsd %xmm0, -0x20(%rbp)
movsd 0x4932(%rip), %xmm0     # 0xe4610
movsd %xmm0, -0x18(%rbp)
movsd 0xee1d(%rip), %xmm0     # 0xeeb08
movsd %xmm0, -0x10(%rbp)
leaq -0x60(%rbp), %rdi
xorl %esi, %esi
movl $0x28, %edx
callq 0x4050
movsd 0xedf8(%rip), %xmm0     # 0xeeb00
movsd %xmm0, -0x60(%rbp)
movsd 0xede3(%rip), %xmm0     # 0xeeaf8
movsd %xmm0, -0x58(%rbp)
movsd 0xedce(%rip), %xmm0     # 0xeeaf0
movsd %xmm0, -0x50(%rbp)
movsd 0xedb9(%rip), %xmm0     # 0xeeae8
movsd %xmm0, -0x48(%rbp)
movsd 0xeda4(%rip), %xmm0     # 0xeeae0
movsd %xmm0, -0x40(%rbp)
leaq -0x90(%rbp), %rdi
xorl %esi, %esi
movl $0x30, %edx
callq 0x4050
movsd 0xed7c(%rip), %xmm0     # 0xeead8
movsd %xmm0, -0x90(%rbp)
movsd 0xed64(%rip), %xmm0     # 0xeead0
movsd %xmm0, -0x88(%rbp)
movsd 0xed4c(%rip), %xmm0     # 0xeeac8
movsd %xmm0, -0x80(%rbp)
movsd 0xed37(%rip), %xmm0     # 0xeeac0
movsd %xmm0, -0x78(%rbp)
movsd 0xed22(%rip), %xmm0     # 0xeeab8
movsd %xmm0, -0x70(%rbp)
movsd 0xed0d(%rip), %xmm0     # 0xeeab0
movsd %xmm0, -0x68(%rbp)
movl $0x0, -0xb4(%rbp)
cmpl $0x5, -0xb4(%rbp)
jge 0xdfe22
movq -0x8(%rbp), %rax
movslq -0xb4(%rbp), %rcx
movsd (%rax,%rcx,8), %xmm0
movslq -0xb4(%rbp), %rax
subsd -0x30(%rbp,%rax,8), %xmm0
movsd %xmm0, -0xe8(%rbp)
movslq -0xb4(%rbp), %rax
movsd -0x60(%rbp,%rax,8), %xmm0
callq 0x42a0
movaps %xmm0, %xmm1
movsd -0xe8(%rbp), %xmm0
divsd %xmm1, %xmm0
movslq -0xb4(%rbp), %rax
movsd %xmm0, -0xe0(%rbp,%rax,8)
movl -0xb4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xb4(%rbp)
jmp 0xdfdb2
movsd -0x90(%rbp), %xmm0
movsd %xmm0, -0x98(%rbp)
movl $0x1, -0xb8(%rbp)
cmpl $0x6, -0xb8(%rbp)
jge 0xdfeb2
movslq -0xb8(%rbp), %rax
movsd -0x90(%rbp,%rax,8), %xmm0
movsd %xmm0, -0xa0(%rbp)
movl -0xb8(%rbp), %eax
subl $0x1, %eax
cltq
movsd -0xe0(%rbp,%rax,8), %xmm0
movsd %xmm0, -0xa8(%rbp)
movsd -0x98(%rbp), %xmm1
movsd -0xa0(%rbp), %xmm0
movsd -0xa8(%rbp), %xmm2
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, -0x98(%rbp)
movl -0xb8(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xb8(%rbp)
jmp 0xdfe3c
movsd -0x98(%rbp), %xmm0
movsd %xmm0, -0xb0(%rbp)
movsd -0xb0(%rbp), %xmm0
addq $0xf0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)