Function at 0x14007dfe4
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov r12, r8
mov rsi, rdx
xor ebx, ebx
cmp rdx, rbx
jne 0x14007e01a
mov qword [rsp + 0x40], rbx
jmp 0x14007e023
mov rax, qword [rdx + 0x40]
mov qword [rsp + 0x40], rax
mov r13d, dword [r8 + 8]
call qword [sym.imp.USER32.dll_GetFocus]
mov qword [rsp + 0x50], rax
mov rcx, rax
call fcn.14006775c
mov r14, rax
mov qword [rsp + 0x48], rax
mov r15d, 0x100
cmp r13d, r15d
jb 0x14007e056
cmp r13d, 0x109
jbe 0x14007e066
lea eax, [r13 - 0x200]
cmp eax, 9
ja 0x14007e165
cmp r14, rbx
je 0x14007e165
mov rdi, r14
cmp qword [rdi + 0xa0], rbx
jne 0x14007e0ac
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_GetParent]
mov rcx, rax
call fcn.14006775c
cmp rax, rsi
je 0x14007e0ac
mov rcx, qword [rdi + 0x40]
call qword [sym.imp.USER32.dll_GetParent]
mov rcx, rax
call fcn.14006775c
mov rdi, rax
cmp rax, rbx
jne 0x14007e072
cmp rdi, rbx
je 0x14007e0e4
mov rax, qword [rdi + 0xa0]
cmp rax, rbx
je 0x14007e0e4
cmp qword [rax + 0x90], rbx
je 0x14007e0e4
mov rcx, qword [rax + 0x90]
mov rax, qword [rcx]
mov rdx, r12
call qword [rax + 0x28]
cmp eax, ebx
jne 0x14007e0e4
mov eax, 1
jmp 0x14007e5ff
cmp r13d, 0x101
je 0x14007e0fb
cmp r13d, r15d
je 0x14007e0fb
cmp r13d, 0x102
jne 0x14007e156
cmp rdi, rbx
je 0x14007e156
mov rax, qword [rdi + 0xa0]
cmp rax, rbx
je 0x14007e156
mov ecx, SafeArrayDestroy
cmp word [r12 + 0x10], cx
jne 0x14007e127
lea edi, [rcx - 0xc]
test byte [rax + 0xcc], dil
jne 0x14007e147
jmp 0x14007e12c
mov edi, 1
mov r15d, 0x1b
cmp word [r12 + 0x10], r15w
jne 0x14007e14e
lea r12d, [r15 - 0x19]
test byte [rax + 0xcc], r12b
je 0x14007e172
xor eax, eax
jmp 0x14007e5ff
mov r12d, 2
jmp 0x14007e172
mov edi, 1
lea r15d, [rdi + 0x1a]
lea r12d, [rdi + 1]
jmp 0x14007e172
mov edi, 1
lea r15d, [rdi + 0x1a]
lea r12d, [rdi + 1]
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rax]
call fcn.14006775c
mov qword [rsp + 0x38], rax
mov ecx, r13d
sub ecx, 0x100
je 0x14007e257
sub ecx, r12d
je 0x14007e1d7
cmp ecx, 4
jne 0x14007e51f
cmp r14, rbx
jne 0x14007e1c2
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetUBound
call qword [sym.imp.USER32.dll_GetKeyState]
cmp ax, bx
jge 0x14007e55b
mov rax, qword [rsp + 0x38]
mov rdx, qword [rsp + 0xc0]
cmp word [rdx + 0x10], 0x20
je 0x14007e551
jmp 0x14007e1df
mov rdx, qword [rsp + 0xc0]
mov rcx, rax
call fcn.14007d574
cmp r13d, 0x102
jne 0x14007e1f8
test al, 0x84
jne 0x14007e547
mov r13, qword [rsp + 0xc0]
mov edx, 9
cmp word [r13 + 0x10], dx
jne 0x14007e215
test r12b, al
jne 0x14007e563
cmp word [r13 + 0x10], 0x20
jne 0x14007e224
xor eax, eax
jmp 0x14007e5ff
mov r8, r13
mov rdx, qword [rsp + 0x38]
mov rcx, rsi
call fcn.14007dea0
cmp rax, rbx
je 0x14007e563
mov rcx, qword [rax + 8]
cmp rcx, rbx
je 0x14007e563
mov rdx, r13
call fcn.14007279c
jmp 0x14007e5aa
mov r13, qword [rsp + 0xc0]
mov rdx, r13
mov rcx, rax
call fcn.14007d574
movzx ecx, word [r13 + 0x10]
cmp ecx, 3
je 0x14007e4a6
mov edx, 9
cmp ecx, edx
je 0x14007e3eb
cmp ecx, 0xd
je 0x14007e3ab
cmp ecx, r15d
je 0x14007e4a6
cmp ecx, 0x24
jle 0x14007e563
cmp ecx, 0x26
jle 0x14007e2b8
cmp ecx, 0x28
jle 0x14007e2bd
cmp ecx, 0x2b
je 0x14007e3ab
jmp 0x14007e563
mov r15d, edi
jmp 0x14007e2c0
mov r15d, ebx
mov rdx, r13
mov rcx, r14
call fcn.14007d574
test dil, al
jne 0x14007e563
cmp r15d, ebx
je 0x14007e2e8
xor edx, edx
mov rcx, rsi
call fcn.14006d830
mov r12, rax
jmp 0x14007e2f5
xor edx, edx
mov rcx, rsi
call fcn.14006d894
mov r12, rax
cmp r12, rbx
je 0x14007e563
cmp dword [r12 + 0x10], ebx
je 0x14007e310
mov rdx, r12
mov rcx, rsi
call fcn.14006d2b4
cmp qword [r12 + 8], rbx
je 0x14007e32d
mov rcx, qword [r12 + 8]
mov rax, qword [rcx]
mov rdx, r13
call qword [rax + 0x158]
jmp 0x14007e5aa
cmp qword [r12], rbx
je 0x14007e341
mov rcx, qword [r12]
call fcn.14006775c
mov r13, rax
jmp 0x14007e367
cmp r14, rbx
jne 0x14007e34b
mov rdx, rbx
jmp 0x14007e34f
mov rdx, qword [r14 + 0x40]
mov r8d, r15d
mov rcx, qword [rsi + 0x40]
call qword [sym.imp.USER32.dll_GetNextDlgGroupItem]
mov rcx, rax
call fcn.14006775c
mov r13, rax
cmp r13, rbx
je 0x14007e53d
mov rax, qword [rsi + 0x98]
mov qword [rax + 0xd8], rbx
mov rcx, r13
call fcn.14007d65c
cmp dword [r12 + 0x10], ebx
je 0x14007e5aa
xor r9d, r9d
mov r8, rdi
mov edx, 0xf1
mov rcx, qword [r13 + 0x40]
call qword [sym.imp.USER32.dll_SendMessageA]
jmp 0x14007e5aa
test al, 4
jne 0x14007e563
mov rcx, r14
call fcn.14007d61c
test al, 0x10
je 0x14007e3db
mov r13, r14
mov rcx, r14
call fcn.14006cd60
mov r12d, eax
cmp r14, rbx
jne 0x14007e4b9
jmp 0x14007e4a6
mov rcx, rsi
call fcn.14007db18
mov r12d, eax
jmp 0x14007e4a6
test r12b, al
jne 0x14007e563
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetDim
call qword [sym.imp.USER32.dll_GetKeyState]
mov r12d, ebx
cmp ax, bx
setl r12b
mov r8d, r12d
xor edx, edx
mov rcx, rsi
call fcn.14006d110
cmp rax, rbx
je 0x14007e563
cmp qword [rax + 8], rbx
je 0x14007e43a
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
mov rdx, r13
call qword [rax + 0x158]
jmp 0x14007e5aa
cmp qword [rax], rbx
je 0x14007e44c
mov rcx, qword [rax]
call fcn.14006775c
mov r12, rax
jmp 0x14007e477
mov rdx, qword [rsp + 0x38]
cmp rdx, rbx
jne 0x14007e45b
mov rdx, rbx
jmp 0x14007e45f
mov rdx, qword [rdx + 0x40]
mov r8d, r12d
mov rcx, qword [rsi + 0x40]
call qword [sym.imp.USER32.dll_GetNextDlgTabItem]
mov rcx, rax
call fcn.14006775c
mov r12, rax
cmp r12, rbx
je 0x14007e5aa
mov rax, qword [rsi + 0x98]
mov qword [rax + 0xd8], rbx
mov rcx, r12
call fcn.14007d65c
mov rdx, r12
mov rcx, r14
call fcn.14007d8cc
jmp 0x14007e5aa
mov edx, r12d
mov rcx, rsi
call fcn.14007d98c
mov r13, rax
cmp rax, rbx
je 0x14007e533
mov rcx, r13
call fcn.14006ce40
cmp eax, ebx
jne 0x14007e4da
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBeep]
mov r13, qword [rsp + 0xc0]
jmp 0x14007e563
cmp qword [r13 + 0xa0], rbx
je 0x14007e529
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
movzx r9d, bx
movzx r8d, di
mov edx, 0xfffffdd9
mov rcx, r13
call fcn.14006ced8
nop
jmp 0x14007e5aa
mov r13, qword [rsp + 0xc0]
jmp 0x14007e563
mov r13, qword [rsp + 0xc0]
jmp 0x14007e563
mov r13, qword [rsp + 0xc0]
jmp 0x14007e563
mov r13, qword [rsp + 0xc0]
jmp 0x14007e563
mov r13, qword [rsp + 0xc0]
jmp 0x14007e563
mov r13, qword [rsp + 0xc0]
jmp 0x14007e563
mov r13, qword [rsp + 0xc0]
bt dword [rsi + 0x78], 0xc
jb 0x14007e5a8
mov rdx, r13
mov rcx, qword [rsi + 0x40]
call qword [sym.imp.USER32.dll_IsDialogMessageA]
mov edi, eax
cmp eax, ebx
je 0x14007e5aa
call qword [sym.imp.USER32.dll_GetFocus]
mov rcx, rax
call fcn.14006775c
cmp rax, r14
je 0x14007e5aa
call qword [sym.imp.USER32.dll_GetFocus]
mov rcx, rax
call fcn.14006775c
mov rcx, rax
call fcn.14007d82c
jmp 0x14007e5aa
mov edi, ebx
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.USER32.dll_IsWindow]
cmp eax, ebx
je 0x14007e5fd
call qword [sym.imp.USER32.dll_GetFocus]
mov rcx, rax
call fcn.14006775c
mov rdx, rax
mov rcx, r14
call fcn.14007d8cc
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.USER32.dll_IsWindow]
cmp eax, ebx
je 0x14007e5fd
call qword [sym.imp.USER32.dll_GetFocus]
mov rcx, rax
call fcn.14006775c
mov r8, rax
mov rdx, r14
mov rcx, rsi
call fcn.14007db54
mov eax, edi
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret