Function at 0x14006c210
Capabilities:
Log keystrokes via input method manager

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
cmp dword [rdx + 8], 0x100
mov rbx, rdx
mov rdi, rcx
je case.default.0x14006c23d
mov rdx, rbx
mov rcx, rdi
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp qword [sym.imp.mfc140u.dll_CPreviewView::OnVScroll]
mov eax, 0xe5
mov word [rcx + 0x184], ax
cmp qword [rdx + 0x10], rax
jne 0x14006c22d
mov rcx, qword [rdx]
call qword [sym.imp.IMM32.dll_ImmGetVirtualKey]
mov word [rdi + 0x184], ax
jmp 0x14006c22d
or bh, 9
add byte [rax], al
xor byte [rax], 0x14
add dword [rax], eax
add byte [rax + 1], al
add dword [rax], eax
add dword [rax], eax
cmp eax, dword [rax]
invalid
add dword [rax], eax
add dword [rax], eax
add byte [rax + 0x1f], dl
add byte [rax + 1], al
add dword [rax], eax
add byte [rax], al
invalid
add byte [rax + 1], r8b
add byte [rax], dh
and al, byte [rax]
add dword [rax], eax
add byte [rax], al
add al, al
and al, byte [rax]
add dword [rax], eax
sub al, 0
add dword [rax], eax
add byte [rax], al
shr byte [rdi], 0
add dword [rax], eax
add byte [rax], al
xor byte [rax], dh
add byte [rax + 1], al
add byte [rax], al
add byte [rax], al
add byte [rax + 1], r8b
add byte [rax], al
add al, dl
add byte [r8 + 1], r8b
add byte [rax + 1], al
add byte [rax + 1], al
add byte [rax], al
add byte [rax], dl
add dword [rax], eax
invalid
add byte [rax], al
add byte [rax + 0x140064c], dl
nop
invalid
invalid
add dword [rax], eax
add byte [rax], al
xor byte [rdx + 6], bh
add dword [rax], eax
add byte [rax], al
sub byte [rax + rax + reloc.mfc140u.dll_AFX_DDPDATA::AFX_DDPDATA], ah
movsb byte [rdi], byte [rsi]
add byte [rax + 1], al
add byte [rax], al
add ah, bl
pop rcx
add byte [rax], al
add byte [rax], dl
mov esi, 0x14007
add dword [rax], eax
nop
mov dword [rax], eax
add dword [rax], eax
add byte [rax], al
adc byte [rdx + 0x14007], bh
invalid
add dword [rax], eax
add byte [rax], al
nop
invalid
add dword [rax], eax
int 0xc7
mov ebp, 0xc02082a
or byte [rdx], al
or al, 0x6a
invalid
mov byte [rdx - 0x59ee2b0f], dl
adc dword [rsi - 0x69bfffa1], esp
invalid
add byte [rax], al
add byte [rax - 0x1a], ah
add byte [rax + 1], al
add byte [rax], al
add byte [rax - 0x20], al
add byte [rax + 1], al
add byte [rax], al
add byte [rax - 7], dh
add al, byte [rax + 1]
add byte [rax], al
add byte [rax], dl
adc byte [rsi + 0x14007], bh
add byte [rax], al
in al, dx
add byte [rax], al
add byte [rax - 0x29], dl
invalid
add byte [rax], al
add al, al
movsb byte [rdi], byte [rsi]
add dword ss:[rax], eax
add dword [rax], eax
add byte [rax], al
add byte [rax], ah
jge 0x14032f42c
add dword [rax], eax
add byte [rax], al
add al, dh
lodsd eax, dword [rsi]
add eax, reloc.mfc140u.dll_AFX_DDPDATA::AFX_DDPDATA
add al, ah
invalid
cmp eax, 0x14007
add byte [rax], al
push rax
movsb byte [rdi], byte [rsi]
add dword [rax], eax
add byte [rax], al
add byte [rax], bl
sbb dh, dl
add byte [rax], al
sbb dh, dl
sbb eax, reloc.mfc140u.dll_AFX_DDPDATA::AFX_DDPDATA
add byte [rax + rax + 0x6f], dl
push rsp
add byte [rdi], ch
outsd dx, dword [rsi]
add byte [rax + rax + 0x62], ch
invalid
invalid
add dword [rax], eax
add byte [rax], al
pop rsp
invalid
add byte [rcx], cl
add byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rax], al
add byte [rcx], cl
add byte [r8 + rax + 0x5f], al
add byte [rdi], dl
outsd dx, dword [rsi]
add byte [rdx], dh
jb 0x1403301b0
add byte [rax], al
add al, dh
fld qword [rdi]
add dword [rax], eax
add byte [rax], al
sbb byte [rdx + 0x2d], ah
add dword [rax], eax
add byte [rax], al
add al, 0x62
sub eax, reloc.mfc140u.dll_AFX_DDPDATA::AFX_DDPDATA
add dword [rax], eax
add byte [rax], al
and al, 0x91
add byte [rax - 0x5f], ch
sub al, 0x40
add dword [rax], eax
add byte [rax], al
and byte [rbp + 1], bh
add dword [rax], eax
add dword [rax], eax
add ah, dl
loop 0x140330650
add dword [rax], eax
add byte [rax], al
invalid
add byte [rax], al
add dword [rax], eax
add byte [rax + 0x14036a8], al
add byte [rax], al
add dword [rax], eax
add dword [rax], eax
add dword ss:[rax], eax
add byte [rax], al
xor bh, bl
invalid
jge 0x140330bd4
add dword [rax], eax
add dword [rax], eax
add byte [rax], al
and byte [rbp + 1], bh
add dword [rax], eax
add dword [rax], eax
movabs al, byte [0xa054000000014008]
or byte [rax + 1], al
add byte [rax], al
add byte [rax + riz*4 + 8], dl
add dword [rax], eax
add byte [rax], al
push rsp
movabs al, byte [0x9124000000014008]
or byte [rax + 1], al
add byte [rax], al
add byte [rcx + rdx*4], ah
xchg ecx, eax
add byte [rax + riz*4 + 8], dl
add dword [rax], eax
add byte [rax], al
push rsp
movabs al, byte [0xa054000000014008]
add dword [rax], eax
add dword [rax], eax
add byte [rax], al
invalid
add dword [rax], eax
add byte [rax], al
invalid
add dword [rax], eax
add byte [rax], al
hlt