Function at 0x419850
Capabilities:
Check for unmoving mouse cursor
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
mov eax, dword [0x48800c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0
push str.LWJGL
call dword [sym.imp.USER32.dll_FindWindowA]
cmp byte [0x554f94], 0
mov edi, eax
mov ecx, dword [sym.imp.USER32.dll_GetForegroundWindow]
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
je 0x41993b
call ecx
cmp eax, edi
jne 0x419935
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x14
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x14], xmm0
call dword [sym.imp.USER32.dll_GetCursorInfo]
cmp dword [ebp - 0x10], 0x1ffff
jbe 0x419935
push 1
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x41992e
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdq
mov ecx, 0x64
idiv ecx
movss xmm0, dword [0x5540b0]
inc edx
movd xmm1, edx
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x419935
cmp byte [0x554fb4], 0
jne 0x419935
push 0x19
call esi
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
push 0
push 1
push 0x201
push edi
call ebx
push 0xa
call esi
push 0
push 1
push 0x202
push edi
call ebx
push 0xa
call esi
mov byte [0x554fb4], 1
jmp 0x419935
mov byte [0x554fb4], 0
mov ecx, dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp byte [0x554f7e], 0
je 0x419a66
mov eax, dword [0x554f50]
sub eax, dword [0x554f4c]
sar eax, 2
test eax, eax
je 0x419a66
call ecx
mov ebx, dword [sym.imp.USER32.dll_GetCursorInfo]
cmp eax, edi
jne 0x419a6c
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x14
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x14], xmm0
call ebx
cmp dword [ebp - 0x10], 0x1ffff
jbe 0x419a6c
push dword [0x554f88]
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x419afc
cmp byte [0x554fac], 0
jne 0x419a6c
mov eax, dword [0x554f50]
mov ebx, dword [0x554f4c]
sub eax, ebx
mov ecx, dword [0x554fb0]
sar eax, 2
cmp ecx, eax
jae 0x419aed
mov bl, byte [ebx + ecx*4]
push 0
push 1
push 0
add bl, 0x30
push ebx
call dword [sym.imp.USER32.dll_keybd_event]
push 0x14
call esi
push 0
push 2
push 0
push ebx
call dword [sym.imp.USER32.dll_keybd_event]
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 1
push 0x204
push edi
call ebx
push 0xa
call esi
push 0
push 1
push 0x205
push edi
call ebx
push 0xa
call esi
push 0x14
call esi
cmp byte [0x554f84], 0
je 0x419a59
mov bl, byte [0x5540a4]
push 0
push 1
push 0
add bl, 0x30
push ebx
call dword [sym.imp.USER32.dll_keybd_event]
push 0x14
call esi
push 0
push 2
push 0
push ebx
call dword [sym.imp.USER32.dll_keybd_event]
inc dword [0x554fb0]
mov byte [0x554fac], 1
mov ebx, dword [sym.imp.USER32.dll_GetCursorInfo]
cmp byte [0x554f7c], 0
jne 0x419a82
cmp byte [0x554f8c], 0
je 0x419d81
mov ecx, dword [0x55409c]
call fcn.00419680
call dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp eax, edi
je 0x419aa9
cmp byte [0x554098], 0
je 0x419aa9
cmp byte [0x5540b5], 0
jne 0x419ad8
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x14
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x14], xmm0
call ebx
cmp dword [ebp - 0x10], 0x1ffff
ja 0x419b08
cmp byte [0x5540a0], 0
je 0x419b08
cmp byte [0x5540b4], 0
je 0x419b08
push 5
call esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00459c94
mov esp, ebp
pop ebp
ret
mov dword [0x554fb0], 0
jmp 0x419a66
mov byte [0x554fac], 0
jmp 0x419a6c
cmp byte [0x554f7c], 0
mov ebx, dword [sym.imp.USER32.dll_GetAsyncKeyState]
je 0x419c9e
push 1
call ebx
bt ax, 0xf
jae 0x419c9e
mov ecx, dword [0x55409c]
call fcn.00419680
cmp byte [0x554098], 0
mov ebx, eax
mov dword [ebp - 0x24], ebx
je 0x419b72
lea eax, [ebp - 0x30]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
push 0
push 1
push 0x201
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
push ebx
call esi
push 0
push 1
push 0x202
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x419bba
push 0x1c
lea eax, [ebp - 0x20]
mov dword [ebp - 0x14], 0
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
push eax
push 1
movlpd qword [ebp - 0x1c], xmm0
movlpd qword [ebp - 0xc], xmm0
mov dword [ebp - 0x10], 2
call dword [sym.imp.USER32.dll_SendInput]
push ebx
call esi
push 0x1c
lea eax, [ebp - 0x20]
mov dword [ebp - 0x10], 4
push eax
push 1
call dword [sym.imp.USER32.dll_SendInput]
push ebx
call esi
mov eax, dword [0x554f5c]
cmp eax, dword [0x554f60]
je 0x419bdb
mov dword [eax], ebx
mov eax, dword [0x554f5c]
add eax, 4
mov dword [0x554f5c], eax
jmp 0x419bf2
lea ecx, [ebp - 0x24]
push ecx
push eax
mov ecx, 0x554f58
call fcn.00410b00
mov ebx, dword [ebp - 0x24]
mov eax, dword [0x554f5c]
sub eax, dword [0x554f58]
sar eax, 2
cdq
idiv dword [0x5540a8]
test edx, edx
jne 0x419c98
cmp byte [0x554f8e], dl
je 0x419c98
cmp byte [0x554098], dl
je 0x419c4d
lea eax, [ebp - 0x30]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
push 0
push 1
push 0x204
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
push ebx
call esi
push 0
push 1
push 0x205
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x419c95
push 0x1c
lea eax, [ebp - 0x20]
mov dword [ebp - 0x14], 0
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
push eax
push 1
movlpd qword [ebp - 0x1c], xmm0
movlpd qword [ebp - 0xc], xmm0
mov dword [ebp - 0x10], 8
call dword [sym.imp.USER32.dll_SendInput]
push ebx
call esi
push 0x1c
lea eax, [ebp - 0x20]
mov dword [ebp - 0x10], 0x10
push eax
push 1
call dword [sym.imp.USER32.dll_SendInput]
push ebx
call esi
mov ebx, dword [sym.imp.USER32.dll_GetAsyncKeyState]
cmp byte [0x554f8c], 0
je 0x419d81
push 2
call ebx
bt ax, 0xf
jae 0x419d81
mov ecx, dword [0x5540ac]
call fcn.00419680
cmp byte [0x554098], 0
mov ebx, eax
mov dword [ebp - 0x24], ebx
je 0x419d02
lea eax, [ebp - 0x30]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
push 0
push 1
push 0x204
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
push ebx
call esi
push 0
push 1
push 0x205
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x419d48
mov edi, dword [sym.imp.USER32.dll_SendInput]
lea eax, [ebp - 0x20]
push 0x1c
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
push eax
push 1
movlpd qword [ebp - 0x1c], xmm0
movlpd qword [ebp - 0xc], xmm0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x10], 8
call edi
push ebx
call esi
push 0x1c
lea eax, [ebp - 0x20]
mov dword [ebp - 0x10], 0x10
push eax
push 1
call edi
push ebx
call esi
mov eax, dword [0x554f5c]
cmp eax, dword [0x554f60]
je 0x419d72
mov dword [eax], ebx
add dword [0x554f5c], 4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00459c94
mov esp, ebp
pop ebp
ret
lea edx, [ebp - 0x24]
mov ecx, 0x554f58
push edx
push eax
call fcn.00410b00
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00459c94
mov esp, ebp
pop ebp
ret