Function at 0x140016f20
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
push rbp
lea rbp, [r11 - 0x5f]
sub rsp, 0xd0
mov rax, qword [0x140103040]
xor rax, rsp
mov qword [rbp + 0x17], rax
xor ebx, ebx
movaps xmmword [r11 - 0x38], xmm8
cmp byte [0x14012d54e], bl
xorps xmm8, xmm8
je 0x1400170c5
mov rcx, qword [0x14012c390]
xorps xmm0, xmm0
movaps xmmword [r11 - 0x28], xmm7
movss xmm7, dword [0x14012c468]
test rcx, rcx
js 0x140016f7b
cvtsi2ss xmm0, rcx
jmp 0x140016f90
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
movss xmm1, dword [0x1400f3808]
addss xmm0, xmm7
xor eax, eax
addss xmm0, dword [0x1400f3750]
comiss xmm0, xmm1
jb 0x140016fc1
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x140016fc1
movabs rcx, 0x8000000000000000
mov rax, rcx
mov rcx, qword [0x14012d3c0]
lea r8, [rbp - 0x41]
cvttss2si rdx, xmm0
mov r9d, 4
mov dword [rbp - 0x41], ebx
add rdx, rax
lea rax, [rbp + 7]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
cmp dword [0x14012c454], 1
jbe 0x1400170a8
movss xmm3, dword [0x14012c440]
lea rdx, [rbp - 0x21]
cvtps2pd xmm3, xmm3
mov r8d, 0x28
mov ecx, 1
mov qword [rbp - 0x21], rbx
mov dword [rbp - 0x11], ebx
mov qword [rbp - 9], rbx
mov dword [rbp - 0xd], 1
movaps xmmword [rsp + 0xc0], xmm6
movss xmm6, dword [rbp - 0x41]
movaps xmm0, xmm6
mov qword [rbp - 1], rbx
subss xmm0, dword [0x14012d3c8]
cvtps2pd xmm1, xmm0
movaps xmm0, xmm7
mulsd xmm1, qword [0x1400f3848]
subss xmm0, dword [0x14012d3cc]
addsd xmm1, xmm1
divsd xmm1, xmm3
divsd xmm1, qword [0x1400f3838]
cvttsd2si eax, xmm1
cvtps2pd xmm1, xmm0
mov dword [rbp - 0x19], eax
mulsd xmm1, qword [0x1400f3848]
addsd xmm1, xmm1
divsd xmm1, xmm3
divsd xmm1, qword [0x1400f3708]
cvttsd2si eax, xmm1
mov dword [rbp - 0x15], eax
call qword [sym.imp.USER32.dll_SendInput]
movss dword [0x14012d3c8], xmm6
movaps xmm6, xmmword [rsp + 0xc0]
jmp 0x1400170b5
movss xmm0, dword [rbp - 0x41]
movss dword [0x14012d3c8], xmm0
movss dword [0x14012d3cc], xmm7
movaps xmm7, xmmword [rsp + 0xb0]
cmp byte [0x14012d54b], bl
je 0x14001710c
movss xmm0, dword [0x14012c330]
comiss xmm0, xmm8
jbe 0x14001710c
movsxd rdx, dword [0x14012c1fc]
lea rax, [rbp + 0xf]
add rdx, qword [0x14012c390]
lea r8, [rbp - 0x49]
mov rcx, qword [0x14012d3c0]
mov r9d, 4
mov dword [rbp - 0x49], ebx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x14012d54f], bl
movaps xmm8, xmmword [rsp + 0xa0]
je 0x1400171a6
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1400171a6
movsxd rdx, dword [0x14012c214]
lea rax, [rbp - 0x39]
add rdx, qword [0x140130380]
lea r8, [rbp - 0x45]
mov rcx, qword [0x14012d3c0]
mov r9d, 4
mov dword [rbp - 0x45], 0x10001
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
movsxd rdx, dword [0x14012c214]
lea rax, [rbp - 0x31]
add rdx, qword [0x140130380]
lea r8, [rbp - 0x39]
mov rcx, qword [0x14012d3c0]
mov r9d, 4
mov dword [rbp - 0x39], 0x100
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x14012c268], bl
je 0x1400171b3
call fcn.140014b60
cmp byte [0x14012c26c], bl
je 0x1400171c0
call fcn.140015840
cmp byte [0x14012d54d], bl
je 0x1400171cd
call fcn.1400160e0
cmp byte [0x14012d54c], bl
je 0x14001724d
mov eax, dword [0x14012c260]
lea r8, [rbp - 0x3d]
mov rdx, qword [0x14012c298]
mov r9d, 4
mov rcx, qword [0x14012d3c0]
add rdx, 0x210
mov dword [rbp - 0x45], eax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x3d], ebx
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
cmp byte [0x14012c450], bl
jne 0x14001724d
mov eax, dword [rbp - 0x45]
cmp dword [rbp - 0x3d], eax
je 0x14001724d
mov rdx, qword [0x14012c298]
lea rax, [rbp - 0x31]
mov rcx, qword [0x14012d3c0]
lea r8, [rbp - 0x45]
add rdx, 0x210
mov qword [rsp + 0x20], rax
mov r9d, 4
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x14012d550], bl
je 0x140017273
cmp byte [0x14012c264], bl
je 0x14001726e
mov ecx, dword [0x14012bf5c]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140017273
call fcn.1400133c0
cmp byte [0x14012d54a], bl
je 0x1400172e0
call fcn.1400049a0
movsxd rdx, dword [0x14012c1f8]
lea rax, [rbp - 0x29]
add rdx, qword [0x140130380]
lea r8, [rbp - 0x39]
mov rcx, qword [0x14012d3c0]
mov r9d, 8
mov qword [rbp - 0x39], rbx
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movsxd rdx, dword [0x14012c1c0]
lea rax, [rbp - 0x31]
add rdx, qword [rbp - 0x39]
lea r8, [0x14012d3f8]
mov rcx, qword [0x14012d3c0]
mov r9d, 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.14008a760
mov rbx, qword [rsp + 0xe0]
add rsp, 0xd0
pop rbp
ret