Function at 0x4446f0
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffe0
push ebx
push esi
push edi
mov dword [ebp - 4], edx
mov edi, eax
lea esi, [ebp - 0x20]
cmp dword [0x4afc84], 0
jne 0x44475e
push str.MENUACC
push dword [0x4bb918]
call sub.USER32.DLL_LoadAcceleratorsA
mov dword [0x4afc84], eax
push str.LISTACC
push dword [0x4bb918]
call sub.USER32.DLL_LoadAcceleratorsA
mov dword [0x4d31e0], eax
push str.FILEACC
push dword [0x4bb918]
call sub.USER32.DLL_LoadAcceleratorsA
mov dword [0x4d31e4], eax
push str.VIEWACC
push dword [0x4bb918]
call sub.USER32.DLL_LoadAcceleratorsA
mov dword [0x4d31e8], eax
push 0
push 0
push 0
push esi
call sub.USER32.DLL_GetMessageA
test eax, eax
jne 0x444775
xor eax, eax
jmp 0x444a17
mov edx, dword [esi + 4]
cmp edx, dword [0x4d31dc]
jne 0x444799
mov ebx, dword [esi + 0xc]
xor edx, edx
mov eax, ebx
call fcn.0048a8f0
push ebx
call sub.KERNEL32.DLL_GlobalFree
mov al, 1
jmp 0x444a17
call sub.USER32.DLL_GetFocus
mov ebx, eax
test ebx, ebx
je 0x444a09
cmp dword [0x4cfe3c], 0
je 0x4447e5
cmp dword [0x4d31e8], 0
je 0x4447e5
push ebx
call sub.USER32.DLL_GetParent
cmp eax, dword [0x4cfe3c]
jne 0x4447e5
push esi
push dword [0x4d31e8]
push dword [0x4cfe3c]
call sub.USER32.DLL_TranslateAcceleratorA
test eax, eax
je 0x4447e5
mov al, 1
jmp 0x444a17
mov eax, esi
mov edx, dword [0x4d31e4]
call fcn.00478478
test al, al
je 0x4447fd
mov al, 1
jmp 0x444a17
cmp dword [0x4cfe40], 0
je 0x44481d
push esi
push dword [0x4cfe40]
call sub.USER32.DLL_IsDialogMessageA
test eax, eax
je 0x44481d
mov al, 1
jmp 0x444a17
cmp dword [0x4cfe44], 0
je 0x44483d
push esi
push dword [0x4cfe44]
call sub.USER32.DLL_IsDialogMessageA
test eax, eax
je 0x44483d
mov al, 1
jmp 0x444a17
push 0x10
call sub.USER32.DLL_GetKeyState
test ah, 0x80
setne al
and eax, 1
cmp dword [esi + 4], 0x100
jne 0x444878
cmp dword [esi + 8], 9
jne 0x444878
or edx, 0xffffffff
test al, al
jne 0x444866
add edx, 2
mov eax, edx
call fcn.004404df
test al, al
je 0x444878
mov al, 1
jmp 0x444a17
call fcn.0048a7d0
test eax, eax
je 0x4448a8
cmp dword [esi + 4], 0x100
jne 0x4448a8
cmp dword [esi + 8], 0x70
jne 0x4448a8
mov edx, 0x4affc0
xor ecx, ecx
mov eax, dword [0x4cfe34]
call fcn.00467350
mov al, 1
jmp 0x444a17
cmp dword [esi + 4], 0x205
jne 0x4448cc
mov edx, dword [esi]
cmp edx, dword [0x4d0388]
jne 0x4448cc
mov eax, 0x4d0388
call fcn.0047acf0
mov al, 1
jmp 0x444a17
cmp dword [esi + 4], 0x203
jne 0x4448f6
mov edx, dword [esi]
cmp edx, dword [0x4d0388]
jne 0x4448f6
mov eax, 0x4d0388
mov edx, dword [0x4cfe34]
call fcn.0047b314
mov al, 1
jmp 0x444a17
cmp ebx, dword [0x4cfe48]
je 0x444906
cmp ebx, dword [0x4d0374]
jne 0x444980
cmp dword [0x4d31e0], 0
je 0x444934
cmp ebx, dword [0x4cfe48]
jne 0x444934
push esi
push dword [0x4d31e0]
push dword [0x4cfe34]
call sub.USER32.DLL_TranslateAcceleratorA
test eax, eax
je 0x444934
mov al, 1
jmp 0x444a17
cmp dword [0x4afc84], 0
je 0x44495a
push esi
push dword [0x4afc84]
push dword [0x4cfe34]
call sub.USER32.DLL_TranslateAcceleratorA
test eax, eax
je 0x44495a
mov al, 1
jmp 0x444a17
cmp dword [0x4d31e4], 0
je 0x4449d8
push esi
push dword [0x4d31e4]
push dword [0x4cfe34]
call sub.USER32.DLL_TranslateAcceleratorA
test eax, eax
je 0x4449d8
mov al, 1
jmp 0x444a17
cmp dword [0x4cfe3c], 0
je 0x4449ac
cmp dword [0x4d31e8], 0
je 0x4449ac
push esi
push dword [0x4d31e8]
push dword [0x4cfe3c]
call sub.USER32.DLL_TranslateAcceleratorA
test eax, eax
je 0x4449ac
mov al, 1
jmp 0x444a17
cmp dword [0x4cfe40], 0
je 0x4449d8
cmp dword [0x4d31e4], 0
je 0x4449d8
push esi
push dword [0x4d31e4]
push dword [0x4cfe40]
call sub.USER32.DLL_TranslateAcceleratorA
test eax, eax
je 0x4449d8
mov al, 1
jmp 0x444a17
test edi, edi
je 0x4449eb
push esi
push edi
call sub.USER32.DLL_IsDialogMessageA
test eax, eax
je 0x4449eb
mov al, 1
jmp 0x444a17
cmp dword [ebp - 4], 0
je 0x444a09
push esi
push 0
push 0x475
push dword [ebp - 4]
call sub.USER32.DLL_SendMessageA
test eax, eax
je 0x444a09
mov al, 1
jmp 0x444a17
push esi
call sub.USER32.DLL_TranslateMessage
push esi
call sub.USER32.DLL_DispatchMessageA
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret