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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18c
mov eax, dword [0x6e7024]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x178], eax
mov eax, dword [ebp + 0x28]
push ebx
cmp dword [eax + 0x10], 0
mov ebx, ecx
mov dword [ebp - 0x17c], ebx
jle 0x4efb6b
mov ecx, dword [ebp + 0x3c]
mov eax, dword [ebp + 0x40]
mov edx, 0xff
cmp cx, dx
cmova ecx, edx
cmp ax, dx
cmova eax, edx
movzx eax, ax
movzx ecx, cx
imul ecx, eax
mov eax, 0x80808081
mul ecx
mov ecx, dword [ebp + 0x38]
push esi
push edi
movzx eax, cl
shr edx, 7
movzx edi, dl
shl edi, 8
or edi, eax
mov eax, ecx
shr eax, 8
movzx eax, al
shr ecx, 0x10
shl edi, 8
or edi, eax
movzx eax, cl
shl edi, 8
or edi, eax
mov eax, dword [ebx + 0x14]
mov ebx, dword [ebx + 0xc]
lea ecx, [eax*8]
sub ecx, eax
mov dword [ebp - 0x174], ecx
mov ecx, dword [ebp + 0x28]
sub esp, 8
mov eax, dword [ecx + 8]
add eax, dword [ebp + 0x2c]
movd xmm1, dword [ecx + 0x10]
mov esi, dword [ecx + 0xc]
add esi, dword [ebp + 0x30]
movd xmm2, eax
mov eax, dword [ecx]
add eax, dword [ebp + 0xc]
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm2, xmm2
movd xmm0, esi
addss xmm1, xmm2
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x170], xmm1
movd xmm1, dword [ecx + 0x14]
cvtdq2ps xmm1, xmm1
movss dword [ebp - 0x158], xmm2
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x164], xmm1
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x160], xmm0
fld qword [ebp - 0x160]
fstp qword [esp]
call fcn.00631534
mov eax, dword [ebp + 0x28]
fstp qword [ebp - 0x184]
mov eax, dword [eax + 4]
add eax, dword [ebp + 0x10]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x160], xmm0
fld qword [ebp - 0x160]
fstp qword [esp]
call fcn.00631534
movsd xmm1, qword [ebp - 0x184]
fstp qword [ebp - 0x160]
movss xmm0, dword [ebp - 0x170]
subss xmm0, dword [ebp - 0x158]
cvtpd2ps xmm1, xmm1
addss xmm0, xmm1
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x16c], xmm0
fld qword [ebp - 0x16c]
fstp qword [esp]
call fcn.00631534
movss xmm0, dword [ebp - 0x164]
fstp qword [ebp - 0x18c]
movd xmm1, esi
cvtdq2ps xmm1, xmm1
subss xmm0, xmm1
movsd xmm1, qword [ebp - 0x160]
cvtpd2ps xmm1, xmm1
addss xmm0, xmm1
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x16c], xmm0
fld qword [ebp - 0x16c]
fstp qword [esp]
call fcn.00631534
movsd xmm4, qword [ebp - 0x184]
fstp qword [ebp - 0x16c]
movsd xmm1, qword [ebp - 0x16c]
movsd xmm3, qword [ebp - 0x160]
movsd xmm2, qword [ebp - 0x18c]
movss xmm0, dword [0x6ae4b4]
movss xmm5, dword [ebp - 0x158]
cvtpd2ps xmm1, xmm1
cvtpd2ps xmm4, xmm4
cvtpd2ps xmm3, xmm3
cvtpd2ps xmm2, xmm2
subss xmm4, xmm0
subss xmm3, xmm0
subss xmm2, xmm0
subss xmm1, xmm0
movss xmm0, dword [ebp + 0x34]
divss xmm5, xmm0
movss xmm6, dword [ebp - 0x170]
movss xmm7, dword [ebp - 0x164]
movss dword [ebp - 0x158], xmm5
movd xmm5, esi
mov esi, dword [ebp - 0x174]
cvtdq2ps xmm5, xmm5
divss xmm6, xmm0
divss xmm5, xmm0
divss xmm7, xmm0
movss xmm0, dword [ebp - 0x158]
movss dword [ebx + esi*4], xmm4
movss dword [ebx + esi*4 + 4], xmm3
mov dword [ebx + esi*4 + 8], 0
mov dword [ebx + esi*4 + 0xc], 0x3f800000
mov dword [ebx + esi*4 + 0x10], edi
movss dword [ebx + esi*4 + 0x14], xmm0
movss dword [ebx + esi*4 + 0x18], xmm5
movss dword [ebx + esi*4 + 0x1c], xmm2
movss dword [ebx + esi*4 + 0x20], xmm3
mov dword [ebx + esi*4 + 0x24], 0
mov dword [ebx + esi*4 + 0x28], 0x3f800000
mov dword [ebx + esi*4 + 0x2c], edi
movss dword [ebx + esi*4 + 0x30], xmm6
movss dword [ebx + esi*4 + 0x34], xmm5
movss dword [ebx + esi*4 + 0x38], xmm4
movss dword [ebx + esi*4 + 0x3c], xmm1
mov dword [ebx + esi*4 + 0x40], 0
mov dword [ebx + esi*4 + 0x44], 0x3f800000
mov dword [ebx + esi*4 + 0x48], edi
movss dword [ebx + esi*4 + 0x4c], xmm0
movss dword [ebx + esi*4 + 0x50], xmm7
movss dword [ebx + esi*4 + 0x54], xmm2
movss dword [ebx + esi*4 + 0x58], xmm3
mov dword [ebx + esi*4 + 0x5c], 0
mov dword [ebx + esi*4 + 0x60], 0x3f800000
mov dword [ebx + esi*4 + 0x64], edi
movss dword [ebx + esi*4 + 0x68], xmm6
movss dword [ebx + esi*4 + 0x6c], xmm5
movss dword [ebx + esi*4 + 0x70], xmm2
movss dword [ebx + esi*4 + 0x74], xmm1
mov dword [ebx + esi*4 + 0x78], 0
mov dword [ebx + esi*4 + 0x7c], 0x3f800000
mov dword [ebx + esi*4 + 0x80], edi
movss dword [ebx + esi*4 + 0x84], xmm6
movss dword [ebx + esi*4 + 0x88], xmm7
movss dword [ebx + esi*4 + 0x8c], xmm4
movss dword [ebx + esi*4 + 0x90], xmm1
mov dword [ebx + esi*4 + 0x94], 0
mov eax, dword [ebp + 0x28]
movss dword [ebx + esi*4 + 0xa0], xmm0
movss xmm4, dword [ebp + 0x14]
movss xmm3, dword [ebp + 0x18]
mov dword [ebx + esi*4 + 0x98], 0x3f800000
mov dword [ebx + esi*4 + 0x9c], edi
movss dword [ebx + esi*4 + 0xa4], xmm7
movd xmm0, dword [eax]
cvtdq2ps xmm0, xmm0
movss xmm2, dword [ebx + esi*4]
subss xmm4, xmm0
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
movss xmm1, dword [ebx + esi*4 + 4]
subss xmm3, xmm0
movss xmm0, dword [ebx + esi*4 + 0x1c]
movss dword [ebp + 0x14], xmm4
addss xmm4, xmm2
mov dword [esp + 4], 0
movss dword [ebp + 0x18], xmm3
addss xmm3, xmm1
lea eax, [ebp - 0x154]
subss xmm0, xmm4
subss xmm2, xmm4
movss dword [ebp + 0x14], xmm4
subss xmm1, xmm3
movss dword [ebp + 0x18], xmm3
movss dword [ebp - 0x40], xmm0
movss xmm0, dword [ebx + esi*4 + 0x20]
subss xmm0, xmm3
movss dword [ebp - 0x4c], xmm2
movss dword [ebp - 0x48], xmm1
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x38], 0
movss dword [ebp - 0x3c], xmm0
movss xmm0, dword [ebx + esi*4 + 0x38]
subss xmm0, xmm4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 8], 0
movss dword [ebp - 0x34], xmm0
movss xmm0, dword [ebx + esi*4 + 0x3c]
subss xmm0, xmm3
movss dword [ebp - 0x30], xmm0
movss xmm0, dword [ebx + esi*4 + 0x54]
subss xmm0, xmm4
movss dword [ebp - 0x28], xmm0
movss xmm0, dword [ebx + esi*4 + 0x58]
subss xmm0, xmm3
movss dword [ebp - 0x24], xmm0
movss xmm0, dword [ebx + esi*4 + 0x70]
subss xmm0, xmm4
movss dword [ebp - 0x1c], xmm0
movss xmm0, dword [ebx + esi*4 + 0x74]
subss xmm0, xmm3
movss dword [ebp - 0x18], xmm0
movss xmm0, dword [ebx + esi*4 + 0x8c]
subss xmm0, xmm4
movss dword [ebp - 0x10], xmm0
movss xmm0, dword [ebx + esi*4 + 0x90]
subss xmm0, xmm3
movss dword [ebp - 0xc], xmm0
movss xmm0, dword [ebp + 0x20]
movss dword [esp], xmm0
movss xmm0, dword [ebp + 0x1c]
push ecx
movss dword [esp], xmm0
push eax
call fcn.006103da
movss xmm0, dword [ebp + 0x24]
push ecx
lea eax, [ebp - 0xd4]
movss dword [esp], xmm0
push eax
call fcn.0061040a
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.006103ce
push 6
lea eax, [ebp - 0x114]
push eax
push 0xc
lea eax, [ebp - 0x4c]
push eax
push 0xc
lea eax, [ebp - 0x94]
push eax
call fcn.00610404
movss xmm2, dword [ebp + 0x14]
movss xmm0, dword [ebp - 0x94]
movss xmm1, dword [ebp + 0x18]
addss xmm0, xmm2
mov eax, dword [ebp - 0x178]
pop edi
movss dword [ebx + esi*4], xmm0
movss xmm0, dword [ebp - 0x90]
addss xmm0, xmm1
movss dword [ebx + esi*4 + 4], xmm0
movss xmm0, dword [ebp - 0x88]
addss xmm0, xmm2
movss dword [ebx + esi*4 + 0x1c], xmm0
movss xmm0, dword [ebp - 0x84]
addss xmm0, xmm1
movss dword [ebx + esi*4 + 0x20], xmm0
movss xmm0, dword [ebp - 0x7c]
addss xmm0, xmm2
movss dword [ebx + esi*4 + 0x38], xmm0
movss xmm0, dword [ebp - 0x78]
addss xmm0, xmm1
movss dword [ebx + esi*4 + 0x3c], xmm0
movss xmm0, dword [ebp - 0x70]
addss xmm0, xmm2
movss dword [ebx + esi*4 + 0x54], xmm0
movss xmm0, dword [ebp - 0x6c]
addss xmm0, xmm1
movss dword [ebx + esi*4 + 0x58], xmm0
movss xmm0, dword [ebp - 0x64]
addss xmm0, xmm2
movss dword [ebx + esi*4 + 0x70], xmm0
movss xmm0, dword [ebp - 0x60]
addss xmm0, xmm1
movss dword [ebx + esi*4 + 0x74], xmm0
movss xmm0, dword [ebp - 0x58]
addss xmm0, xmm2
movss dword [ebx + esi*4 + 0x8c], xmm0
movss xmm0, dword [ebp - 0x54]
addss xmm0, xmm1
movss dword [ebx + esi*4 + 0x90], xmm0
add word [eax + 2], 6
mov eax, dword [ebp - 0x17c]
pop esi
add dword [eax + 0x14], 6
mov ecx, dword [ebp - 4]
xor ecx, ebp
xor eax, eax
pop ebx
call fcn.00630fec
mov esp, ebp
pop ebp
ret 0x3c