Function at 0x4d9db0
Capabilities:
Log keystrokes via polling

Disassembly:
mov eax, dword [0x55f228]
push esi
mov esi, ecx
push edi
mov edi, dword [esi + 4]
cmp eax, edi
jne case.0x4d9ee4.14
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
cmp ecx, 2
mov eax, dword [eax + 8]
jne 0x4d9e98
add eax, 0xffffffbf
cmp eax, 0x16
ja case.0x4d9ee4.14
xor ecx, ecx
mov cl, byte [eax + 0x4da188]
jmp dword [ecx*4 + 0x4da168]
mov ecx, esi
call fcn.004edea0
pop edi
mov eax, 1
pop esi
ret 0xc
mov ecx, esi
call fcn.004f05a0
pop edi
mov eax, 1
pop esi
ret 0xc
push 0xb25a
mov ecx, esi
call fcn.004e5ed0
pop edi
mov eax, 1
pop esi
ret 0xc
push 0
push 0xa773
push 0x111
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
pop edi
mov eax, 1
pop esi
ret 0xc
push 0xb25b
mov ecx, esi
call fcn.004e5ed0
pop edi
mov eax, 1
pop esi
ret 0xc
push 0
push 0xa772
push 0x111
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
pop edi
mov eax, 1
pop esi
ret 0xc
push 0
push 0x8069
push 0x111
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
pop edi
mov eax, 1
pop esi
ret 0xc
cmp ecx, 3
jne 0x4d9ec7
cmp eax, 0x41
jne case.0x4d9ee4.14
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
mov ecx, esi
call fcn.004ede60
pop edi
mov eax, 1
pop esi
ret 0xc
cmp ecx, 4
jne 0x4d9f8e
lea ecx, [eax - 8]
cmp ecx, 0x6a
ja case.0x4d9ee4.14
xor edx, edx
mov dl, byte [ecx + 0x4da1bc]
jmp dword [edx*4 + 0x4da1a0]
mov ecx, esi
call fcn.004dfad0
pop edi
mov eax, 1
pop esi
ret 0xc
mov ecx, esi
call fcn.004dfb10
pop edi
mov eax, 1
pop esi
ret 0xc
mov ecx, esi
call fcn.004dfaf0
pop edi
mov eax, 1
pop esi
ret 0xc
mov ecx, esi
call fcn.004edec0
pop edi
mov eax, 1
pop esi
ret 0xc
mov esi, dword [esi + 0xf0]
test esi, esi
je case.0x4d9ee4.14
push str.properties
push edi
lea ecx, [esi + 0x1d0]
call fcn.00511600
pop edi
pop esi
ret 0xc
push eax
call fcn.00480f10
add esp, 4
test eax, eax
jne 0x4da157
mov eax, dword [0x54f924]
test eax, eax
je 0x4da157
lea ecx, [esi + 0x4a8]
call fcn.00423d60
test eax, eax
je 0x4da157
pop edi
mov eax, 1
pop esi
ret 0xc
test ecx, ecx
jne case.0x4d9ee4.14
cmp eax, 0x74
jne 0x4d9fda
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
mov eax, dword [0x55f248]
test eax, eax
je 0x4d9fc9
mov eax, dword [esi + 0x420]
test eax, eax
je 0x4d9fc9
lea ecx, [esi + 0x2b8]
call fcn.005170e0
mov ecx, esi
call fcn.004e5430
pop edi
mov eax, 1
pop esi
ret 0xc
cmp eax, 0x72
jne 0x4d9fe5
push eax
jmp 0x4da121
cmp eax, 0x2a
jne 0x4d9fed
push eax
jmp 0x4d9ff3
cmp eax, 0x79
jne 0x4da013
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
mov ecx, esi
call fcn.004eeb80
pop edi
mov eax, 1
pop esi
ret 0xc
cmp eax, 0x73
jne 0x4da055
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
mov eax, dword [0x54f924]
test eax, eax
je case.0x4d9ee4.14
cmp dword [esp + 0x14], 1
jne case.0x4d9ee4.14
lea ecx, [esi + 0x4a8]
call fcn.00423cf0
pop edi
mov eax, 1
pop esi
ret 0xc
cmp eax, 0x76
jne 0x4da07f
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
push 1
push 0x6f
mov ecx, esi
call fcn.004e5f50
pop edi
mov eax, 1
pop esi
ret 0xc
cmp eax, 0x77
jne 0x4da0a9
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
push 1
push 0x70
mov ecx, esi
call fcn.004e5f50
pop edi
mov eax, 1
pop esi
ret 0xc
cmp eax, 0xa6
jne 0x4da0d1
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
mov ecx, esi
call fcn.004dfad0
pop edi
mov eax, 1
pop esi
ret 0xc
cmp eax, 0xa7
jne 0x4da0f5
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
mov ecx, esi
call fcn.004dfb10
pop edi
mov eax, 1
pop esi
ret 0xc
cmp eax, 0xa8
jne 0x4da119
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
mov ecx, esi
call fcn.004e5430
pop edi
mov eax, 1
pop esi
ret 0xc
cmp eax, 0xaa
jne 0x4da13d
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
mov ecx, esi
call fcn.004eded0
pop edi
mov eax, 1
pop esi
ret 0xc
cmp eax, 0xac
jne case.0x4d9ee4.14
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ah, 0x80
je case.0x4d9ee4.14
mov ecx, esi
call fcn.004dfb30
pop edi
mov eax, 1
pop esi
ret 0xc
pop edi
xor eax, eax
pop esi
ret 0xc