Function at 0x1400535d8
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x20], rsi
mov qword [rax + 0x18], r8
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
mov rbp, rcx
mov rcx, r9
mov rdi, r9
mov rsi, rdx
call qword [sym.imp.USER32.dll_SetRectEmpty]
mov ecx, 0x11
call qword [sym.imp.USER32.dll_GetKeyState]
xor r14d, r14d
cmp ax, r14w
jl 0x1400538eb
mov rbx, qword [rbp]
lea r15, str.CPaneFrameWnd
mov rdx, rsi
mov rcx, r15
mov dword [rsp + 0x44], r14d
mov dword [rsp + 0x40], r14d
call fcn.14005a7e4
mov rdx, qword [rsp + 0xa0]
lea r9d, [r14 + 1]
mov r8, rax
mov rcx, rbp
call qword [rbx + 0x28]
mov r12, qword [rsp + 0xb8]
mov r13, qword [rsp + 0xb0]
cmp rax, r14
je 0x1400536a3
mov r10, qword [rax]
mov r8, qword [rsp + 0xa0]
mov r9, rdi
mov rdx, rsi
mov rcx, rax
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r13
call qword [r10 + 0x330]
mov rcx, rdi
call qword [sym.imp.USER32.dll_IsRectEmpty]
cmp eax, r14d
je 0x1400538eb
mov rax, qword [rbp + 0x308]
cmp rax, r14
je 0x1400536e6
cmp dword [rax + 0xc], r14d
je 0x1400536e6
cmp dword [rax + 8], r14d
je 0x1400536e6
mov rdx, rsi
mov rcx, r15
call fcn.14005a7e4
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0x300]
lea rcx, str.CBasePane
mov rdx, rax
call fcn.14005a7e4
mov r11, rax
jmp 0x1400536e9
mov r11, r14
mov rax, qword [rbp]
mov r8d, dword [0x14024d9b0]
mov rdx, qword [rsp + 0xa0]
mov qword [rsp + 0x30], r11
mov r9b, 1
mov rcx, rbp
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x20], r14
call qword [rax + 0x20]
lea rcx, str.CDockablePane
mov rdx, rax
call fcn.14005a7e4
mov rbx, rax
cmp rax, r14
je 0x1400537a1
mov rcx, rax
call fcn.140115948
cmp rax, r14
je 0x1400537a1
mov rdx, r15
mov rcx, rsi
call fcn.14005a7b0
cmp eax, r14d
je 0x14005376f
mov rdx, rsi
mov rcx, r15
call fcn.14005a7e4
mov r8, qword [rbx]
mov rcx, rbx
mov rdx, rax
call qword [r8 + 0x628]
cmp eax, r14d
je 0x1400538eb
mov rcx, rbx
call fcn.140115948
mov r8, qword [rsp + 0xa0]
mov r9, rdi
mov r10, qword [rax]
mov rdx, rsi
mov rcx, rax
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r13
call qword [r10 + 0x4e8]
jmp 0x1400538eb
mov rdx, qword [rsp + 0xa0]
lea r9, [rsp + 0x44]
lea r8, [rsp + 0x40]
mov rcx, rbp
call fcn.1400520dc
mov qword [r12], r14
cmp eax, r14d
je 0x1400538eb
mov rdx, r15
mov rcx, rsi
call fcn.14005a7b0
cmp eax, r14d
je 0x140053805
mov rdx, rsi
mov rcx, r15
call fcn.14005a7e4
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0x300]
lea rcx, str.CPane
mov rdx, rax
call fcn.14005a7e4
cmp rax, r14
je 0x14005383e
jmp 0x140053828
lea rdx, str.CDockablePane
mov rcx, rsi
call fcn.14005a7b0
cmp eax, r14d
je 0x14005383e
lea rcx, str.CDockablePane
mov rdx, rsi
call fcn.14005a7e4
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x2e0]
test dword [rsp + 0x40], eax
je 0x1400538eb
mov rcx, qword [rsi + 0x40]
lea rdx, [rsp + 0x48]
call qword [sym.imp.USER32.dll_GetWindowRect]
cmp dword [rsp + 0x44], r14d
lea rax, [rbp + 0x1d8]
lea rcx, [rbp + 0x1c8]
cmovne rcx, rax
movdqu xmm0, xmmword [rcx]
movdqu xmmword [rdi], xmm0
mov rcx, qword [rbp + 0x1b0]
call fcn.14001246c
mov r8d, dword [rsp + 0x40]
and eax, 0x400000
cmp r8d, 0x1000
je 0x140053919
cmp r8d, 0x2000
je 0x140053909
cmp r8d, 0x4000
je 0x1400538ba
cmp r8d, 0x8000
jne 0x1400538cc
mov eax, dword [rdi + 0xc]
sub eax, dword [rsp + 0x54]
add eax, dword [rsp + 0x4c]
mov dword [rdi + 4], eax
jmp 0x1400538cc
cmp eax, r14d
je 0x14005391e
mov eax, dword [rdi]
sub eax, dword [rsp + 0x48]
add eax, dword [rsp + 0x50]
mov dword [rdi + 8], eax
mov rax, qword [rbp]
mov rdx, rdi
mov rcx, rbp
call qword [rax + reloc.OLEAUT32.dll_VariantTimeToSystemTime]
mov rcx, qword [rbp + 0x1b0]
mov rdx, rdi
call fcn.14002a30c
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov eax, dword [rdi + 4]
sub eax, dword [rsp + 0x4c]
add eax, dword [rsp + 0x54]
mov dword [rdi + 0xc], eax
jmp 0x1400538cc
cmp eax, r14d
je 0x1400538bf
mov eax, dword [rdi + 8]
sub eax, dword [rsp + 0x50]
add eax, dword [rsp + 0x48]
mov dword [rdi], eax
jmp 0x1400538cc