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

Disassembly:
push ebp
mov ebp, esp
push ebx
mov ebx, dword [ebp + 8]
cmp ebx, 0x20
jle 0x4ea495
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
push edi
mov edi, ebx
sar edi, 2
sub eax, edi
lea edx, [ecx + eax*4]
push edx
mov eax, esi
mov ecx, ebx
call fcn.004ec0b7
add esp, 4
cmp ebx, 0x200
jle 0x4ea454
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
push eax
push ecx
push esi
push edi
call fcn.004ecdb7
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
push edx
push eax
lea ecx, [esi + edi*4]
push ecx
push edi
call fcn.004ece67
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
push edx
push eax
lea ecx, [esi + edi*8]
push ecx
push edi
call fcn.004ecdb7
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
push edx
lea ecx, [edi + edi*2]
push eax
lea edx, [esi + ecx*4]
push edx
push edi
call fcn.004ecdb7
add esp, 0x40
pop edi
mov ecx, ebx
mov eax, esi
pop ebx
pop ebp
jmp fcn.004eab37
cmp edi, 0x20
jle 0x4ea477
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
push eax
push ecx
push esi
push ebx
call fcn.004ecf07
add esp, 0x10
pop edi
mov ecx, ebx
mov eax, esi
pop ebx
pop ebp
jmp fcn.004eab37
mov edx, dword [ebp + 0xc]
mov edi, dword [ebp + 0x10]
push edx
push ebx
mov edx, esi
call fcn.004ee3c7
add esp, 8
pop edi
mov ecx, ebx
mov eax, esi
pop ebx
pop ebp
jmp fcn.004eab37
cmp ebx, 8
jle 0x4ea4c8
cmp ebx, 0x20
jne 0x4ea4b7
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
lea ecx, [eax + ecx*4 - 0x20]
mov eax, esi
call fcn.004ee447
pop ebx
pop ebp
jmp fcn.004eb247
mov ecx, dword [ebp + 0x10]
mov eax, esi
call fcn.004ef637
pop ebx
pop ebp
jmp 0x4eb3b7
jne 0x4ea58b
movss xmm4, dword [esi + 0x10]
movss xmm2, dword [esi]
movss xmm5, dword [esi + 0x14]
movss xmm3, dword [esi + 4]
movss xmm6, dword [esi + 0xc]
movss xmm7, dword [esi + 0x1c]
movaps xmm1, xmm3
subss xmm3, xmm5
addss xmm1, xmm5
movaps xmm0, xmm2
addss xmm0, xmm4
subss xmm2, xmm4
movss xmm4, dword [esi + 8]
movss dword [ebp + 8], xmm3
movss xmm3, dword [esi + 0x18]
movaps xmm5, xmm4
addss xmm5, xmm3
movaps xmm3, xmm6
addss xmm3, xmm7
movss xmm7, dword [esi + 0x18]
subss xmm4, xmm7
movss xmm7, dword [esi + 0x1c]
subss xmm6, xmm7
movaps xmm7, xmm5
addss xmm7, xmm0
subss xmm0, xmm5
movss dword [esi + 0x10], xmm0
movss dword [esi], xmm7
movaps xmm7, xmm3
addss xmm7, xmm1
subss xmm1, xmm3
movaps xmm0, xmm6
addss xmm0, xmm2
movss dword [esi + 0x14], xmm1
movss dword [esi + 8], xmm0
movss xmm0, dword [ebp + 8]
movaps xmm1, xmm0
subss xmm1, xmm4
subss xmm2, xmm6
addss xmm4, xmm0
movss dword [esi + 4], xmm7
movss dword [esi + 0xc], xmm1
movss dword [esi + 0x18], xmm2
movss dword [esi + 0x1c], xmm4
pop ebx
pop ebp
ret
cmp ebx, 4
jne 0x4ea5cc
movss xmm4, dword [esi]
movss xmm5, dword [esi + 4]
movss xmm0, dword [esi + 8]
movss xmm1, dword [esi + 0xc]
movaps xmm2, xmm4
subss xmm2, xmm0
movaps xmm3, xmm5
subss xmm3, xmm1
addss xmm0, xmm4
addss xmm1, xmm5
pop eax
int 0xf3
movups xmmword [esi], xmm0
fld dword [eax + 0x38]
movss xmm0, dword [eax + 8]
movss xmm1, dword [eax + 0xc]
fstp dword [eax + 8]
fld dword [eax + 0x3c]
movss xmm2, dword [eax + 0x10]
movss xmm3, dword [eax + 0x14]
fstp dword [eax + 0xc]
fld dword [eax + 0x18]
movss xmm4, dword [eax + 0x20]
movss xmm5, dword [eax + 0x24]
fstp dword [eax + 0x10]
fld dword [eax + 0x1c]
movss dword [eax + 0x20], xmm0
fstp dword [eax + 0x14]
movss dword [eax + 0x24], xmm1
fld dword [eax + 0x28]
movss dword [eax + 0x38], xmm4
fstp dword [eax + 0x18]
movss dword [eax + 0x3c], xmm5
fld dword [eax + 0x2c]
fstp dword [eax + 0x1c]
fld dword [eax + 0x30]
movss dword [eax + 0x30], xmm2
fstp dword [eax + 0x28]
fld dword [eax + 0x34]
movss dword [eax + 0x34], xmm3
fstp dword [eax + 0x2c]
ret