Function at 0x409660
Capabilities:
Check for time delay via gettickcount
Log keystrokes via polling

Disassembly:
mov eax, dword [esp + 4]
push esi
push edi
push 0xffffffffffffffeb
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov esi, eax
test esi, esi
je 0x40995a
mov eax, dword [esi + 0x5c]
test eax, eax
je 0x409685
pop edi
xor eax, eax
pop esi
ret
mov eax, dword [esp + 0x10]
cmp eax, 0xbb
je 0x4097db
cmp eax, 0x6b
je 0x4097db
cmp eax, 0x27
je 0x4097db
cmp eax, 0x26
je 0x4097db
cmp eax, 0xbd
je 0x4096c9
cmp eax, 0x6d
je 0x4096c9
cmp eax, 0x25
je 0x4096c9
cmp eax, 0x28
jne 0x40995a
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
sar ax, 8
cmp ax, 0xffff
jne 0x40995a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, dword [0x4275d8]
mov ecx, eax
sub ecx, edi
cmp ecx, 0x1f4
jb 0x40995a
push 0
mov ecx, esi
mov dword [0x4275d8], eax
call fcn.0040a5d0
call fcn.0040e8a0
mov ecx, dword [eax + 0x7ea8]
mov edi, 8
cmp ecx, edi
jg 0x40972a
call fcn.0040e8a0
mov dword [eax + 0x7ea8], edi
jmp 0x40976e
call fcn.0040e8a0
cmp dword [eax + 0x7ea8], 0xc
jg 0x40974b
call fcn.0040e8a0
mov ecx, dword [eax + 0x7ea8]
add eax, 0x7ea8
dec ecx
jmp 0x40976c
call fcn.0040e8a0
cmp dword [eax + 0x7ea8], 0x20
jg 0x40976e
call fcn.0040e8a0
mov ecx, dword [eax + 0x7ea8]
add eax, 0x7ea8
add ecx, 0xfffffffe
mov dword [eax], ecx
push 4
call fcn.0040e8a0
add eax, 0x7ea8
push eax
push 4
push str.FontSize
push str.Configuration_view
call fcn.0040d070
add esp, 0x14
push 4
call fcn.0040e8a0
add eax, 0x7ea8
push eax
push 4
push str.FontSize
push 0x42620c
call fcn.0040d070
add esp, 0x14
call fcn.0040e8a0
mov ecx, dword [eax + 0x7e58]
test ecx, ecx
je 0x409934
call fcn.0040e8a0
mov ecx, dword [eax + 0x7dc4]
test ecx, ecx
je 0x409934
jmp 0x4098f0
push 0x11
call dword [sym.imp.USER32.dll_GetKeyState]
sar ax, 8
cmp ax, 0xffff
jne 0x40995a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, dword [0x4275d8]
mov ecx, eax
sub ecx, edi
cmp ecx, 0x1f4
jb 0x40995a
push 0
mov ecx, esi
mov dword [0x4275d8], eax
call fcn.0040a5d0
call fcn.0040e8a0
cmp dword [eax + 0x7ea8], 0xc
jge 0x40983e
call fcn.0040e8a0
mov ecx, dword [eax + 0x7ea8]
add eax, 0x7ea8
inc ecx
mov dword [eax], ecx
jmp 0x409881
call fcn.0040e8a0
mov ecx, dword [eax + 0x7ea8]
mov edi, 0x20
cmp ecx, edi
jge 0x409869
call fcn.0040e8a0
mov ecx, dword [eax + 0x7ea8]
add eax, 0x7ea8
add ecx, 2
mov dword [eax], ecx
jmp 0x409881
call fcn.0040e8a0
cmp dword [eax + 0x7ea8], edi
jl 0x409881
call fcn.0040e8a0
mov dword [eax + 0x7ea8], edi
push 4
call fcn.0040e8a0
add eax, 0x7ea8
push eax
push 4
push str.FontSize
push str.Configuration_view
call fcn.0040d070
add esp, 0x14
push 4
call fcn.0040e8a0
add eax, 0x7ea8
push eax
push 4
push str.FontSize
push 0x42620c
call fcn.0040d070
add esp, 0x14
call fcn.0040e8a0
mov ecx, dword [eax + 0x7e58]
test ecx, ecx
je 0x409934
call fcn.0040e8a0
mov ecx, dword [eax + 0x7dc4]
test ecx, ecx
je 0x409934
call fcn.0040e8a0
mov ecx, dword [eax + 0x7ec4]
test ecx, ecx
je 0x409934
call fcn.0040e8a0
mov eax, dword [eax + 0x7dc4]
push 0
push 0
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x14]
mov eax, dword [esi]
push 0
push 0
mov ecx, esi
call dword [eax + 0x14]
call fcn.0040e8a0
mov ecx, dword [eax + 0x7ea8]
mov edx, dword [esi + 0x44]
sub ecx, 9
push ecx
push edx
call fcn.004184a0
add esp, 8
mov eax, 1
pop edi
pop esi
ret
call fcn.0040e8a0
mov eax, dword [eax + 0x7ea8]
mov ecx, dword [esi + 0x44]
sub eax, 9
push eax
push ecx
call fcn.004184a0
mov edx, dword [esi]
add esp, 8
mov ecx, esi
push 0
push 0
call dword [edx + 0x14]
pop edi
mov eax, 1
pop esi
ret