Function at 0x10080390
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [ebp + 8]
push ebx
push edi
cmp eax, 0x100
je 0x100803ab
cmp eax, 0x104
je 0x100803ab
xor bl, bl
jmp 0x100803ad
mov bl, 1
mov edi, dword [ebp + 0xc]
mov byte [ebp + 8], bl
cmp edi, 0x100
jae 0x1008061e
push esi
call fcn.10066230
push 0x11
mov esi, eax
call dword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, 1
movzx ecx, al
push ecx
push 0x1000
mov ecx, esi
call fcn.1006cc30
push 0x10
call dword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
mov ecx, esi
and al, 1
movzx eax, al
push eax
push 0x2000
call fcn.1006cc30
push 0x12
call dword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
mov ecx, esi
and al, 1
movzx eax, al
push eax
push 0x4000
call fcn.1006cc30
push 0x5d
call dword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
mov ecx, esi
and al, 1
movzx eax, al
push eax
push 0x8000
call fcn.1006cc30
mov ecx, dword [ebp + 0x10]
cmp edi, 0xd
jne 0x10080455
mov eax, ecx
shr eax, 0x10
test eax, 0x100
mov eax, 0x10d
cmovne edi, eax
push edi
call fcn.1007fde0
shr ecx, 0x10
add esp, 4
movzx esi, cl
mov dword [ebp - 4], eax
mov dword [ebp + 0xc], esi
test eax, eax
je 0x10080495
call fcn.10066230
push dword [ebp + 8]
mov esi, eax
push dword [ebp - 4]
mov ecx, esi
call fcn.1006cc30
push 0xffffffffffffffff
push dword [ebp + 0xc]
mov ecx, esi
push edi
push dword [ebp - 4]
call fcn.1006d200
mov esi, dword [ebp + 0xc]
cmp edi, 0x10
jne 0x1008052d
push 0xa0
call dword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, 1
cmp al, bl
jne 0x100804e1
call fcn.10066230
push dword [ebp + 8]
mov esi, eax
push 0x210
mov ecx, esi
call fcn.1006cc30
mov edi, dword [ebp + 0xc]
mov ecx, esi
push 0xffffffffffffffff
push edi
push 0xa0
push 0x210
call fcn.1006d200
jmp 0x100804e4
mov edi, dword [ebp + 0xc]
push 0xa1
call dword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, 1
cmp al, bl
jne 0x1008061d
call fcn.10066230
push dword [ebp + 8]
mov esi, eax
push 0x214
mov ecx, esi
call fcn.1006cc30
push 0xffffffffffffffff
push edi
push 0xa1
push 0x214
mov ecx, esi
call fcn.1006d200
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, 0x11
jne 0x100805c5
push 0xa2
call dword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, 1
cmp al, bl
jne 0x10080579
call fcn.10066230
push dword [ebp + 8]
mov esi, eax
push 0x20f
mov ecx, esi
call fcn.1006cc30
mov edi, dword [ebp + 0xc]
mov ecx, esi
push 0xffffffffffffffff
push edi
push 0xa2
push 0x20f
call fcn.1006d200
jmp 0x1008057c
mov edi, dword [ebp + 0xc]
push 0xa3
call dword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, 1
cmp al, bl
jne 0x1008061d
call fcn.10066230
push dword [ebp + 8]
mov esi, eax
push 0x213
mov ecx, esi
call fcn.1006cc30
push 0xffffffffffffffff
push edi
push 0xa3
push 0x213
mov ecx, esi
call fcn.1006d200
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, 0x12
jne 0x1008061d
push 0xa4
call dword [sym.imp.USER32.dll_GetKeyState]
mov edi, dword [ebp + 8]
shr eax, 0xf
and al, 1
cmp al, bl
jne 0x100805f5
push esi
push 0xa4
push edi
push 0x211
call fcn.1007f8c0
add esp, 0x10
push 0xa5
call dword [sym.imp.USER32.dll_GetKeyState]
shr eax, 0xf
and al, 1
cmp al, bl
jne 0x1008061d
push esi
push 0xa5
push edi
push 0x215
call fcn.1007f8c0
add esp, 0x10
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret