Function at 0x14005e2a0
Capabilities:
Log keystrokes via polling

Disassembly:
push rbp
push rsi
sub rsp, 0x48
mov rax, qword [0x14026f088]
xor rax, rsp
mov qword [rsp + 0x30], rax
cmp qword [rcx + 0x10], 0
movzx ebp, dl
mov rsi, rcx
je 0x14005e545
cmp byte [0x140279e38], 0
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x40], rdi
je 0x14005e2e4
cmp qword [0x140279f30], 0
jne 0x14005e2e9
test bpl, bpl
jne 0x14005e329
test bpl, bpl
sete dl
call fcn.14005e560
movzx edx, bpl
lea rcx, [0x1402792a0]
call fcn.1400b0ed0
cmp qword [rsi + 0x18], 0
je 0x14005e329
mov rcx, qword [rsi + 8]
test bpl, bpl
sete bl
movzx edx, bl
call fcn.14003d4d0
mov rcx, qword [rsi + 0x18]
movzx edx, bl
call fcn.14002fe00
xor edi, edi
cmp qword [rsi + 0x18], rdi
je 0x14005e398
lea ecx, [rdi + 0x14]
mov qword [rsp + 0x20], rdi
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
mov ecx, 0x90
setne bl
call qword [sym.imp.USER32.dll_GetKeyState]
lea r8, [rsp + 0x20]
movzx edx, bl
test ax, ax
setne cl
call fcn.14008a530
mov rcx, qword [rsi + 0x18]
test al, al
je 0x14005e37e
mov rdx, qword [rsp + 0x20]
add rcx, 0x3a0
call fcn.140033360
jmp 0x14005e383
call fcn.14002feb0
mov rcx, qword [0x14027a4f0]
test rcx, rcx
je 0x14005e398
add rcx, 0x28
call fcn.140158e00
mov rax, qword [rsi + 0x10]
lea rdx, [rsp + 0x20]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
mov rbx, qword [rax + 8]
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetClientRect]
xor r8d, r8d
lea rdx, [rsp + 0x20]
mov rcx, rbx
call qword [sym.imp.USER32.dll_InvalidateRect]
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x14005e3d6
call fcn.14003d5a0
mov rax, qword [rsi + 8]
mov rbx, qword [rax + 0xe8]
test rbx, rbx
je 0x14005e4f7
mov r8, qword [rbx + 0x108]
mov rdx, rdi
sub r8, qword [rbx + 0x100]
sar r8, 3
test r8, r8
je 0x14005e447
mov rax, qword [rbx + 0x100]
nop dword [rax + rax]
mov rcx, qword [rax]
test rcx, rcx
je 0x14005e447
cmp dword [rcx + 0xa0], 0x900
je 0x14005e432
inc rdx
add rax, 8
cmp rdx, r8
jne 0x14005e410
jmp 0x14005e447
mov rcx, qword [rcx + 8]
mov r9d, 5
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_RedrawWindow]
mov r8, qword [rbx + 0x108]
mov rdx, rdi
sub r8, qword [rbx + 0x100]
sar r8, 3
test r8, r8
je 0x14005e49f
mov rax, qword [rbx + 0x100]
mov rcx, qword [rax]
test rcx, rcx
je 0x14005e49f
cmp dword [rcx + 0xa0], 0x901
je 0x14005e48a
inc rdx
add rax, 8
cmp rdx, r8
jne 0x14005e468
jmp 0x14005e49f
mov rcx, qword [rcx + 8]
mov r9d, 5
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_RedrawWindow]
mov rdx, qword [rbx + 0x108]
sub rdx, qword [rbx + 0x100]
sar rdx, 3
test rdx, rdx
je 0x14005e4f7
mov rax, qword [rbx + 0x100]
nop dword [rax]
mov rcx, qword [rax]
test rcx, rcx
je 0x14005e4f7
cmp dword [rcx + 0xa0], 0x902
je 0x14005e4e2
inc rdi
add rax, 8
cmp rdi, rdx
jne 0x14005e4c0
jmp 0x14005e4f7
mov rcx, qword [rcx + 8]
mov r9d, 5
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_RedrawWindow]
mov rax, qword [0x140278e80]
mov rdi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x70]
cmp qword [rax + 0x1d0], 0
je 0x14005e52f
lea rcx, [0x140279b00]
test bpl, bpl
je 0x14005e525
call fcn.140140600
jmp 0x14005e52f
mov edx, 0x3ef
call fcn.140140450
mov rax, qword [0x1402791e8]
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x14005e545
call qword [sym.imp.USER32.dll_SetFocus]
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.140185a60
add rsp, 0x48
pop rsi
pop rbp
ret