Function at 0x14001147e
Capabilities:
Log keystrokes via polling

Disassembly:
jmp 0x140014600
push rbp
push rsi
push rdi
sub rsp, 0x220
lea rbp, [rsp + 0x30]
lea rcx, [0x14002a0fd]
call fcn.1400115b9
movsxd rax, dword [section..data]
mov qword [rbp + 0x128], rax
mov eax, 0x10
mul qword [rbp + 0x128]
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.140011285
mov qword [rbp + 0x168], rax
cmp qword [rbp + 0x168], 0
je 0x140014689
lea r9, [0x14001139d]
mov r8, qword [rbp + 0x128]
mov edx, 0x10
mov rcx, qword [rbp + 0x168]
call fcn.14001127b
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x1e8], rax
jmp 0x140014694
mov qword [rbp + 0x1e8], 0
mov rax, qword [rbp + 0x1e8]
mov qword [rbp + 0x148], rax
mov rax, qword [rbp + 0x148]
mov qword [rbp + 8], rax
mov dword [rbp + 0x24], 0
mov dword [rbp + 0x44], 0
jmp 0x1400146c5
mov eax, dword [rbp + 0x44]
inc eax
mov dword [rbp + 0x44], eax
mov eax, dword [section..data]
cmp dword [rbp + 0x44], eax
jge 0x1400147d6
movsxd rax, dword [rbp + 0x44]
imul rax, rax, 0x4c
lea rcx, [0x1400235c0]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x1e8], rax
mov edx, dword [rbp + 0x44]
mov rcx, qword [rbp + 0x1e8]
call fcn.140011032
movsxd rax, dword [rbp + 0x44]
imul rax, rax, 0x4c
lea rcx, [0x1400235c0]
mov edx, dword [0x1400235ac]
cmp dword [rcx + rax + 4], edx
jne 0x14001471c
jmp 0x1400146bd
movsxd rax, dword [rbp + 0x44]
imul rax, rax, 0x4c
lea rcx, [0x1400235c0]
cmp dword [rcx + rax + 8], 2
jge 0x140014734
jmp 0x1400146bd
movsxd rax, dword [rbp + 0x44]
imul rax, rax, 0x4c
lea rcx, [0x1400235c0]
lea rax, [rcx + rax + 0x18]
movsxd rcx, dword [rbp + 0x44]
imul rcx, rcx, 0x4c
lea rdx, [0x1400235c0]
lea rcx, [rdx + rcx + 0xc]
mov r8, rax
mov rdx, rcx
lea rcx, [0x1400235b4]
call fcn.140011186
movsxd rax, dword [rbp + 0x44]
imul rax, rax, 0x4c
lea rcx, [0x1400235c0]
lea rax, [rcx + rax + 0xc]
movsxd rcx, dword [rbp + 0x44]
imul rcx, rcx, 0x4c
lea rdx, [0x1400235c0]
lea rcx, [rdx + rcx + 0x18]
mov r9, rax
lea r8, [0x1400235b4]
mov rdx, rcx
lea rcx, [rbp + 0x188]
call fcn.140011217
movsxd rcx, dword [rbp + 0x24]
imul rcx, rcx, 0x10
mov rdx, qword [rbp + 8]
lea rdi, [rdx + rcx]
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov eax, dword [rbp + 0x24]
inc eax
mov dword [rbp + 0x24], eax
jmp 0x1400146bd
cmp dword [rbp + 0x24], 0
jle 0x140014853
movsxd rax, dword [rbp + 0x24]
imul rax, rax, 0x10
mov rcx, qword [rbp + 8]
add rcx, rax
mov rax, rcx
movzx r8d, byte [rbp + 0x1b4]
mov rdx, rax
mov rcx, qword [rbp + 8]
call fcn.1400113ac
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
jne 0x140014853
mov eax, 0x10
imul rax, rax, 0
mov rcx, qword [rbp + 8]
lea rax, [rcx + rax + 4]
mov ecx, dword [0x140023594]
add ecx, 0x47f1b4
mov ecx, ecx
mov qword [rsp + 0x20], 0
mov r9d, 0xc
mov r8, rax
mov edx, ecx
mov rcx, qword [0x140023580]
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov dword [rbp + 0x24], 0
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1d8], rax
mov rcx, qword [rbp + 0x1d8]
call fcn.1400112d5
cmp qword [rbp + 0x1d8], 0
jne 0x140014888
mov qword [rbp + 0x1e8], 0
jmp 0x14001489b
mov qword [rbp + 8], 0x8123
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1e8], rax
lea rsp, [rbp + 0x1f0]
pop rdi
pop rsi
pop rbp
ret