Function at 0x14008516b
Capabilities:
Log keystrokes via polling

Disassembly:
jmp 0x14009e9c0
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x278
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x66
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x298]
mov rax, qword [0x1401f07c0]
xor rax, rbp
mov qword [rbp + 0x240], rax
lea rcx, [0x140207889]
call fcn.140085710
mov ecx, dword [reloc.XINPUT1_4.dll_Ordinal_2]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
je 0x14009ec7f
movzx eax, byte [0x1401f78ea]
test eax, eax
je 0x14009ec7f
movzx eax, byte [0x1401f0774]
test eax, eax
jne 0x14009ec7f
mov rcx, qword [rbp + 0x270]
call fcn.140083a82
mov dword [rbp + 0x1c4], 0x12
lea rdx, [rbp + 0x1c4]
lea rcx, [rbp + 0x1a8]
call fcn.140084d15
mov rcx, rax
call fcn.140085094
lea rdx, [rbp + 0x1e8]
mov rcx, qword [0x1401f78c8]
call fcn.140083dbb
mov qword [rbp + 0x238], rax
mov rax, qword [rbp + 0x270]
mov rdx, qword [rbp + 0x238]
mov rcx, rax
call fcn.140083a1e
lea rcx, [rbp + 0x1e8]
call fcn.14008374e
mov rcx, qword [0x1401f78c8]
call fcn.14008535a
mov dword [rbp + 4], eax
mov dword [rbp + 0x24], 0
jmp 0x14009eac9
mov eax, dword [rbp + 0x24]
inc eax
mov dword [rbp + 0x24], eax
mov eax, dword [rbp + 4]
cmp dword [rbp + 0x24], eax
jge 0x14009ec7a
mov rcx, qword [0x1401f78c8]
call fcn.140084365
mov qword [rbp + 0x48], rax
cmp qword [rbp + 0x48], 0
jne 0x14009eaee
jmp 0x14009eac1
mov qword [rbp + 0x228], 0
mov rcx, qword [0x1401f78c8]
call fcn.140084ee6
mov ecx, dword [rbp + 0x24]
shl ecx, 2
movsxd rcx, ecx
add rax, rcx
mov qword [rbp + 0x238], rax
lea r8, [rbp + 0x228]
mov rdx, qword [rbp + 0x238]
mov rcx, qword [0x1401f7980]
call fcn.140084996
mov qword [rbp + 0x68], rax
cmp qword [rbp + 0x68], 0
jne 0x14009eb3f
jmp 0x14009eac1
mov rdx, qword [rbp + 0x48]
mov rcx, qword [0x1401f78c8]
call fcn.14008307d
mov dword [rbp + 0x84], eax
cmp dword [rbp + 0x84], 0
je 0x14009eb67
cmp dword [rbp + 0x84], 8
jne 0x14009eb6c
jmp 0x14009eac1
mov r8, qword [rbp + 0x68]
lea rdx, [rbp + 0xa8]
mov rcx, qword [0x1401f78c8]
call fcn.140085102
nop
mov rax, qword [rbp + 0x270]
mov rdx, rax
lea rcx, [rbp + 0xa8]
call fcn.1400848dd
test eax, eax
je 0x14009ebaf
lea rcx, [rbp + 0xa8]
call fcn.14008374e
jmp 0x14009eac1
mov rdx, qword [rbp + 0x68]
mov rcx, qword [0x1401f78c8]
call fcn.14008426b
movzx eax, al
test eax, eax
je 0x14009ebd7
lea rcx, [rbp + 0xa8]
call fcn.14008374e
jmp 0x14009eac1
mov rdx, qword [rbp + 0x48]
mov rcx, qword [0x1401f78c8]
call fcn.140085224
movzx eax, al
mov dword [rbp + 0x234], eax
mov rdx, qword [rbp + 0x68]
mov rcx, qword [0x1401f78c8]
call fcn.140085224
movzx eax, al
mov ecx, dword [rbp + 0x234]
cmp ecx, eax
jne 0x14009ec29
movzx eax, byte [0x1401f78eb]
test eax, eax
jne 0x14009ec29
lea rcx, [rbp + 0xa8]
call fcn.14008374e
jmp 0x14009eac1
movzx eax, byte [0x1401f78ea]
test eax, eax
je 0x14009ec69
mov rax, qword [rbp + 0x270]
mov rcx, rax
call fcn.14008389d
movzx eax, al
test eax, eax
jne 0x14009ec69
mov rdx, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x270]
call fcn.1400840a4
nop
lea rcx, [rbp + 0xa8]
call fcn.14008374e
jmp 0x14009ec7a
lea rcx, [rbp + 0xa8]
call fcn.14008374e
jmp 0x14009eac1
jmp 0x14009ea09
lea rcx, [rbp - 0x20]
lea rdx, [0x1401997d0]
call fcn.1400850f8
mov rcx, qword [rbp + 0x240]
xor rcx, rbp
call fcn.140084284
lea rsp, [rbp + 0x258]
pop rdi
pop rbp
ret