// File: /workspace/github_cpp_makefile_star2_O2/openflightmaps[P]ofm2xplane/main.cpp
// Function: write_coordinatesC(rapidxml::xml_node<char>*, std::basic_ofstream<char, std::char_traits<char>>&, int, int)
void write_coordinatesC(xml_node<> *source, ofstream &out, int line, int light)
{
    // Same as write_coordinates(), but ending with a closed loop.
    // Extracting coordinates 
    string s(source->value());
    size_t l=0,r=-1, ll, rr;
    int c=0;
    long double x,y,bx,by,n;
    long double shift, factor, exponent;
    int last;
    int ex;
    
    long double area=0;
    
    long double x1, y1, x2, y2, x3, y3, x4, y4;
    long double t, c1, c2;
    
    shift=my_stold(string(def->first_node("others")->first_node("Bezier")->first_node("Shift")->value()));
    factor=my_stold(string(def->first_node("others")->first_node("Bezier")->first_node("Factor")->value()));
    exponent=my_stold(string(def->first_node("others")->first_node("Bezier")->first_node("Exp")->value()));
    
    while(true)
    {
        l=s.find_first_of("1234567890.",r+1);
        r=s.find_first_not_of("1234567890.",l)-1;
        c++;
        if(r==s.npos-1)
            break;
    }
    c--;

    long double *coor=new long double[c];
    l=0;
    r=-1;
    
    for(int i=0;i<c;i++)
    {
        l=s.find_first_of("1234567890.",r+1);
        r=s.find_first_not_of("11234567890.",l)-1;
        coor[i]=my_stold(s.substr(l,r-l+1));
    }
    for(int i=0;i<c-2;i=i+6)
        area+=coor[i]*coor[i+7]-coor[i+6]*coor[i+1];
    area-=coor[0]*coor[c-1] - coor[1]*coor[c-2];
    
    
    if(area<0)
    {
        last=6;
        while(coor[last]==coor[last-6] && coor[last+1]==coor[last-5])
            last+=6;
        //cout << "Correction of direction!" << endl;
        for(int i=c-2;i>0;i=i-6)
        {
            /*x1=coor[i], y1=coor[i+1], 
            x2=coor[i-2], y2=coor[i-1],
            x3=coor[i-4], y3=coor[i-3], 
            x4=coor[i-6], y4=coor[i-5];*/
            if(coor[i]==coor[i-6] && coor[i+1]==coor[i-5])
                continue;

            area=coor[i]*(coor[i-1]-coor[i-5])+coor[i-2]*(coor[i-3]-coor[i+1])+coor[i-4]*(coor[i-5]-coor[i-1])+coor[i-6]*(coor[i+1]-coor[i-3]);
            
            if(area==0 || isnan(area))
                n=1.0;
            else
            {
                frexpl(area,&ex);
                n=int(pow((ex+shift)*factor, exponent))+1.0;
            }
            for(long double j=0.0; j<=n; j=j+1.0)
            {
                /* if(i!=c-2 && j==0)
                    continue; */
                t=j/n;
                x=(1-t)*(1-t)*(1-t)*coor[i] + 
                3*(1-t)*(1-t)*t*coor[i-2] +
                3*(1-t)*t*t*coor[i-4] +
                t*t*t*coor[i-6];
                
                y=(1-t)*(1-t)*(1-t)*coor[i+1] +
                3*(1-t)*(1-t)*t*coor[i-1] + 
                3*(1-t)*t*t*coor[i-3] +
                t*t*t*coor[i-5];
                if(i>last || j<n)
                    out << "111 " << y << " " << x << " ";    
                else
                    out << "113 " << y << " " << x << " ";
                if(line!=0)
                    out << line << " ";
                if(light!=0)
                    out << light << " ";
                out << endl;
            }
        }
    }
    else
    {
        //cout << "Good direction!" << endl;
        last=c-8;
        while(coor[last]==coor[last+6] && coor[last+1]==coor[last+7])
            last-=6;
        for(int i=0;i<c-2;i=i+6)
        {
            /*x1=coor[i], y1=coor[i+1], 
            x2=coor[i+2], y2=coor[i+3],
            x3=coor[i+4], y3=coor[i+5], 
            x4=coor[i+6], y4=coor[i+7];*/
            if(coor[i]==coor[i+6] && coor[i+1]==coor[i+7])
                continue;
            
            area=coor[i]*(coor[i+3]-coor[i+7])+coor[i+2]*(coor[i+5]-coor[i+1])+coor[i+4]*(coor[i+7]-coor[i+3])+coor[i+6]*(coor[i+1]-coor[i+5]);

            if(area==0 || isnan(area))
                n=1;
            else
            {
                frexpl(area,&ex);
                n=int(pow((ex+shift)*factor, exponent))+1.0;
            }
            
            for(long double j=0.0; j<=n; j=j+1)
            {
                /* if(j==0 && i!=0)
                    continue; */
                t=j/n;
                
                x=(1-t)*(1-t)*(1-t)*coor[i] + 
                3*(1-t)*(1-t)*t*coor[i+2] +
                3*(1-t)*t*t*coor[i+4] +
                t*t*t*coor[i+6];
                
                y=(1-t)*(1-t)*(1-t)*coor[i+1] +
                3*(1-t)*(1-t)*t*coor[i+3] + 
                3*(1-t)*t*t*coor[i+5] +
                t*t*t*coor[i+7];
                
                if(i<last || j<n)
                    out << "111 " << y << " " << x << " ";
                else
                    out << "113 " << y << " " << x << " ";
                if(line!=0)
                    out << line << " ";
                if(light!=0)
                    out << light << " ";
                out << endl;
            }
        }
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x208, %rsp            # imm = 0x208
movl %ecx, -0x34(%rbp)
movl %edx, -0x38(%rbp)
movq %rsi, %rbx
movq 0x8(%rdi), %rsi
testq %rsi, %rsi
leaq 0x8492(%rip), %r12      # 0xd1f8
cmoveq %r12, %rsi
leaq -0x188(%rbp), %rdi
leaq -0x3c(%rbp), %rdx
callq 0x6f24
movq 0x846f(%rip), %rdi      # 0xd1f0
leaq 0x4775(%rip), %rsi      # 0x94fd
pushq $0x1
popq %rcx
xorl %edx, %edx
callq 0x6d52
leaq 0x4792(%rip), %rsi      # 0x952b
pushq $0x1
popq %rcx
movq %rax, %rdi
xorl %edx, %edx
callq 0x6d52
leaq 0x4785(%rip), %rsi      # 0x9532
pushq $0x1
popq %rcx
movq %rax, %rdi
xorl %edx, %edx
callq 0x6d52
movq 0x8(%rax), %rsi
testq %rsi, %rsi
cmoveq %r12, %rsi
leaq -0x1e8(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x6f24
leaq -0x1e8(%rbp), %rdi
xorl %esi, %esi
callq 0x64c4
fstpt -0x14c(%rbp)
leaq -0x1e8(%rbp), %rdi
callq 0x20d0
movq 0x83f4(%rip), %rdi      # 0xd1f0
leaq 0x46fa(%rip), %rsi      # 0x94fd
pushq $0x1
popq %rcx
xorl %edx, %edx
callq 0x6d52
leaq 0x4717(%rip), %rsi      # 0x952b
pushq $0x1
popq %rcx
movq %rax, %rdi
xorl %edx, %edx
callq 0x6d52
leaq 0x4710(%rip), %rsi      # 0x9538
pushq $0x1
popq %rcx
movq %rax, %rdi
xorl %edx, %edx
callq 0x6d52
movq 0x8(%rax), %rsi
testq %rsi, %rsi
cmoveq %r12, %rsi
leaq -0x1c8(%rbp), %rdi
leaq -0x29(%rbp), %rdx
callq 0x6f24
leaq -0x1c8(%rbp), %rdi
xorl %esi, %esi
callq 0x64c4
fstpt -0x140(%rbp)
leaq -0x1c8(%rbp), %rdi
callq 0x20d0
movq 0x8379(%rip), %rdi      # 0xd1f0
leaq 0x467f(%rip), %rsi      # 0x94fd
pushq $0x1
popq %rcx
xorl %edx, %edx
callq 0x6d52
leaq 0x469c(%rip), %rsi      # 0x952b
pushq $0x1
popq %rcx
movq %rax, %rdi
xorl %edx, %edx
callq 0x6d52
leaq 0x469c(%rip), %rsi      # 0x953f
pushq $0x1
popq %rcx
movq %rax, %rdi
xorl %edx, %edx
callq 0x6d52
movq 0x8(%rax), %rax
testq %rax, %rax
cmovneq %rax, %r12
leaq -0x1a8(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %r12, %rsi
callq 0x6f24
movq %rbx, -0x158(%rbp)
leaq -0x1a8(%rbp), %rdi
xorl %esi, %esi
callq 0x64c4
fstpt -0x134(%rbp)
leaq -0x1a8(%rbp), %rdi
callq 0x20d0
pushq $-0x10
popq %rbx
pushq $-0x1
popq %r14
movabsq $-0x900000000, %r13     # imm = 0xFFFFFFF700000000
xorl %eax, %eax
leaq -0x188(%rbp), %r12
movabsq $0x100000000, %rdx      # imm = 0x100000000
addq %rdx, %r13
movq %r12, %rdi
leaq 0x45ef(%rip), %r15      # 0x9515
movq %r15, %rsi
movq %rax, %rdx
callq 0x2100
movq %r12, %rdi
movq %r15, %rsi
movq %rax, %rdx
callq 0x2150
addq $0x10, %rbx
incq %r14
cmpq $-0x1, %rax
jne 0x4f0f
movq %r13, -0x58(%rbp)
movq %rbx, -0x70(%rbp)
movq %rbx, %rdi
callq 0x2030
leaq -0x2(%r14), %rcx
movq %rcx, -0x128(%rbp)
xorl %r12d, %r12d
leaq -0x208(%rbp), %rbx
movq %rax, -0x80(%rbp)
movq %rax, %r15
movq %r14, -0x78(%rbp)
subq $0x1, %r14
jb 0x4fe7
leaq -0x188(%rbp), %rdi
leaq 0x4585(%rip), %rsi      # 0x9515
movq %r12, %rdx
callq 0x2100
movq %rax, %r13
leaq -0x188(%rbp), %rdi
leaq 0x456b(%rip), %rsi      # 0x9514
movq %rax, %rdx
callq 0x2150
movq %rax, %r12
movq %rax, %rcx
subq %r13, %rcx
movq %rbx, %rdi
leaq -0x188(%rbp), %rsi
movq %r13, %rdx
callq 0x21e0
movq %rbx, %rdi
xorl %esi, %esi
callq 0x64c4
fstpt (%r15)
movq %rbx, %rdi
callq 0x20d0
addq $0x10, %r15
jmp 0x4f7c
movq -0x78(%rbp), %rsi
addq $-0x2, %rsi
movq -0x80(%rbp), %rdx
leaq 0x70(%rdx), %rax
fldz
xorl %ecx, %ecx
movq -0x58(%rbp), %r14
movq -0x158(%rbp), %r15
cmpq %rsi, %rcx
jge 0x502a
fldt -0x70(%rax)
fldt (%rax)
addq $0x6, %rcx
fldt -0x10(%rax)
fldt -0x60(%rax)
fmulp %st, %st(1)
fxch %st(2)
fmulp %st, %st(1)
fsubp %st, %st(1)
faddp %st, %st(1)
addq $0x60, %rax
jmp 0x5006
fldt (%rdx)
movq -0x70(%rbp), %rax
fldt -0x10(%rdx,%rax)
fldt 0x10(%rdx)
fldt -0x20(%rdx,%rax)
fmulp %st, %st(1)
fld %st(2)
fstpt -0x64(%rbp)
fxch %st(2)
fmulp %st, %st(1)
fsubp %st, %st(1)
fucompi %st(1), %st
fstp %st(0)
jbe 0x5089
movabsq $0x600000000, %rax      # imm = 0x600000000
leaq 0x70(%rdx), %rcx
movq %rax, -0x48(%rbp)
fldt -0x10(%rcx)
fldt -0x70(%rcx)
fxch %st(1)
fucompi %st(1), %st
fstp %st(0)
jne 0x50d2
jp 0x50d2
fldt (%rcx)
fldt -0x60(%rcx)
fxch %st(1)
fucompi %st(1), %st
fstp %st(0)
jne 0x50d2
jp 0x50d2
addq %rax, -0x48(%rbp)
addq $0x60, %rcx
jmp 0x5060
addq %rdx, %rax
addq $-0x10, %rax
movabsq $-0x600000000, %rcx     # imm = 0xFFFFFFFA00000000
fldt -0x70(%rax)
fldt -0x10(%rax)
fxch %st(1)
fucompi %st(1), %st
fstp %st(0)
jne 0x53b9
jp 0x53b9
fldt -0x60(%rax)
fldt (%rax)
fxch %st(1)
fucompi %st(1), %st
fstp %st(0)
jne 0x53b9
jp 0x53b9
addq %rcx, %r14
addq $-0x60, %rax
jmp 0x509a
sarq $0x20, -0x48(%rbp)
leaq 0x4465(%rip), %r14      # 0x9543
leaq 0x4169(%rip), %r13      # 0x924e
fldz
fldz
fstp %st(1)
fstp %st(0)
movq -0x128(%rbp), %r12
testq %r12, %r12
fldz
jle 0x56a7
fstp %st(0)
movq %r12, %rax
shlq $0x4, %rax
movq -0x80(%rbp), %rcx
leaq (%rcx,%rax), %rbx
fldt (%rcx,%rax)
leaq -0x6(%r12), %rax
movq %rax, -0x128(%rbp)
shlq $0x4, %rax
fldt (%rcx,%rax)
fld %st(1)
fstpt -0x98(%rbp)
fld %st(0)
fstpt -0x8c(%rbp)
fxch %st(1)
fucompi %st(1), %st
fstp %st(0)
jne 0x5152
jp 0x5152
fldt 0x10(%rbx)
fldt -0x50(%rbx)
fxch %st(1)
fucomi %st(1), %st
fxch %st(1)
jne 0x515a
jnp 0x50e9
jmp 0x515a
fldt -0x50(%rbx)
fldt 0x10(%rbx)
fxch %st(1)
fldt -0x10(%rbx)
fld %st(1)
fxch %st(2)
fsubr %st(1), %st
fldt -0x20(%rbx)
fldt -0x30(%rbx)
fld %st(0)
fsub %st(6), %st
fld %st(2)
fstpt -0xf0(%rbp)
fmulp %st, %st(2)
fldt -0x98(%rbp)
fmulp %st, %st(3)
fxch %st(2)
faddp %st, %st(1)
fldt -0x40(%rbx)
fld %st(4)
fstpt -0xd8(%rbp)
fld %st(3)
fstpt -0xcc(%rbp)
fxch %st(4)
fsubp %st, %st(3)
fld %st(3)
fstpt -0xe4(%rbp)
fxch %st(3)
fmulp %st, %st(2)
fxch %st(1)
faddp %st, %st(2)
fld %st(0)
fstpt -0xc0(%rbp)
fsubrp %st, %st(2)
fldt -0x8c(%rbp)
fmulp %st, %st(2)
faddp %st, %st(1)
fldz
fxch %st(1)
fucomi %st(1), %st
fstp %st(1)
fld1
je 0x5247
fstp %st(0)
fstpt (%rsp)
leaq -0x3c(%rbp), %rdi
callq 0x2280
fstp %st(0)
movl -0x3c(%rbp), %eax
movl %eax, -0x9c(%rbp)
fldt -0x14c(%rbp)
fiaddl -0x9c(%rbp)
fldt -0x140(%rbp)
fmulp %st, %st(1)
fldt -0x134(%rbp)
fstpt 0x10(%rsp)
fstpt (%rsp)
callq 0x22e0
fnstcw -0x2e(%rbp)
movzwl -0x2e(%rbp), %eax
orl $0xc00, %eax            # imm = 0xC00
movw %ax, -0x40(%rbp)
fldcw -0x40(%rbp)
fistpl -0xa0(%rbp)
fldcw -0x2e(%rbp)
cvtsi2sdl -0xa0(%rbp), %xmm0
addsd 0x3df3(%rip), %xmm0     # 0x9028
movsd %xmm0, -0x160(%rbp)
fldl -0x160(%rbp)
fldz
fxch %st(1)
fstp %st(1)
fldz
fld %st(1)
fstpt -0xb4(%rbp)
fxch %st(1)
fucomi %st(1), %st
jb 0x53b0
leaq 0x42e4(%rip), %rsi      # 0x9548
cmovaq %r14, %rsi
cmpq -0x48(%rbp), %r12
fld %st(1)
fstpt -0x64(%rbp)
fdivrp %st, %st(1)
fld1
fsub %st(1), %st
fld %st(0)
fmul %st(1), %st
fmul %st(1), %st
fld %st(1)
fmuls 0x3dc7(%rip)            # 0x904c
fmul %st, %st(2)
fxch %st(2)
fmul %st(3), %st
fldt -0xf0(%rbp)
fld %st(1)
fstpt -0x70(%rbp)
fmulp %st, %st(1)
fldt -0x98(%rbp)
fld %st(2)
fstpt -0x58(%rbp)
fmulp %st, %st(2)
faddp %st, %st(1)
fxch %st(1)
fmul %st(2), %st
fmul %st(2), %st
fldt -0xe4(%rbp)
fld %st(1)
fstpt -0x120(%rbp)
fmulp %st, %st(1)
faddp %st, %st(1)
fld %st(1)
fmul %st(2), %st
fmulp %st, %st(2)
fldt -0x8c(%rbp)
fld %st(2)
fstpt -0x114(%rbp)
fmulp %st, %st(2)
faddp %st, %st(1)
fstpt -0xfc(%rbp)
fldt 0x10(%rbx)
fstpt -0x108(%rbp)
cmovgq %r14, %rsi
movq %r15, %rdi
callq 0x21b0
fldt -0xcc(%rbp)
fldt -0x70(%rbp)
fmulp %st, %st(1)
fldt -0x58(%rbp)
fldt -0x108(%rbp)
fmulp %st, %st(1)
faddp %st, %st(1)
fldt -0xc0(%rbp)
fldt -0x120(%rbp)
fmulp %st, %st(1)
faddp %st, %st(1)
fldt -0xd8(%rbp)
fldt -0x114(%rbp)
fmulp %st, %st(1)
faddp %st, %st(1)
fstpt (%rsp)
movq %rax, %rdi
callq 0x2110
movq %rax, %rdi
movq %r13, %rsi
callq 0x21b0
fldt -0xfc(%rbp)
fstpt (%rsp)
movq %rax, %rdi
callq 0x2110
movq %rax, %rdi
movq %r13, %rsi
callq 0x21b0
cmpl $0x0, -0x38(%rbp)
je 0x5378
movq %r15, %rdi
movl -0x38(%rbp), %esi
callq 0x2310
movq %rax, %rdi
movq %r13, %rsi
callq 0x21b0
cmpl $0x0, -0x34(%rbp)
je 0x5394
movq %r15, %rdi
movl -0x34(%rbp), %esi
callq 0x2310
movq %rax, %rdi
movq %r13, %rsi
callq 0x21b0
movq %r15, %rdi
callq 0x20e0
fld1
fldt -0x64(%rbp)
faddp %st, %st(1)
fldt -0xb4(%rbp)
fxch %st(1)
jmp 0x5253
fstp %st(1)
fstp %st(0)
jmp 0x50e5
movq %rsi, -0x78(%rbp)
sarq $0x20, %r14
movq $0x0, -0x48(%rbp)
leaq 0x4173(%rip), %rbx      # 0x9543
leaq 0x3e77(%rip), %r13      # 0x924e
fldz
fldz
fldz
fstp %st(2)
fstp %st(0)
fstp %st(0)
movq -0x48(%rbp), %r12
fldt -0x64(%rbp)
cmpq -0x78(%rbp), %r12
jge 0x56a7
movq %r12, %rcx
shlq $0x4, %rcx
movq -0x80(%rbp), %rsi
leaq (%rsi,%rcx), %rax
leaq 0x6(%r12), %rdx
movq %rdx, -0x48(%rbp)
shlq $0x4, %rdx
fldt (%rsi,%rdx)
fld %st(0)
fstpt -0x64(%rbp)
fxch %st(1)
fucomi %st(1), %st
fstp %st(1)
jne 0x5437
jp 0x5437
fldt 0x10(%rsi,%rcx)
fldt 0x70(%rax)
fxch %st(1)
fucomi %st(1), %st
fxch %st(1)
fxch %st(2)
jne 0x5442
jnp 0x53dd
jmp 0x5442
fldt 0x70(%rax)
fldt 0x10(%rsi,%rcx)
fxch %st(1)
fxch %st(2)
fldt 0x30(%rax)
fld %st(3)
fxch %st(4)
fsubr %st(1), %st
fstpt -0x58(%rbp)
fldt 0x20(%rax)
fldt 0x50(%rax)
fld %st(4)
fxch %st(5)
fsubr %st(1), %st
fld %st(2)
fstpt -0x8c(%rbp)
fmulp %st, %st(2)
fld %st(3)
fstpt -0x98(%rbp)
fldt -0x58(%rbp)
fmulp %st, %st(4)
fxch %st(3)
faddp %st, %st(1)
fldt 0x40(%rax)
fld %st(5)
fstpt -0xd8(%rbp)
fld %st(2)
fstpt -0xcc(%rbp)
fxch %st(5)
fsubp %st, %st(2)
fld %st(4)
fstpt -0xf0(%rbp)
fxch %st(4)
fmulp %st, %st(1)
faddp %st, %st(3)
fld %st(1)
fstpt -0xe4(%rbp)
fld %st(0)
fstpt -0xc0(%rbp)
fsubrp %st, %st(1)
fldt -0x64(%rbp)
fmulp %st, %st(1)
faddp %st, %st(1)
fldz
fxch %st(1)
fucomi %st(1), %st
fstp %st(1)
fld1
je 0x553c
fstp %st(0)
fstpt (%rsp)
leaq -0x3c(%rbp), %rdi
callq 0x2280
fstp %st(0)
movl -0x3c(%rbp), %eax
movl %eax, -0xa4(%rbp)
fldt -0x14c(%rbp)
fiaddl -0xa4(%rbp)
fldt -0x140(%rbp)
fmulp %st, %st(1)
fldt -0x134(%rbp)
fstpt 0x10(%rsp)
fstpt (%rsp)
callq 0x22e0
fnstcw -0x2c(%rbp)
movzwl -0x2c(%rbp), %eax
orl $0xc00, %eax            # imm = 0xC00
movw %ax, -0x3e(%rbp)
fldcw -0x3e(%rbp)
fistpl -0xa8(%rbp)
fldcw -0x2c(%rbp)
cvtsi2sdl -0xa8(%rbp), %xmm0
addsd 0x3afe(%rip), %xmm0     # 0x9028
movsd %xmm0, -0x168(%rbp)
fldl -0x168(%rbp)
fldz
fxch %st(1)
fstp %st(1)
fldz
fld %st(1)
fstpt -0xb4(%rbp)
fxch %st(1)
fucomi %st(1), %st
jb 0x569e
leaq 0x3fef(%rip), %rsi      # 0x9548
cmovaq %rbx, %rsi
fld %st(1)
fstpt -0xfc(%rbp)
fdivrp %st, %st(1)
fld1
fsub %st(1), %st
fld %st(0)
fmul %st(1), %st
fmul %st(1), %st
fld %st(1)
fmuls 0x3ad3(%rip)            # 0x904c
fmul %st, %st(2)
fxch %st(2)
fmul %st(3), %st
fldt -0x8c(%rbp)
fld %st(1)
fstpt -0x70(%rbp)
fmulp %st, %st(1)
fldt -0x98(%rbp)
fld %st(2)
fstpt -0x58(%rbp)
fmulp %st, %st(2)
faddp %st, %st(1)
fxch %st(1)
fmul %st(2), %st
fmul %st(2), %st
fldt -0xf0(%rbp)
fld %st(1)
fstpt -0x120(%rbp)
fmulp %st, %st(1)
faddp %st, %st(1)
fld %st(1)
fmul %st(2), %st
fmulp %st, %st(2)
fldt -0x64(%rbp)
fld %st(2)
fstpt -0x114(%rbp)
fmulp %st, %st(2)
faddp %st, %st(1)
fstpt -0x108(%rbp)
cmpq %r14, %r12
cmovlq %rbx, %rsi
movq %r15, %rdi
callq 0x21b0
fldt -0xcc(%rbp)
fldt -0x70(%rbp)
fmulp %st, %st(1)
fldt -0xe4(%rbp)
fldt -0x58(%rbp)
fmulp %st, %st(1)
faddp %st, %st(1)
fldt -0xc0(%rbp)
fldt -0x120(%rbp)
fmulp %st, %st(1)
faddp %st, %st(1)
fldt -0xd8(%rbp)
fldt -0x114(%rbp)
fmulp %st, %st(1)
faddp %st, %st(1)
fstpt (%rsp)
movq %rax, %rdi
callq 0x2110
movq %rax, %rdi
movq %r13, %rsi
callq 0x21b0
fldt -0x108(%rbp)
fstpt (%rsp)
movq %rax, %rdi
callq 0x2110
movq %rax, %rdi
movq %r13, %rsi
callq 0x21b0
cmpl $0x0, -0x38(%rbp)
je 0x5663
movq %r15, %rdi
movl -0x38(%rbp), %esi
callq 0x2310
movq %rax, %rdi
movq %r13, %rsi
callq 0x21b0
cmpl $0x0, -0x34(%rbp)
je 0x567f
movq %r15, %rdi
movl -0x34(%rbp), %esi
callq 0x2310
movq %rax, %rdi
movq %r13, %rsi
callq 0x21b0
movq %r15, %rdi
callq 0x20e0
fld1
fldt -0xfc(%rbp)
faddp %st, %st(1)
fldt -0xb4(%rbp)
fxch %st(1)
jmp 0x5548
fstp %st(1)
fstp %st(0)
jmp 0x53d7
fstp %st(0)
leaq -0x188(%rbp), %rdi
callq 0x20d0
addq $0x208, %rsp            # imm = 0x208
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x570c
movq %rax, %rbx
leaq -0x1a8(%rbp), %rdi
jmp 0x5703
jmp 0x570c
movq %rax, %rbx
leaq -0x1c8(%rbp), %rdi
jmp 0x5703
jmp 0x570c
movq %rax, %rbx
leaq -0x1e8(%rbp), %rdi
jmp 0x5703
jmp 0x570c
jmp 0x570c
jmp 0x570c
fstp %st(0)
movq %rax, %rbx
leaq -0x208(%rbp), %rdi
callq 0x20d0
jmp 0x570f
jmp 0x570c
movq %rax, %rbx
leaq -0x188(%rbp), %rdi
callq 0x20d0
movq %rbx, %rdi
callq 0x2330