Function at 0x408640
Capabilities:
Log keystrokes via polling

Disassembly:
sub esp, 0x100
push esi
mov esi, ecx
push edi
push 0
lea edi, [esi + 0x5c]
push 0
push 0xe6e6e6
push 0x81
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x510]
push 0
push 0xe6e6e6
push 0x8f
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x9c4]
push 0
push 0xe6e6e6
push 0x90
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xe78]
push 0
push 0xe6e6e6
push 0x91
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x132c]
push 0
push 0xe6e6e6
push 0x92
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x17e0]
push 0
push 0xe6e6e6
push 0x93
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x1c94]
push 0
push 0xe6e6e6
push 0x94
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x2148]
push 0
push 0xe6e6e6
push 0x95
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x25fc]
push 0
push 0xe6e6e6
push 0x96
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x2ab0]
push 0
push 0xe6e6e6
push 0x97
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x2f64]
push 0
push 0xe6e6e6
push 0x8e
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x3418]
push 0
push 0xe6e6e6
push 0x99
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x38cc]
push 0
push 0xe6e6e6
push 0x98
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x3d80]
push 0
push 0xe6e6e6
push 0xb0
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
push 0
lea edi, [esi + 0x4234]
push 0xe6e6e6
push 0xba
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x46e8]
push 0
push 0xe6e6e6
push 0xa0
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x4b9c]
push 0
push 0xe6e6e6
push 0xb1
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x5050]
push 0
push 0xe6e6e6
push 0xb6
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x5504]
push 0
push 0xe6e6e6
push 0xbc
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x59b8]
push 0
push 0xe6e6e6
push 0xb7
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x5e6c]
push 0
push 0xe6e6e6
push 0xa6
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x6320]
push 0
push 0xe6e6e6
push 0xae
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x67d4]
push 0
push 0xe6e6e6
push 0xaf
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x6c88]
push 0
push 0xe6e6e6
push 0xaa
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x713c]
push 0
push 0xe6e6e6
push 0xb2
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x75f0]
push 0
push 0xe6e6e6
push 0x9a
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x7aa4]
push 0
push 0xe6e6e6
push 0xb4
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x7f58]
push 0
push 0xe6e6e6
push 0x9d
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x840c]
push 0
push 0xe6e6e6
push 0xa1
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
lea edi, [esi + 0x88c0]
push 0
push 0
push 0xe6e6e6
push 0xa3
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x8d74]
push 0
push 0xe6e6e6
push 0xa4
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x9228]
push 0
push 0xe6e6e6
push 0xa7
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x96dc]
push 0
push 0xe6e6e6
push 0xa8
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x9b90]
push 0
push 0xe6e6e6
push 0xa9
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xa044]
push 0
push 0xe6e6e6
push 0xa2
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xa4f8]
push 0
push 0xe6e6e6
push 0xbd
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
push 0
push 0xe6e6e6
lea edi, [esi + 0xa9ac]
push 0xbb
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xae60]
push 0
push 0xe6e6e6
push 0x9c
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xb314]
push 0
push 0xe6e6e6
push 0xb9
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xb7c8]
push 0
push 0xe6e6e6
push 0x9b
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xbc7c]
push 0
push 0xe6e6e6
push 0xad
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xc130]
push 0
push 0xe6e6e6
push 0xac
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xc5e4]
push 0
push 0xe6e6e6
push 0x9f
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xca98]
push 0
push 0xe6e6e6
push 0x9e
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xcf4c]
push 0
push 0xe6e6e6
push 0xab
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xd400]
push 0
push 0xe6e6e6
push 0xb3
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xd8b4]
push 0
push 0xe6e6e6
push 0xbe
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xdd68]
push 0
push 0xe6e6e6
push 0xbf
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xe21c]
push 0
push 0xe6e6e6
push 0xd4
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xeb84]
push 0
push 0xe6e6e6
push 0xc3
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xf038]
push 0
push 0xe6e6e6
push 0xc4
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
lea edi, [esi + 0xf4ec]
push 0
push 0
push 0xe6e6e6
push 0xc5
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xf9a0]
push 0
push 0xe6e6e6
push 0xc6
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0xfe54]
push 0
push 0xe6e6e6
push 0xc7
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x10308]
push 0
push 0xe6e6e6
push 0xc8
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x107bc]
push 0
push 0xe6e6e6
push 0xc9
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x10c70]
push 0
push 0xe6e6e6
push 0xca
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x11124]
push 0
push 0xe6e6e6
push 0xcb
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x115d8]
push 0
push 0xe6e6e6
push 0xcc
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x11a8c]
push 0
push 0xe6e6e6
push 0xd6
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
push 0
lea edi, [esi + 0x11f40]
push 0
push 0xe6e6e6
push 0xd5
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
lea eax, [esp + 8]
push eax
call dword [sym.imp.USER32.dll_GetKeyboardState]
mov al, byte [esp + 0x1c]
push 0
test al, 1
push 0
lea edi, [esi + 0xe6d0]
push 0xe6e6e6
je 0x408f9e
push 0xd1
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
mov byte [esi + 0x123f4], 1
pop edi
pop esi
add esp, 0x100
ret
push 0xd2
mov ecx, edi
call fcn.00402640
push 1
push 0
mov ecx, edi
call fcn.00402990
mov byte [esi + 0x123f4], 0
pop edi
pop esi
add esp, 0x100
ret