Function at 0x419990
Capabilities:
Log keystrokes
Log keystrokes via polling

Disassembly:
push ecx
push ebx
push esi
push edi
call fcn.004227c0
test eax, eax
mov esi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
je 0x419c84
push 0xa0
call esi
mov edi, dword [sym.imp.USER32.dll_keybd_event]
mov ebx, dword [sym.imp.USER32.dll_MapVirtualKeyA]
shr eax, 0xf
and eax, 1
mov dword [esp + 0xc], eax
je 0x419a2d
push 0x444a00
push str.down
push 0xa0
push str.._vncKeymap.cpp:_tsetshiftstate__d_____s___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x18
push 0
push 2
push 0
push 0xa0
call ebx
push eax
push 0xa0
call edi
push 0xa0
call esi
test ah, ah
mov eax, str.down
js 0x419a13
mov eax, 0x444a00
push eax
push 0xa0
push str.._vncKeymap.cpp:_tnew_state__d___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x14
push 0xa2
call esi
shr eax, 0xf
and eax, 1
mov dword [esp + 0xc], eax
je 0x419aa7
push 0x444a00
push str.down
push 0xa2
push str.._vncKeymap.cpp:_tsetshiftstate__d_____s___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x18
push 0
push 2
push 0
push 0xa2
call ebx
push eax
push 0xa2
call edi
push 0xa2
call esi
test ah, ah
mov eax, str.down
js 0x419a8d
mov eax, 0x444a00
push eax
push 0xa2
push str.._vncKeymap.cpp:_tnew_state__d___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x14
push 0xa4
call esi
shr eax, 0xf
and eax, 1
mov dword [esp + 0xc], eax
je 0x419b21
push 0x444a00
push str.down
push 0xa4
push str.._vncKeymap.cpp:_tsetshiftstate__d_____s___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x18
push 0
push 2
push 0
push 0xa4
call ebx
push eax
push 0xa4
call edi
push 0xa4
call esi
test ah, ah
mov eax, str.down
js 0x419b07
mov eax, 0x444a00
push eax
push 0xa4
push str.._vncKeymap.cpp:_tnew_state__d___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x14
push 0xa1
call esi
shr eax, 0xf
and eax, 1
mov dword [esp + 0xc], eax
je 0x419b9b
push 0x444a00
push str.down
push 0xa1
push str.._vncKeymap.cpp:_tsetshiftstate__d_____s___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x18
push 0
push 2
push 0
push 0xa1
call ebx
push eax
push 0xa1
call edi
push 0xa1
call esi
test ah, ah
mov eax, str.down
js 0x419b81
mov eax, 0x444a00
push eax
push 0xa1
push str.._vncKeymap.cpp:_tnew_state__d___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x14
push 0xa3
call esi
shr eax, 0xf
and eax, 1
mov dword [esp + 0xc], eax
je 0x419c15
push 0x444a00
push str.down
push 0xa3
push str.._vncKeymap.cpp:_tsetshiftstate__d_____s___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x18
push 0
push 2
push 0
push 0xa3
call ebx
push eax
push 0xa3
call edi
push 0xa3
call esi
test ah, ah
mov eax, str.down
js 0x419bfb
mov eax, 0x444a00
push eax
push 0xa3
push str.._vncKeymap.cpp:_tnew_state__d___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x14
push 0xa5
call esi
shr eax, 0xf
and eax, 1
mov dword [esp + 0xc], eax
je 0x419dc8
push 0x444a00
push str.down
push 0xa5
push str.._vncKeymap.cpp:_tsetshiftstate__d_____s___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x18
push 0
push 2
push 0
push 0xa5
call ebx
push eax
push 0xa5
call edi
push 0xa5
call esi
test ah, ah
mov eax, str.down
js 0x419c79
mov eax, 0x444a00
push eax
push 0xa5
jmp 0x419db4
push 0x10
call esi
mov edi, dword [sym.imp.USER32.dll_keybd_event]
mov ebx, dword [sym.imp.USER32.dll_MapVirtualKeyA]
shr eax, 0xf
and eax, 1
mov dword [esp + 0xc], eax
je 0x419cf8
push 0x444a00
push str.down
push 0x10
push str.._vncKeymap.cpp:_tsetshiftstate__d_____s___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x18
push 0
push 2
push 0
push 0x10
call ebx
push eax
push 0x10
call edi
push 0x10
call esi
test ah, ah
mov eax, str.down
js 0x419ce1
mov eax, 0x444a00
push eax
push 0x10
push str.._vncKeymap.cpp:_tnew_state__d___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x14
push 0x11
call esi
shr eax, 0xf
and eax, 1
mov dword [esp + 0xc], eax
je 0x419d60
push 0x444a00
push str.down
push 0x11
push str.._vncKeymap.cpp:_tsetshiftstate__d_____s___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x18
push 0
push 2
push 0
push 0x11
call ebx
push eax
push 0x11
call edi
push 0x11
call esi
test ah, ah
mov eax, str.down
js 0x419d49
mov eax, 0x444a00
push eax
push 0x11
push str.._vncKeymap.cpp:_tnew_state__d___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x14
push 0x12
call esi
shr eax, 0xf
and eax, 1
mov dword [esp + 0xc], eax
je 0x419dc8
push 0x444a00
push str.down
push 0x12
push str.._vncKeymap.cpp:_tsetshiftstate__d_____s___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x18
push 0
push 2
push 0
push 0x12
call ebx
push eax
push 0x12
call edi
push 0x12
call esi
test ah, ah
mov eax, str.down
js 0x419db1
mov eax, 0x444a00
push eax
push 0x12
push str.._vncKeymap.cpp:_tnew_state__d___s__n
push 9
push 0x44ff14
call fcn.00401e70
add esp, 0x14
pop edi
pop esi
pop ebx
pop ecx
ret