Function at 0x4796e5
Capabilities:
Hide graphical window
Log keystrokes via polling

Disassembly:
mov ecx, dword [0x52fd44]
push ebx
push esi
cmp ecx, 0xfffffffe
je 0x47997e
mov eax, dword [0x52fd3c]
xor edx, edx
add eax, 0xffffff02
or ebx, 0xffffffff
xor esi, esi
inc edx
cmp eax, 8
ja 0x47976e
mov eax, dword [0x52fd40]
add eax, 0xfffffffd
cmp eax, 9
ja 0x47976e
cmp ecx, ebx
jne 0x479746
push esi
push 0x9c80
push 0x111
push dword [0x531f70]
call dword [sym.imp.USER32.dll_SendMessageW]
push esi
push ebx
push ebx
push ebx
call fcn.0041d391
mov dword [0x52fd60], esi
jmp 0x47975e
test byte [0x52fd48], 1
je 0x479761
push edx
push ebx
push ebx
push ebx
mov dword [0x52fd60], edx
call fcn.0041d391
add esp, 0x10
cmp dword [0x52fd44], esi
je 0x479788
jmp 0x47994b
cmp dword [0x52fd60], esi
je 0x479788
push esi
push ebx
push ebx
push ebx
mov dword [0x52fd60], esi
call fcn.0041d391
add esp, 0x10
mov eax, dword [0x52fd3c]
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
add eax, 0xffffff0c
cmp eax, 9
ja 0x479818
mov eax, dword [0x52fd40]
add eax, 0xfffffffd
cmp eax, 9
ja 0x479818
cmp dword [0x52fd44], ebx
jne 0x4797ed
push 0x10
call esi
push 0
mov ecx, 0xffff8000
test cx, ax
pop eax
push 6
push dword [0x531f70]
setne al
mov dword [0x52fd24], eax
call dword [sym.imp.USER32.dll_ShowWindow]
push ebx
push ebx
push 0
push ebx
call fcn.0041d391
add esp, 0x10
and dword [0x52fd58], 0
jmp 0x47980a
test byte [0x52fd48], 1
je 0x47980a
push ebx
xor eax, eax
inc eax
push ebx
push eax
push ebx
mov dword [0x52fd58], eax
call fcn.0041d391
add esp, 0x10
cmp dword [0x52fd44], 0
je 0x479835
jmp 0x47994b
cmp dword [0x52fd58], 0
je 0x479835
and dword [0x52fd58], 0
push ebx
push ebx
push 0
push ebx
call fcn.0041d391
add esp, 0x10
mov eax, dword [0x52fd3c]
add eax, 0xfffffef8
cmp eax, 8
ja 0x4798cd
mov eax, dword [0x52fd40]
add eax, 0xfffffffd
cmp eax, 9
ja 0x4798cd
cmp dword [0x52fd44], ebx
jne 0x4798a5
and dword [0x52fd5c], 0
push ebx
push 0
push ebx
push ebx
call fcn.0041d391
add esp, 0x10
push 0x10
call esi
bt ax, 0xf
jae 0x479896
push 0
push 0x9d42
push 0x111
push dword [0x531f70]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x4798c2
mov ecx, dword [0x531bc4]
push 1
call fcn.0040c25c
jmp 0x4798c2
test byte [0x52fd48], 1
je 0x4798c2
xor eax, eax
inc eax
push ebx
push eax
push ebx
push ebx
mov dword [0x52fd5c], eax
call fcn.0041d391
add esp, 0x10
cmp dword [0x52fd44], 0
je 0x4798ea
jmp 0x47994b
cmp dword [0x52fd5c], 0
je 0x4798ea
and dword [0x52fd5c], 0
push ebx
push 0
push ebx
push ebx
call fcn.0041d391
add esp, 0x10
mov eax, dword [0x52fd3c]
add eax, 0xfffffffb
cmp eax, 0xc
ja 0x479950
mov eax, dword [0x52fd40]
add eax, 0xfffffffd
cmp eax, 0xa
ja 0x479950
test byte [0x52fd48], 1
je 0x479942
cmp dword [0x52fd54], 0
jne 0x479942
push 0
push 0x9b
push 0x29a
push dword [0x531f70]
call dword [sym.imp.USER32.dll_SetTimer]
push ebx
xor eax, eax
push ebx
inc eax
push ebx
push eax
mov dword [0x52fd54], eax
call fcn.0041d391
add esp, 0x10
cmp dword [0x52fd44], 0
je 0x47997e
xor eax, eax
inc eax
jmp 0x479980
cmp dword [0x52fd54], 0
je 0x47997e
push 0x29a
push dword [0x531f70]
call dword [sym.imp.USER32.dll_KillTimer]
and dword [0x52fd54], 0
push ebx
push ebx
push ebx
push 0
call fcn.0041d391
add esp, 0x10
xor eax, eax
pop esi
pop ebx
ret