Function at 0x410eb0
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb8
mov dword [ebp - 0xc], 0
call fcn.004d24e0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x10], 0xc8
mov dword [ebp - 0x14], 0x96
mov dword [esp], 0
call fcn.004bd524
sub esp, 4
mov dword [ebp - 0x20], eax
mov dword [esp], 0
call fcn.004bd83b
sub esp, 4
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
mov edx, eax
mov eax, dword [ebp - 0x20]
add edx, eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
shr ecx, 0x1f
add eax, ecx
sar eax, 1
neg eax
add eax, edx
mov dword [ebp - 0x18], eax
mov dword [esp], 0
call fcn.004bd593
sub esp, 4
mov dword [ebp - 0x28], eax
mov dword [esp], 0
call fcn.004bd8b8
sub esp, 4
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
mov edx, eax
mov eax, dword [ebp - 0x28]
add edx, eax
mov eax, dword [ebp - 0x14]
mov ecx, eax
shr ecx, 0x1f
add eax, ecx
sar eax, 1
neg eax
add eax, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [0x1177ef0]
mov dword [ebp - 0x30], eax
mov dword [esp + 0x18], 0x80000004
mov eax, dword [ebp - 0x30]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x18]
mov dword [esp + 4], eax
mov dword [esp], 0x60
call fcn.004bccf9
sub esp, 0x1c
mov dword [ebp - 0x34], eax
mov dword [esp], 0x67
call fcn.004cb5ad
sub esp, 4
mov dword [ebp - 0x38], eax
mov dword [esp + 0x18], 0xb
mov eax, dword [ebp - 0x38]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0x1a
mov dword [esp + 0xc], 0xaa
mov dword [esp + 8], 0xf
mov dword [esp + 4], 0xf
mov dword [esp], 0x63
call fcn.004b740b
sub esp, 0x1c
mov dword [ebp - 0x3c], eax
mov dword [esp], 0x65
call fcn.004cb5ad
sub esp, 4
mov dword [ebp - 0x40], eax
mov dword [esp + 0x18], 0xb
mov eax, dword [ebp - 0x40]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0x1a
mov dword [esp + 0xc], 0xaa
mov dword [esp + 8], 0x2d
mov dword [esp + 4], 0xf
mov dword [esp], 0x61
call fcn.004b740b
sub esp, 0x1c
mov dword [ebp - 0x44], eax
mov dword [esp], 0x66
call fcn.004cb5ad
sub esp, 4
mov dword [ebp - 0x48], eax
mov dword [esp + 0x18], 0xb
mov eax, dword [ebp - 0x48]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0x1a
mov dword [esp + 0xc], 0xaa
mov dword [esp + 8], 0x4b
mov dword [esp + 4], 0xf
mov dword [esp], 0x62
call fcn.004b740b
sub esp, 0x1c
mov dword [ebp - 0x4c], eax
mov eax, dword [0x117802c]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0x14
mov dword [esp + 0xc], 0xaa
mov dword [esp + 8], 0x78
mov dword [esp + 4], 0xf
mov dword [esp], 0x64
call fcn.004b4aa1
sub esp, 0x18
mov dword [ebp - 0x54], eax
call fcn.00443c10
mov dword [ebp - 0x58], eax
call fcn.004bd47d
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
mov dword [ebp + 8], eax
cmp dword [ebp + 8], 0
je 0x411192
call fcn.004c0855
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0x60
jne 0x41118c
mov eax, dword [ebp + 8]
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0x332c
jne 0x41118f
call fcn.004c0846
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0x63
jne 0x41116c
mov dword [esp], 0x1171720
call fcn.00493a08
sub esp, 4
mov dword [ebp - 0x74], eax
jmp 0x41122c
cmp dword [ebp - 0x70], 0x61
je 0x411225
cmp dword [ebp - 0x70], 0x62
je 0x411228
cmp dword [ebp - 0x70], 0x64
je 0x41122b
jmp 0x411190
nop
jmp 0x4111a5
nop
jmp 0x4111a5
nop
mov dword [esp], 0x60
call fcn.004bd485
sub esp, 4
mov dword [ebp - 0x78], eax
mov dword [esp], 0x1b
call sub.USER32.dll_GetKeyState
sub esp, 4
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 1
jle 0x4111d8
call fcn.004bd8c6
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 0x60
jne 0x4111db
call fcn.00443c10
mov dword [ebp - 0x84], eax
jmp 0x41122c
nop
jmp 0x4111dc
nop
mov dword [esp], 0xd
call sub.USER32.dll_GetKeyState
sub esp, 4
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 1
jle 0x41121b
call fcn.004bd8c6
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 0x60
jne 0x41121e
call fcn.00443c10
mov dword [ebp - 0x90], eax
jmp 0x41122c
nop
jmp 0x41121f
nop
nop
jmp 0x41110a
nop
jmp 0x41122c
nop
jmp 0x41122c
nop
mov dword [esp], 0x60
call fcn.004bd363
sub esp, 4
mov dword [ebp - 0x94], eax
mov dword [ebp - 0xc], 0
mov eax, dword [ebp - 0xc]
leave
ret 4