Function at 0x69e3da
Capabilities:
Log keystrokes via polling

Disassembly:
push 0x50
mov eax, 0x782d4b
call fcn.00755cec
mov ebx, ecx
mov dword [ebp - 0x3c], ebx
cmp byte [ebx + 0x2c8], 0
je 0x69e3fb
mov byte [ebx + 0x2c8], 0
cmp dword [ebx + 0x35c], 0
je 0x69e825
mov eax, dword [ebx]
mov esi, dword [eax + 0x19c]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, ebx
call esi
push eax
mov ecx, 0x7e24f0
call fcn.0064444d
mov dword [ebp - 0x40], eax
test eax, eax
jne 0x69e43a
cmp dword [0x7e24f4], eax
je 0x69e83b
mov eax, dword [ebx + 0x35c]
mov edi, dword [ebx + 0x358]
mov dword [ebp - 0x38], eax
mov eax, dword [ebx]
mov esi, dword [eax + 0x38c]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, ebx
call esi
mov ecx, ebx
call fcn.0069d730
mov edx, dword [ebp - 0x38]
mov esi, eax
mov dword [ebp - 0x34], esi
cmp edi, edx
jne 0x69e49e
mov ecx, edx
sub ecx, 8
je 0x69e750
sub ecx, 1
je 0x69e557
sub ecx, 0xa
je 0x69e4aa
mov eax, dword [ebx]
push edx
mov esi, dword [eax + 0x37c]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, ebx
call esi
mov ecx, ebx
call fcn.00625b50
jmp 0x69e833
mov esi, dword [0x7eb24c]
test esi, esi
jne 0x69e4c1
mov ecx, ebx
call fcn.00626390
mov esi, eax
test esi, esi
je 0x69e53e
push esi
push 0x799ec0
call fcn.0062c8a4
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x69e4de
mov ecx, dword [edi]
mov esi, dword [ecx + 0x218]
jmp 0x69e529
push esi
push 0x799930
call fcn.0062c8a4
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x69e4fb
mov ecx, dword [edi]
mov esi, dword [ecx + 0x1f8]
jmp 0x69e529
push esi
push 0x7a0a3c
call fcn.0062c8a4
mov edi, eax
pop ecx
pop ecx
test edi, edi
jne 0x69e521
push esi
push 0x7a0df8
call fcn.0062c8a4
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x69e53e
mov ecx, dword [edi]
mov esi, dword [ecx + 0x210]
push ebx
mov ecx, esi
call dword [0x78d9c4]
mov ecx, edi
call esi
test eax, eax
je 0x69e49e
mov eax, dword [ebx]
mov esi, dword [eax + 0x2dc]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, ebx
call esi
jmp 0x69e49e
push 0x11
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x69e6d8
mov eax, dword [ebx]
mov esi, dword [eax + 0x340]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, ebx
call esi
test eax, eax
je 0x69e6d5
mov eax, dword [ebx + 0xa4]
xor esi, esi
push esi
push esi
push 0xb
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [ebx + 0x2f8], esi
jne 0x69e641
push 0xa
lea ecx, [ebp - 0x5c]
call fcn.006ce2b8
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x5c]
push eax
mov dword [ebp - 4], esi
call fcn.006d7657
mov ecx, dword [ebp - 0x58]
test ecx, ecx
je 0x69e633
mov ebx, dword [ebp - 0x34]
push dword [ecx + 8]
mov ecx, dword [ecx]
push 0x7e277c
mov dword [ebp - 0x34], ecx
call fcn.0062c8a4
mov edi, eax
pop ecx
pop ecx
mov dword [ebp - 0x38], edi
mov ecx, dword [edi]
mov esi, dword [ecx + 0x340]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, edi
call esi
test eax, eax
je 0x69e629
mov eax, dword [edi]
mov edi, dword [eax + 0x368]
mov eax, dword [ebx]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, ebx
call esi
push 0
push 0
push eax
push 1
mov ecx, edi
call dword [0x78d9c4]
mov ecx, dword [ebp - 0x38]
call edi
mov ecx, dword [ebp - 0x34]
test ecx, ecx
jne 0x69e5c8
mov ebx, dword [ebp - 0x3c]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5c]
call fcn.006ce2de
jmp 0x69e675
mov edi, dword [ebx + 0x330]
mov eax, dword [edi]
mov esi, dword [eax + 0x1a0]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, edi
call esi
push eax
push 0x7a8230
call fcn.0062c8a4
pop ecx
pop ecx
test eax, eax
je 0x69e675
push 0
mov ecx, eax
call fcn.006f7ff4
mov eax, dword [ebx + 0xa4]
push 0
push 1
push 0xb
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageW]
push dword [ebx + 0xa4]
push 0x7a3408
call fcn.0062c8a4
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x69e6b8
mov ecx, dword [edi]
push 1
mov esi, dword [ecx + 0x178]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, edi
call esi
mov eax, dword [ebx + 0xa4]
push 0x181
push 0
push 0
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_RedrawWindow]
jmp 0x69e833
mov esi, dword [ebp - 0x34]
mov edi, dword [ebp - 0x40]
test edi, edi
je 0x69e833
test esi, esi
je 0x69e833
mov eax, dword [esi]
mov edi, dword [edi + 0x11c]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, dword [ebp - 0x34]
call esi
test edi, eax
je 0x69e833
mov eax, dword [ebx]
mov edi, dword [eax + 0x368]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, dword [ebp - 0x34]
call esi
push 1
push 0
push eax
xor eax, eax
mov ecx, edi
cmp dword [ebx + 0x2f8], eax
sete al
push eax
call dword [0x78d9c4]
mov ecx, ebx
call edi
jmp 0x69e833
cmp dword [0x7eb1d0], 0
je 0x69e833
push 8
mov ecx, ebx
call fcn.0069d680
mov edi, eax
mov dword [ebp - 0x3c], edi
test edi, edi
je 0x69e833
mov ecx, dword [edi]
lea eax, [ebp - 0x30]
push eax
mov esi, dword [ecx + 0xc]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, edi
call esi
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x20]
push eax
push dword [ebx + 0x20]
call dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [ebp - 0x20]
mov ecx, ebx
push eax
call fcn.00621541
push dword [ebp - 0x1c]
lea eax, [ebp - 0x30]
push dword [ebp - 0x20]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
lea eax, [ebp - 0x30]
mov ecx, ebx
push eax
call fcn.00620e87
mov dword [edi + 0x14], 1
mov ecx, ebx
mov eax, dword [ebp - 0x24]
mov esi, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x40], eax
call fcn.0062af02
test eax, 0x400000
je 0x69e7ee
sub esi, dword [ebp - 0x30]
add esi, dword [ebp - 0x28]
mov eax, dword [ebx]
push dword [ebp - 0x40]
mov edi, dword [ebx + 0x20]
push esi
mov esi, dword [eax + 0x2e4]
mov ecx, esi
call dword [0x78d9c4]
mov ecx, ebx
call esi
push edi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x69e833
mov eax, dword [ebp - 0x3c]
mov ecx, ebx
push eax
and dword [eax + 0x14], 0
call fcn.0069fcf0
jmp 0x69e833
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00676f94
call fcn.00755c9b
ret 0xc
call fcn.0060d0be
int3