Function at 0x14011c400
Capabilities:
Log keystrokes via polling

Disassembly:
jmp 0x1401be870
push rbp
push rdi
sub rsp, 0x538
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0xe6
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x14065f200]
xor rax, rbp
mov qword [rbp + 0x508], rax
lea rcx, [0x14068ba1b]
call fcn.1401223be
nop
movzx eax, byte [0x1406608cc]
test eax, eax
jne 0x1401bebc6
mov eax, dword [0x1406608dc]
inc eax
mov dword [rbp + 0x2a4], eax
lea rdx, [rbp + 0x2a4]
lea rcx, [rbp + 0x288]
call fcn.140120415
mov rcx, rax
call fcn.140120e9c
nop
movzx eax, byte [0x1406607f0]
test eax, eax
jne 0x1401be8f4
jmp 0x1401be8ae
lea rdx, [rbp + 0x2c8]
lea rcx, [0x1406603c0]
call fcn.14011b7ee
cmp qword [rax], 0
jne 0x1401be90f
jmp 0x1401be8ae
mov byte [rbp + 4], 0
mov ecx, dword [0x1406607f4]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
jne 0x1401be99b
movzx eax, byte [0x1406609b1]
test eax, eax
je 0x1401be996
lea rax, [rbp + 0x28]
mov rdi, rax
xor eax, eax
mov ecx, 0x28
rep stosb byte [rdi], al
mov dword [rbp + 0x28], 0
mov dword [rbp + 0x3c], 4
mov qword [rbp + 0x328], 0x28
lea rax, [rbp + 0x28]
mov qword [rbp + 0x348], rax
mov dword [rbp + 0x364], 1
lea r9, [rbp + 0x328]
lea r8, [rbp + 0x348]
lea rdx, [rbp + 0x364]
lea rcx, [rbp + 0x304]
call fcn.14011da71
nop
mov byte [0x1406609b1], 0
jmp 0x1401be8ae
lea rcx, [0x1406603c0]
call fcn.140120e97
mov qword [rbp + 0x68], rax
cmp qword [rbp + 0x68], 0
je 0x1401bea88
lea rdx, [rbp + 0x388]
lea rcx, [0x1406603c0]
call fcn.14011b7ee
add rax, 0x14
mov qword [rbp + 0x4f8], rax
lea rdx, [rbp + 0x3c4]
mov rcx, qword [rbp + 0x68]
call fcn.1401209bf
mov qword [rbp + 0x500], rax
mov rdx, qword [rbp + 0x500]
mov rcx, qword [rbp + 0x4f8]
call fcn.14012069a
cvtsi2ss xmm1, dword [0x1406607fc]
comiss xmm0, xmm1
jbe 0x1401bea11
mov byte [rbp + 4], 0
jmp 0x1401bea15
mov byte [rbp + 4], 1
mov rcx, qword [rbp + 0x68]
call fcn.14011cf09
movzx eax, al
test eax, eax
je 0x1401bea34
movzx eax, byte [0x1406607f8]
test eax, eax
jne 0x1401bea34
mov byte [rbp + 4], 0
movzx eax, byte [0x1406607d9]
test eax, eax
je 0x1401bea53
mov rcx, qword [rbp + 0x68]
call fcn.14011f60a
movzx eax, al
test eax, eax
jne 0x1401bea53
mov byte [rbp + 4], 0
lea rcx, [0x1406603c0]
call fcn.14011c2cf
movzx eax, al
test eax, eax
jne 0x1401bea6a
mov byte [rbp + 4], 0
lea rdx, [rbp + 0x68]
lea rcx, [0x1406603c0]
call fcn.14011eb2e
movzx eax, byte [rax + 0x48]
test eax, eax
je 0x1401bea86
mov byte [rbp + 4], 0
jmp 0x1401bea8c
mov byte [rbp + 4], 0
movzx eax, byte [rbp + 4]
test eax, eax
je 0x1401beb3b
movzx eax, byte [0x1406609b1]
test eax, eax
jne 0x1401beb3b
lea rdx, [0x140660800]
lea rcx, [rbp + 0x3e8]
call fcn.140120415
mov rcx, rax
call fcn.140120e9c
nop
lea rax, [rbp + 0x88]
mov rdi, rax
xor eax, eax
mov ecx, 0x28
rep stosb byte [rdi], al
mov dword [rbp + 0x88], 0
mov dword [rbp + 0x9c], 2
mov qword [rbp + 0x428], 0x28
lea rax, [rbp + 0x88]
mov qword [rbp + 0x448], rax
mov dword [rbp + 0x464], 1
lea r9, [rbp + 0x428]
lea r8, [rbp + 0x448]
lea rdx, [rbp + 0x464]
lea rcx, [rbp + 0x404]
call fcn.14012176b
nop
mov byte [0x1406609b1], 1
jmp 0x1401bebc1
movzx eax, byte [0x1406609b1]
test eax, eax
je 0x1401bebc1
movzx eax, byte [rbp + 4]
test eax, eax
jne 0x1401bebc1
lea rax, [rbp + 0xc8]
mov rdi, rax
xor eax, eax
mov ecx, 0x28
rep stosb byte [rdi], al
mov dword [rbp + 0xc8], 0
mov dword [rbp + 0xdc], 4
mov qword [rbp + 0x4a8], 0x28
lea rax, [rbp + 0xc8]
mov qword [rbp + 0x4c8], rax
mov dword [rbp + 0x4e4], 1
lea r9, [rbp + 0x4a8]
lea r8, [rbp + 0x4c8]
lea rdx, [rbp + 0x4e4]
lea rcx, [rbp + 0x484]
call fcn.140120ca8
nop
mov byte [0x1406609b1], 0
jmp 0x1401be8ae
lea rcx, [rbp - 0x20]
lea rdx, [0x1403821b0]
call fcn.140120f73
mov rcx, qword [rbp + 0x508]
xor rcx, rbp
call fcn.14011e6bf
lea rsp, [rbp + 0x518]
pop rdi
pop rbp
ret