Function at 0x41794d
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x90
movzx eax, byte [ebp + 0x14]
test eax, eax
je 0x417975
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x5c], eax
push 1
push dword [ebp - 0x5c]
call fcn.00417bea
pop ecx
pop ecx
jmp 0x417be6
lea eax, [ebp + 0x18]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x54], eax
lea eax, [ebp + 0xc]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x1c], eax
lea eax, [ebp + 0x28]
mov dword [ebp - 0x6c], eax
lea eax, [ebp + 0x10]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x6c]
movzx eax, byte [eax]
test eax, eax
je 0x417bb3
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x34]
movzx eax, byte [eax]
test eax, eax
je 0x417a80
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x10]
movzx eax, byte [eax]
test eax, eax
je 0x417a56
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
cmp dword [eax], 0x60a3
jle 0x417a54
push 1
push 1
push 0
push 0x1fe5
push 1
push 0x39d9
push 0x41cd
push 0x15a8
push 1
push 0x207f
push 0x75d9
push 0x441b
push 1
push 0x2d70
push 1
push 0x4a46
push 0x63b2
call fcn.004258ec
add esp, 0x44
jmp 0x417a7b
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
push 0x253b
push 0xc71
push 0x1723
push 0x22e0
push 0
call dword [sym.imp.USER32.dll_TrackPopupMenu]
jmp 0x417bb1
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x38]
movzx eax, byte [eax]
test eax, eax
je 0x417b31
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
cmp dword [eax], 0x3cae
jle 0x417b2c
and dword [ebp - 8], 0
jmp 0x417ac4
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0x1720
jge 0x417b21
push 0x27ad
push 0x7826
push 0xcb6
push 0x46f3
push 0x1e47
push 0
push 1
push 0
push 1
push 0x46f
push 0x269b
push 0x619
push 0x1c25
push 1
push 0
push 1
push 1
lea eax, [ebp - 8]
push eax
push 0x393f
push 1
push 1
call fcn.00417f99
add esp, 0x54
jmp 0x417abd
push 0xf32
call dword [sym.imp.USER32.dll_GetKeyState]
jmp 0x417bb1
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
cmp dword [eax], 0x3402
jle 0x417bb1
and dword [ebp - 4], 0
jmp 0x417b55
mov eax, dword [ebp - 4]
inc eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x55e3
jge 0x417bb1
and dword [ebp - 0xc], 0
jmp 0x417b6b
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0x6d7
jge 0x417baf
mov eax, dword [ebp - 4]
xor eax, dword [ebp - 0xc]
cdq
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], edx
push dword [ebp - 0x70]
push dword [ebp - 0x74]
lea ecx, [ebp - 0x90]
call fcn.00405444
pop ecx
pop ecx
mov ecx, eax
call fcn.00402ed6
push eax
call fcn.004b505d
pop ecx
lea ecx, [ebp - 0x90]
call fcn.00402cc3
jmp 0x417b64
jmp 0x417b4e
jmp 0x417be6
push 1
push 0x7775
push 0x7aba
push 0x53b4
push 0x5e98
push 0x339f
push 0
push 1
push 0x68f9
push 0
push 0x7e21
call fcn.00419ff2
add esp, 0x2c
mov esp, ebp
pop ebp
ret