Function at 0x444770
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b7afd
mov eax, dword fs:[0]
push eax
sub esp, 0x24
mov eax, dword [0x4f8f48]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 4], 0
xorps xmm1, xmm1
subss xmm2, dword [0x4cc9d8]
xorps xmm0, xmm0
xorps xmm3, xmm3
cvtsi2ss xmm0, dword [0x4fc400]
cvtss2sd xmm1, xmm2
cvtsi2ss xmm3, dword [0x97170c]
mulsd xmm1, qword [0x4cc958]
subss xmm0, dword [ebp + 0x2c]
subss xmm3, dword [ebp + 0x28]
divsd xmm1, qword [0x4cc988]
mulss xmm0, xmm0
mulss xmm3, xmm3
cvtpd2ps xmm1, xmm1
addss xmm0, xmm3
movss dword [ebp - 0x28], xmm1
call fcn.004013e0
sub esp, 8
movss dword [ebp - 0x20], xmm0
fld dword [ebp - 0x20]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
movss xmm0, dword [ebp - 0x28]
cvtps2pd xmm0, xmm0
fstp dword [ebp - 0x20]
cvttss2si esi, dword [ebp - 0x20]
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_cos_precise
xorps xmm1, xmm1
cvtsd2ss xmm0, xmm0
cvtsi2ss xmm1, esi
mulss xmm0, xmm1
addss xmm0, dword [ebp + 0x28]
movss dword [ebp - 0x20], xmm0
fld dword [ebp - 0x20]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceil
fstp dword [ebp - 0x20]
cvttss2si eax, dword [ebp - 0x20]
xorps xmm0, xmm0
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [0x97061c]
cvtsi2ss xmm0, eax
mulss xmm1, dword [0x4cc8c0]
subss xmm0, dword [ebp + 0x28]
mulss xmm0, dword [0x4f9000]
addss xmm0, xmm1
movss dword [ebp - 0x24], xmm0
movss xmm0, dword [ebp - 0x28]
call fcn.004176a0
xorps xmm1, xmm1
cvtsi2ss xmm1, esi
mulss xmm0, xmm1
addss xmm0, dword [ebp + 0x2c]
movss dword [ebp - 0x20], xmm0
fld dword [ebp - 0x20]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceil
fstp dword [ebp - 0x20]
cvttss2si eax, dword [ebp - 0x20]
mov ecx, dword [0x971734]
add esp, 8
mov edx, dword [0x4fc40c]
movss xmm2, dword [ebp - 0x24]
xorps xmm1, xmm1
xorps xmm0, xmm0
imul esi, edi, 0x94
cvtsi2ss xmm0, dword [0x970620]
mov edi, dword [0x4fc410]
cvtsi2ss xmm1, eax
cmp byte [esi + ecx + 0x65], 0
mulss xmm0, dword [0x4cc8c0]
subss xmm1, dword [ebp + 0x2c]
mulss xmm1, dword [0x4f9000]
addss xmm1, xmm0
movss dword [ebp - 0x28], xmm1
jne 0x4449dd
movd xmm3, dword [esi + ecx + 0x80]
cvtdq2ps xmm3, xmm3
movd xmm4, edx
movaps xmm0, xmm3
cvtdq2ps xmm4, xmm4
addss xmm0, xmm2
comiss xmm0, xmm4
jb 0x44495b
movaps xmm0, xmm2
subss xmm0, xmm3
comiss xmm4, xmm0
jb 0x44495b
movd xmm4, edi
movaps xmm0, xmm3
cvtdq2ps xmm4, xmm4
addss xmm0, xmm1
comiss xmm0, xmm4
jb 0x44495b
movaps xmm0, xmm1
subss xmm0, xmm3
comiss xmm4, xmm0
jae 0x4449dd
movd xmm0, dword [esi + ecx + 0x84]
movsd xmm3, qword [0x4cc920]
cvtdq2pd xmm0, xmm0
subsd xmm0, xmm3
cvttsd2si eax, xmm0
mov dword [esi + ecx + 0x84], eax
mov ecx, dword [0x971734]
mov eax, dword [0x4f8fac]
cmp dword [esi + ecx + 0x84], eax
jge 0x4449a0
mov dword [esi + ecx + 0x84], eax
mov ecx, dword [0x971734]
movd xmm0, dword [esi + ecx + 0x80]
cvtdq2pd xmm0, xmm0
subsd xmm0, xmm3
cvttsd2si eax, xmm0
mov dword [esi + ecx + 0x80], eax
mov ecx, dword [0x971734]
mov eax, dword [0x4f8fa8]
cmp dword [esi + ecx + 0x80], eax
jge 0x4449dd
mov dword [esi + ecx + 0x80], eax
mov ecx, dword [0x971734]
movd xmm3, dword [esi + ecx + 0x80]
cvtdq2ps xmm3, xmm3
movd xmm4, edx
movaps xmm0, xmm3
cvtdq2ps xmm4, xmm4
addss xmm0, xmm2
comiss xmm0, xmm4
jb 0x444a2b
movaps xmm0, xmm2
subss xmm0, xmm3
comiss xmm4, xmm0
jb 0x444a2b
movd xmm2, edi
movaps xmm0, xmm3
cvtdq2ps xmm2, xmm2
addss xmm0, xmm1
comiss xmm0, xmm2
jb 0x444a2b
movaps xmm0, xmm1
subss xmm0, xmm3
comiss xmm2, xmm0
jae 0x444c3c
cmp byte [0x4f8f98], 0
jne 0x444c3c
push 0xa0
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x444c36
mov ecx, dword [0x4fc40c]
mov eax, dword [0x4fc410]
movss xmm1, dword [ebp - 0x24]
movss xmm2, dword [ebp - 0x28]
mov edx, dword [0x971734]
movss xmm0, dword [0x4cc8dc]
movd xmm3, ecx
movd xmm4, eax
cmp byte [esi + edx + 0x65], 0
cvtdq2ps xmm3, xmm3
cvtdq2ps xmm4, xmm4
subss xmm1, xmm3
movss dword [ebp - 0x20], xmm0
subss xmm2, xmm4
movss dword [ebp - 0x24], xmm1
movss dword [ebp - 0x28], xmm2
jne 0x444aa4
cmp byte [0x970613], 0
jne 0x444ab1
movss xmm0, dword [0x4cc900]
movss dword [ebp - 0x20], xmm0
cmp byte [esi + edx + 0x88], 0
je 0x444ba8
movss xmm0, dword [ebp + 0x38]
mov edx, 1
subss xmm0, dword [0x4cc9d8]
or ecx, 0xffffffff
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [0x4cc958]
divsd xmm0, qword [0x4cc988]
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x2c], xmm0
call fcn.004409c0
movss xmm0, dword [ebp - 0x2c]
mov esi, eax
call fcn.004176a0
movss xmm2, dword [ebp - 0x24]
xorps xmm1, xmm1
cvtsi2ss xmm1, esi
mov edx, 1
or ecx, 0xffffffff
mulss xmm1, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [0x4f8fac]
addss xmm0, dword [0x4cc8a4]
divss xmm2, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [0x4fc40c]
addss xmm2, xmm0
addss xmm2, xmm1
movss dword [ebp - 0x24], xmm2
call fcn.004409c0
movss xmm0, dword [ebp - 0x2c]
mov esi, eax
cvtps2pd xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_cos_precise
movss xmm2, dword [ebp - 0x28]
xorps xmm1, xmm1
cvtsd2ss xmm0, xmm0
mov eax, dword [0x4fc410]
mov ecx, dword [0x4fc40c]
cvtsi2ss xmm1, esi
mulss xmm1, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [0x4f8fac]
addss xmm0, dword [0x4cc8a4]
divss xmm2, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
addss xmm2, xmm0
addss xmm2, xmm1
movss xmm1, dword [ebp - 0x24]
jmp 0x444bcb
movd xmm0, dword [0x4f8fac]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x4cc8a4]
divss xmm1, xmm0
divss xmm2, xmm0
addss xmm1, xmm3
addss xmm2, xmm4
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
mulss xmm1, dword [ebp - 0x20]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvttss2si ecx, xmm1
subss xmm2, xmm0
mov dword [0x4fc40c], ecx
mov dword [ebp - 0x1c], ecx
mulss xmm2, dword [ebp - 0x20]
addss xmm2, xmm0
cvttss2si eax, xmm2
mov dword [0x4fc410], eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x1c]
push eax
push str.Unreal_Softwares_CS2D
push 0
call dword [sym.imp.USER32.dll_FindWindowA]
push eax
call dword [sym.imp.USER32.dll_ClientToScreen]
test eax, eax
je 0x444c68
push dword [ebp - 0x18]
push dword [ebp - 0x1c]
call dword [sym.imp.USER32.dll_SetCursorPos]
jmp 0x444c68
mov ecx, dword [0x971734]
cmp byte [esi + ecx + 0x88], 0
je 0x444c61
mov dword [esi + ecx + 0x80], 0x16
mov eax, dword [0x971734]
mov dword [esi + eax + 0x84], 8
mov byte [0x970612], 0
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x444c9e
mov edx, dword [ebp + 0x20]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x444c94
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x444c94
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004b5153
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004b50b5
mov esp, ebp
pop ebp
ret