Function at 0x14003d870
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x1400580c0]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov ecx, dword [0x140057ea0]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor r15d, r15d
test ax, ax
je 0x14003d93a
mov ebx, r15d
mov ecx, dword [0x1400586b8]
test ecx, ecx
je 0x14003d8d4
sub ecx, 1
je 0x14003d8cd
cmp ecx, 1
jne 0x14003d8d9
mov ebx, 0x25
jmp 0x14003d8d9
mov ebx, 0x43
jmp 0x14003d8d9
mov ebx, 0x6e
test ebx, ebx
je 0x14003d93a
mov rdx, qword [0x140058598]
lea rcx, [rsp + 0x30]
call fcn.14003c2d0
nop
mov rdx, rax
mov ecx, ebx
call fcn.14003e4e0
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x14003d93a
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003d935
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003d935
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14004457c
mov ecx, dword [0x140057ea4]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14003dabf
cmp byte [0x14005870f], 0
je 0x14003dabf
mov r14, qword [0x140058580]
mov rdx, qword [0x140058598]
lea rcx, [rsp + 0x30]
call fcn.14003c2d0
mov rbx, rax
mov qword [rsp + 0x50], rax
cmp byte [0x14005870f], 0
je 0x14003da7a
mov rax, qword [rax + 0x10]
mov rdi, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003d99a
mov rdi, qword [rbx]
cmp rax, 7
jb 0x14003da7a
lea rsi, [rax + rdi]
movsx ebp, byte [str.Shotgun]
lea r8, [rsi - 6]
sub r8, rdi
mov edx, ebp
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x14003da7a
nop dword [rax]
cmp dword [rax], 0x746f6853
jne 0x14003d9e6
cmp word [rax + 4], 0x7567
jne 0x14003d9e6
cmp byte [rax + 6], 0x6e
je 0x14003da01
inc rax
lea r8, [rsi - 6]
sub r8, rax
mov edx, ebp
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x14003d9d0
jmp 0x14003da7a
sub rax, rdi
cmp rax, 0xffffffffffffffff
je 0x14003da7a
mov rdx, qword [0x1400576d8]
add rdx, r14
mov qword [rsp + 0x58], r15
mov r9d, 8
lea r8, [rsp + 0x58]
lea rcx, [0x1400586d8]
call fcn.140037d90
cmp qword [rsp + 0x58], 0
je 0x14003da7a
cvttss2si rcx, dword [0x140058708]
call qword [sym.imp.KERNEL32.dll_Sleep]
mov qword [rsp + 0x20], r15
mov r9d, 2
xor r8d, r8d
xor edx, edx
mov ecx, r9d
call qword [sym.imp.USER32.dll_mouse_event]
mov qword [rsp + 0x20], r15
mov r9d, 4
xor r8d, r8d
xor edx, edx
mov ecx, r9d
call qword [sym.imp.USER32.dll_mouse_event]
nop
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x14003dab0
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x14003daab
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14003daeb
mov rcx, r8
call fcn.14004457c
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
call fcn.140039ed0
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1400443e0
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rdi
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3