Function at 0x488c0e
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4be52c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x30
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x38]
sub ecx, 9
mov dword [ebp - 0x38], ecx
cmp dword [ebp - 0x38], 0x26
ja case.0x488c50.5
mov eax, dword [ebp - 0x38]
xor edx, edx
mov dl, byte [eax + 0x488e63]
jmp dword [edx*4 + 0x488e4b]
mov ecx, dword [ebp + 0x14]
call sub.MFC42.DLL_CWnd::GetDlgCtrlID
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 6
jae 0x488c98
mov ecx, dword [ebp - 0x10]
imul ecx, ecx, 0x44
mov edx, dword [ebp - 0x34]
lea ecx, [edx + ecx + 0x40]
call sub.MFC42.DLL_CWnd::SetFocus
cmp dword [ebp + 8], 0x27
je 0x488c98
push 0
push 0xffffffffffffffff
push 0
mov eax, dword [ebp - 0x10]
imul eax, eax, 0x44
mov ecx, dword [ebp - 0x34]
lea ecx, [ecx + eax + 0x40]
call fcn.0047cb40
jmp 0x488e3b
mov ecx, dword [ebp + 0x14]
call sub.MFC42.DLL_CWnd::GetDlgCtrlID
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jbe 0x488cc3
mov edx, dword [ebp - 0x14]
sub edx, 2
imul edx, edx, 0x44
mov eax, dword [ebp - 0x34]
lea ecx, [eax + edx + 0x40]
call sub.MFC42.DLL_CWnd::SetFocus
jmp 0x488e3b
push 0x10
call dword [sym.imp.USER32.dll_GetKeyState]
mov word [ebp - 0x1c], ax
movsx ecx, word [ebp - 0x1c]
test ecx, ecx
jge 0x488cf6
push 1
mov edx, dword [ebp - 0x34]
push edx
mov ecx, dword [ebp - 0x34]
call fcn.0044dd50
mov ecx, eax
call fcn.0047cbc0
mov dword [ebp - 0x18], eax
jmp 0x488d0e
push 0
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp - 0x34]
call fcn.0044dd50
mov ecx, eax
call fcn.0047cbc0
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
je 0x488d1c
mov ecx, dword [ebp - 0x18]
call sub.MFC42.DLL_CWnd::SetFocus
jmp 0x488e3b
mov ecx, dword [ebp - 0x34]
call fcn.0044dd50
mov ecx, eax
call fcn.0047cbf0
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
shr ecx, 0x10
and ecx, 0xffff
and ecx, 0xffff
cmp ecx, 0x534b
jne 0x488d93
mov edx, dword [ebp - 0x20]
and edx, 0xffff
push edx
mov ecx, dword [ebp - 0x34]
call fcn.0044dd50
mov ecx, eax
call sub.MFC42.DLL_CWnd::GetDlgItem
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x20]
and eax, 0xffff
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ecx + 0x20]
push edx
mov eax, dword [ebp - 0x28]
push eax
push 0x111
mov ecx, dword [ebp - 0x34]
call fcn.0044dd50
mov ecx, eax
call fcn.0047cb90
jmp 0x488e3b
mov ecx, dword [ebp - 0x34]
cmp dword [ecx + 0x230], 0
jne 0x488e03
lea ecx, [ebp - 0x2c]
call fcn.004b0fea
mov dword [ebp - 4], 0
lea edx, [ebp - 0x2c]
push edx
mov ecx, dword [ebp + 0x14]
call sub.MFC42.DLL_CWnd::GetWindowTextA
push 0x10
push 0
lea ecx, [ebp - 0x2c]
call fcn.00403780
push eax
call dword [sym.imp.MSVCRT.dll_strtoul]
add esp, 0xc
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jl 0x488de7
cmp dword [ebp - 0x30], 0xff
jle 0x488df4
push 0x4edf64
mov ecx, dword [ebp + 0x14]
call sub.MFC42.DLL_CWnd::SetWindowTextA
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call sub.MFC42.DLL_CString::CString
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
push 0
push 0x2d
mov ecx, dword [ebp - 0x34]
call fcn.00488c0e
jmp 0x488e3b
mov edx, 1
test edx, edx
je 0x488e2b
mov dword [ebp - 0x3c], 0
jmp 0x488e3b
push str.Unexpected_call_to_CMacAddrCtl::OnChildChar__r_n
call fcn.004039b0
add esp, 4
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x10