Function at 0x14007c360
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0x100
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
mov rax, qword [0x14009b040]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rbx, rdx
cmp byte [0x14009c126], 1
jne 0x14007c699
xorps xmm0, xmm0
movups xmmword [rbp - 0x21], xmm0
movups xmmword [rbp - 0x11], xmm0
movups xmmword [rbp - 1], xmm0
mov rsi, qword [rcx]
mov qword [rbp - 0x21], rsi
movdqu xmmword [rbp - 0x19], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 9], xmm1
movdqu xmmword [rbp + 7], xmm0
lea rdx, [rsi + 0x173b568]
xor r14d, r14d
mov qword [rsp + 0x20], r14
lea r9d, [r14 + 8]
lea r8, [rbp - 0x49]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp - 0x49]
add rdx, 0x13b0
mov qword [rsp + 0x20], r14
lea r9d, [r14 + 4]
lea r8, [rbp - 0x41]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14007c699
mov eax, dword [0x14009c0f8]
test eax, eax
jne 0x14007c422
lea ecx, [rax + 1]
jmp 0x14007c43a
cmp eax, 1
jne 0x14007c42c
lea ecx, [rax + 4]
jmp 0x14007c43a
mov ecx, dword [rbp - 0x59]
mov edx, 6
cmp eax, 2
cmove ecx, edx
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x14007c452
cmp byte [0x14009c101], 1
jne 0x14007c699
mov edi, dword [rbp - 0x41]
cmp edi, 0xffffffff
je 0x14007c699
lea rdx, [rsi + 0x18c7f98]
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp - 0x31]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, edi
sar eax, 9
shl eax, 3
movsxd rcx, eax
mov rdx, qword [rbp - 0x31]
add rdx, 0x10
add rdx, rcx
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp - 0x29]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
and edi, 0x1ff
imul edx, edi, 0x78
add rdx, qword [rbp - 0x29]
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp - 0x49]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movups xmm6, xmmword [rbx]
lea rdx, [rsi + 0x19176a8]
mov qword [rsp + 0x20], r14
mov r9d, 8
lea r8, [rbp - 0x39]
mov rcx, qword [rbx + 8]
cmp byte [0x14009b1eb], 1
jne 0x14007c564
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp - 0x39]
add rdx, 0x3cb
mov qword [rsp + 0x20], r14
mov r9d, 4
lea r8, [rbp - 0x59]
psrldq xmm6, 8
movq rcx, xmm6
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp - 0x49]
add rdx, 0x3cb
mov qword [rsp + 0x20], r14
mov r9d, 4
lea r8, [rbp - 0x55]
movq rcx, xmm6
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14007c699
mov eax, dword [rbp - 0x55]
cmp eax, dword [rbp - 0x59]
je 0x14007c699
jmp 0x14007c5c4
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp - 0x39]
add rdx, 0x3cb
mov qword [rsp + 0x20], r14
mov r9d, 4
lea r8, [rbp - 0x55]
psrldq xmm6, 8
movq rcx, xmm6
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp - 0x49]
add rdx, 0x3cb
mov qword [rsp + 0x20], r14
mov r9d, 4
lea r8, [rbp - 0x59]
movq rcx, xmm6
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14007c699
mov eax, dword [rbp - 0x59]
add eax, 0xfffffffe
cmp eax, 1
ja 0x14007c699
cmp byte [0x14009c105], 1
jne 0x14007c644
cmp byte [0x14009c107], 1
jne 0x14007c631
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
movss xmm7, dword [0x14009c0e8]
movss xmm6, dword [0x14009b0c8]
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov eax, eax
xorps xmm1, xmm1
cvtsi2ss xmm1, rax
xorps xmm0, xmm0
subss xmm1, xmm0
addss xmm1, xmm0
mulss xmm1, dword [0x14008c3cc]
subss xmm6, xmm7
mulss xmm1, xmm6
addss xmm1, xmm7
movss dword [0x14009c0dc], xmm1
jmp 0x14007c639
movss xmm1, dword [0x14009c0dc]
cvttss2si rcx, xmm1
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rbp - 0x51]
call qword [sym.imp.USER32.dll_GetCursorPos]
mov qword [rsp + 0x20], r14
xor r9d, r9d
mov r8d, dword [rbp - 0x4d]
mov edx, dword [rbp - 0x51]
lea ecx, [r9 + 2]
call qword [sym.imp.USER32.dll_mouse_event]
mov qword [rsp + 0x20], r14
xor r9d, r9d
mov r8d, dword [rbp - 0x4d]
mov edx, dword [rbp - 0x51]
lea ecx, [r9 + 4]
call qword [sym.imp.USER32.dll_mouse_event]
cmp byte [0x14009c12c], 1
jne 0x14007c699
cvttss2si rcx, dword [0x14009c0e4]
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.14007d3d0
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret