Function at 0xb37330
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
mov ebx, dword [esp + 0x14]
fld dword [esp + 0x20]
neg ecx
shl ecx, 2
test ebx, ebx
fld dword [eax + ecx - 8]
fld dword [eax + ecx - 4]
fld dword [eax + ecx]
fld dword [eax + ecx + 4]
jle 0xb37322
mov edx, dword [esp + 8]
lea ebx, [eax + ebx*4]
jmp 0xb372e8
fxch st(1)
fxch st(2)
fxch st(3)
fld dword [eax + ecx + 8]
add eax, 4
add edx, 4
fld dword [esp + 0x18]
fmul st(3)
fadd dword [eax - 4]
fld st(2)
fadd st(5)
fmul dword [esp + 0x1c]
faddp st(1)
fxch st(5)
fadd st(1)
fmul st(6)
faddp st(5)
fxch st(4)
fstp dword [edx - 4]
cmp ebx, eax
jne 0xb372e2
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
jmp 0xb3732c
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
pop ebx
ret
push ebp
push edi
push esi
push ebx
sub esp, 0x4c
mov eax, dword [esp + 0x64]
fld dword [esp + 0x74]
mov esi, dword [esp + 0x7c]
mov ecx, dword [esp + 0x60]
fld dword [esp + 0x78]
mov edx, dword [esp + 0x68]
mov ebx, eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x70]
fst dword [esp + 0x28]
mov dword [esp + 0x1c], esi
mov edi, dword [esp + 0x6c]
mov esi, dword [esp + 0x80]
mov ebp, dword [esp + 0x88]
mov dword [esp + 0x30], eax
fldz
mov eax, dword [esp + 0x84]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x3c], eax
fucom st(2)
fnstsw ax
sahf
setne al
setnp byte [esp + 8]
sub eax, 1
test byte [esp + 8], al
je 0xb373e0
fucompp
fnstsw ax
sahf
setne al
setnp byte [esp + 8]
sub eax, 1
test byte [esp + 8], al
je 0xb373e4
fstp st(0)
cmp ebx, ecx
je 0xb375d4
mov eax, dword [esp + 0x30]
shl eax, 2
mov dword [esp + 0x68], eax
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
jmp sub.msvcrt.dll_memmove
fstp st(0)
fstp st(0)
cmp edx, 0xf
jl 0xb375c0
cmp edi, 0xf
mov dword [esp + 0x34], edi
jl 0xb375b0
lea eax, [esi + esi*2]
fld dword [esp + 0x28]
shl eax, 2
cmp edx, dword [esp + 0x34]
fld dword [eax + 0xe02ee0]
fmul st(1)
fstp dword [esp + 0x10]
fld st(0)
fmul dword [eax + 0xe02ee4]
fstp dword [esp + 0x14]
fld dword [eax + 0xe02ee8]
sete al
cmp dword [esp + 0x1c], esi
fmul st(1)
sete bl
test al, bl
fstp dword [esp + 0x18]
je 0xb37460
fucomp st(1)
fnstsw ax
sahf
setnp al
mov esi, eax
setne al
sub eax, 1
mov ebx, esi
test bl, al
jne 0xb375e0
jmp 0xb37462
fstp st(0)
test ebp, ebp
jle 0xb37648
mov ebx, dword [esp + 0x34]
mov edi, dword [esp + 0x2c]
xor esi, esi
mov eax, ebx
shl eax, 2
neg eax
fld dword [edi + eax + 4]
fld dword [edi + eax]
fstp dword [esp + 8]
fld dword [edi + eax - 4]
fld dword [edi + eax - 8]
mov eax, dword [esp + 0x1c]
fstp dword [esp + 0xc]
lea eax, [eax + eax*2]
shl eax, 2
fld dword [eax + 0xe02ee0]
fmul st(3)
fstp dword [esp + 0x1c]
fld dword [eax + 0xe02ee4]
fmul st(3)
fstp dword [esp + 0x20]
fxch st(2)
fmul dword [eax + 0xe02ee8]
lea eax, [edx*4]
sub edi, eax
mov eax, edi
mov edi, edx
sub edi, ebx
mov ebx, dword [esp + 0x38]
fstp dword [esp + 0x24]
jmp 0xb374e1
fld dword [esp + 8]
fxch st(1)
fstp dword [esp + 8]
fxch st(1)
fld dword [eax + edi*4 + 8]
fld dword [ebx + esi*4]
fmul st(0)
fld st(0)
fsubr dword [0xe02f40]
fld dword [esp + 0x1c]
fmul st(1)
fmul dword [eax]
fadd dword [eax + edx*4]
add eax, 4
fld dword [eax]
fadd dword [eax - 8]
fld dword [esp + 0x20]
fmul st(3)
fmulp st(1)
faddp st(1)
fld dword [eax + 4]
fadd dword [eax - 0xc]
fxch st(2)
fmul dword [esp + 0x24]
fmulp st(2)
faddp st(1)
fld dword [esp + 0x10]
fmul st(2)
fmul dword [esp + 8]
faddp st(1)
fld dword [esp + 0x14]
fmul st(2)
fld st(4)
fadd st(6)
fmulp st(1)
faddp st(1)
fxch st(1)
fmul dword [esp + 0x18]
fld dword [esp + 0xc]
fadd st(3)
fmulp st(1)
faddp st(1)
fstp dword [ecx + esi*4]
fxch st(2)
add esi, 1
cmp ebp, esi
fstp dword [esp + 0xc]
jne 0xb374d5
fstp st(0)
fstp st(0)
mov edx, ebp
fldz
fld dword [esp + 0x28]
fucompp
fnstsw ax
sahf
jp 0xb375f0
jne 0xb375f0
mov ebx, dword [esp + 0x2c]
cmp ebx, ecx
je 0xb375d4
mov edx, dword [esp + 0x30]
lea eax, [ebp*4]
add ecx, eax
sub edx, ebp
mov dword [esp + 0x60], ecx
shl edx, 2
mov dword [esp + 0x68], edx
mov edx, ebx
add edx, eax
mov dword [esp + 0x64], edx
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
jmp sub.msvcrt.dll_memmove
mov dword [esp + 0x34], 0xf
jmp 0xb373fa
cmp edi, 0xf
mov edx, 0xf
mov dword [esp + 0x34], edi
jge 0xb373fa
jmp 0xb375b0
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret
fstp st(0)
xor ebp, ebp
xor edx, edx
jmp 0xb37563
fld dword [esp + 0x18]
mov edi, dword [esp + 0x30]
lea eax, [edx*4]
mov ebx, dword [esp + 0x3c]
fstp dword [esp + 0x78]
add ecx, eax
sub edi, edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x60], ecx
fld dword [esp + 0x14]
and ebx, 7
mov dword [esp + 0x6c], edi
fstp dword [esp + 0x74]
mov dword [esp + 0x68], edx
mov edx, dword [esp + 0x2c]
fld dword [esp + 0x10]
add edx, eax
mov eax, dword [ebx*4 + 0xe02fc0]
fstp dword [esp + 0x70]
mov dword [esp + 0x64], edx
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
jmp eax
fstp st(0)
xor edx, edx
jmp 0xb37563
push ebp
mov ebp, esp
push esi
push ebx
and esp, 0xfffffff0
sub esp, 0x10
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0x14]
movss xmm6, dword [ebp + 0x18]
mov eax, dword [ebp + 0xc]
shufps xmm6, xmm6, 0
neg esi
sub ebx, 3
shl esi, 2
test ebx, ebx
movaps xmmword [esp], xmm6
movss xmm7, dword [ebp + 0x20]
movss xmm6, dword [ebp + 0x1c]
movups xmm0, xmmword [eax + esi - 8]
jle 0xb37d9a
shufps xmm6, xmm6, 0
mov ecx, dword [ebp + 8]
xor edx, edx
shufps xmm7, xmm7, 0
add esi, 8
lea esi, [esi]
movups xmm3, xmmword [esi + eax]
add edx, 4
movaps xmm2, xmm0
add eax, 0x10
movaps xmm5, xmm0
add ecx, 0x10
shufps xmm2, xmm3, 0x4e
addps xmm0, xmm3
movups xmm4, xmmword [eax - 0x10]
movaps xmm1, xmm2
shufps xmm5, xmm2, 0x99
shufps xmm1, xmm3, 0x99
mulps xmm2, xmmword [esp]
addps xmm1, xmm5
mulps xmm0, xmm7
mulps xmm1, xmm6
addps xmm4, xmm2
addps xmm0, xmm1
addps xmm0, xmm4
movups xmmword [ecx - 0x10], xmm0
cmp edx, ebx
movaps xmm0, xmm3
jl 0xb37d50
lea esp, [ebp - 8]
pop ebx
pop esi
pop ebp
ret