Function at 0x1400e8630
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x48
mov rax, qword [rsp + 0x58]
cmp dword [rax + 8], 0x100
jne 0x1400e8977
xor edx, edx
mov rcx, qword [rsp + 0x50]
call fcn.1400fde00
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
je 0x1400e867d
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
call fcn.140127a50
jmp 0x1400e8986
mov rcx, qword [rsp + 0x50]
call fcn.1400f7f30
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x50]
cmp dword [rax + 0x1318], 0
je 0x1400e86ae
mov rax, qword [rsp + 0x50]
mov ecx, dword [rax + 0x1344]
mov eax, dword [rsp + 0x28]
sub eax, ecx
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x50]
cmp dword [rax + 0x10bc], 0
jl 0x1400e8977
mov rcx, qword [rsp + 0x50]
mov eax, dword [rsp + 0x28]
cmp dword [rcx + 0x10bc], eax
jge 0x1400e8977
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x10bc]
mov dword [rsp + 0x2c], eax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x34], eax
cmp dword [rsp + 0x34], 9
jne 0x1400e871e
mov ecx, reloc.WS2_32.dll_recv
call qword [sym.imp.USER32.dll_GetKeyState]
cwde
and eax, 0x80
test eax, eax
je 0x1400e8716
mov dword [rsp + 0x34], 0x25
jmp 0x1400e871e
mov dword [rsp + 0x34], 0x27
mov rcx, qword [rsp + 0x50]
call sub.mfc90u.dll_CRichEditView::GetContextMenu
and eax, 0x400000
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0
je 0x1400e8758
cmp dword [rsp + 0x34], 0x25
jne 0x1400e8749
mov dword [rsp + 0x34], 0x27
jmp 0x1400e8758
cmp dword [rsp + 0x34], 0x27
jne 0x1400e8758
mov dword [rsp + 0x34], 0x25
mov eax, dword [rsp + 0x34]
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0xd
je 0x1400e8901
cmp dword [rsp + 0x38], 0x1b
je 0x1400e8794
cmp dword [rsp + 0x38], 0x25
je 0x1400e884f
cmp dword [rsp + 0x38], 0x27
je 0x1400e87c9
cmp dword [rsp + 0x38], 0x28
je 0x1400e88d5
jmp 0x1400e8950
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x50]
call qword [rax + CDockBar::Create]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x50]
call qword [rax + CHotKeyCtrl::Create]
mov dword [0x1404f7dac], 0
jmp 0x1400e8977
mov rax, qword [rsp + 0x50]
mov ecx, dword [rax + 0x10bc]
add ecx, 1
mov rax, qword [rsp + 0x50]
mov dword [rax + CDHtmlEventSink::Invoke], ecx
mov rcx, qword [rsp + 0x50]
mov eax, dword [rsp + 0x28]
cmp dword [rcx + 0x10bc], eax
jl 0x1400e8802
mov rax, qword [rsp + 0x50]
mov dword [rax + COleControlSite::XAmbientProps::Invoke], 0
mov edx, dword [rsp + 0x2c]
mov rcx, qword [rsp + 0x50]
call fcn.1400f0a80
mov r11, qword [rsp + 0x50]
mov edx, dword [r11 + 0x10bc]
mov rcx, qword [rsp + 0x50]
call fcn.1400f0a80
mov rcx, qword [rsp + 0x50]
mov rcx, qword [rcx + 0x40]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rax, qword [rsp + 0x50]
mov edx, dword [rax + 0x10bc]
mov rcx, qword [rsp + 0x50]
call fcn.140102cd0
jmp 0x1400e8977
mov rax, qword [rsp + 0x50]
mov ecx, dword [rax + 0x10bc]
sub ecx, 1
mov rax, qword [rsp + 0x50]
mov dword [rax + CDHtmlEventSink::Invoke], ecx
mov rax, qword [rsp + 0x50]
cmp dword [rax + 0x10bc], 0
jge 0x1400e8888
mov ecx, dword [rsp + 0x28]
sub ecx, 1
mov rax, qword [rsp + 0x50]
mov dword [rax + CDHtmlEventSink::Invoke], ecx
mov edx, dword [rsp + 0x2c]
mov rcx, qword [rsp + 0x50]
call fcn.1400f0a80
mov r11, qword [rsp + 0x50]
mov edx, dword [r11 + 0x10bc]
mov rcx, qword [rsp + 0x50]
call fcn.1400f0a80
mov rcx, qword [rsp + 0x50]
mov rcx, qword [rcx + 0x40]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rax, qword [rsp + 0x50]
mov edx, dword [rax + 0x10bc]
mov rcx, qword [rsp + 0x50]
call fcn.140102cd0
jmp 0x1400e8977
mov rax, qword [rsp + 0x50]
mov edx, dword [rax + 0x10bc]
mov rcx, qword [rsp + 0x50]
call fcn.1400f0a10
mov rdx, rax
mov rcx, qword [rsp + 0x50]
call fcn.1400fdcb0
mov eax, 1
jmp 0x1400e8986
mov rax, qword [rsp + 0x50]
mov edx, dword [rax + 0x10bc]
mov rcx, qword [rsp + 0x50]
call fcn.1400f0a10
mov rdx, rax
mov rcx, qword [rsp + 0x50]
call fcn.1400fdcb0
test eax, eax
jne 0x1400e8949
mov rax, qword [rsp + 0x50]
mov edx, dword [rax + 0x10bc]
mov rcx, qword [rsp + 0x50]
call fcn.1400f0a10
mov rdx, rax
mov rcx, qword [rsp + 0x50]
call fcn.1400fdd70
mov eax, 1
jmp 0x1400e8986
mov r8, qword [rsp + 0x50]
mov r8, qword [r8]
mov rax, qword [rsp + 0x58]
mov edx, dword [rax + 0x10]
mov rcx, qword [rsp + 0x50]
call qword [r8 + CPagerCtrl::CreateEx]
test eax, eax
je 0x1400e8977
mov eax, 1
jmp 0x1400e8986
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
call fcn.1400f8110
add rsp, 0x48
ret