I've noticed that when using my inline assembly code is either incredibly slow or stops compared to my C++ code which finishes very quickly. I'm curious as to why to happens when I call upon the inline assembler in a different function as opposed to having the assembler where the function was called. I tested both ways and found that my program did not freeze when omitting the function.
    __asm {
    push dword ptr[rw] //rw is a C++ floating-point variable
    fld[esp] // Using the stack as temporary storage in order to insert it into the FPU
    add esp, 4 //preserving the memory
    push dword ptr[lwB]
    fld[esp]
    add esp, 4
    fsubp ST(1), ST(0) // Subtracting rw - lwB
    push dword ptr[sp]
    fld[esp]
    add esp, 4
    fdivp ST(1), ST(0) // Dividing previous resultant by span -> (rw - lwB) / sp
    push dword ptr[dimen]
    fld[esp]
    add esp, 4
    fmulp ST(1), ST(0) // Multiplying previous resultant by dimension > ((rw - lwB) / (sp)* dimen)
    sub esp, 4 // Allocating space in order to save result temporarily to ram then to eax then to a C++ variable
    fstp[esp]
    pop eax 
    mov fCord, eax
    }
    return (int)fCord; //fCord is also a floating-point C++ variable
The much faster C++ Code:
    return (int)(((rw - lwB) / (sp)* dimen));
 
    