Function at 0x14005e190
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
mov rax, qword [0x1400ab010]
xor rax, rsp
mov qword [rbp - 0x29], rax
mov r14, rdx
xor r12d, r12d
mov rdx, qword [0x1400ac360]
mov edi, r8d
add rdx, r14
mov qword [rsp + 0x20], r12
lea r8, [rbp - 0x39]
mov rsi, rcx
lea r9d, [r12 + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r8d, edi
mov rdx, r14
mov rcx, rsi
call fcn.140059660
mov r8d, edi
mov rdx, r14
mov rcx, rsi
mov rbx, rax
call fcn.1400595a0
mov rdx, qword [0x1400ac478]
lea r9d, [r12 + 8]
add rdx, r14
mov qword [rsp + 0x20], r12
lea r8, [rbp - 0x31]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r15, qword [rbp - 0x31]
mov r8, rbx
mov rcx, rsi
call fcn.140059740
mov r8, r15
mov rcx, rsi
mov rbx, rax
call fcn.140059740
lea rdx, [r15 + 0x10e0]
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 8]
mov rcx, rsi
lea r8, [rbp - 0x39]
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea rdx, [rbx + 0xc0]
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 4]
mov rcx, rsi
lea r8, [rbp - 0x59]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea rdx, [rbx + 0xc4]
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 4]
mov rcx, rsi
lea r8, [rbp - 0x51]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea rdx, [rbx + 0xc8]
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 4]
mov rcx, rsi
lea r8, [rbp - 0x65]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea rdx, [rdi + 0xc0]
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 4]
mov rcx, rsi
lea r8, [rbp - 0x55]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea rdx, [rdi + 0xc4]
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 4]
mov rcx, rsi
lea r8, [rbp - 0x4d]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea rdx, [rdi + 0xc8]
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 4]
mov rcx, rsi
lea r8, [rbp - 0x69]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm8, dword [rbp - 0x59]
movss xmm9, dword [rbp - 0x51]
subss xmm8, dword [rbp - 0x55]
subss xmm9, dword [rbp - 0x4d]
movss xmm6, dword [rbp - 0x65]
movaps xmm0, xmm8
subss xmm6, dword [rbp - 0x69]
mulss xmm0, xmm8
movaps xmm2, xmm9
mulss xmm2, xmm9
movaps xmm1, xmm6
mulss xmm1, xmm6
addss xmm2, xmm0
xorps xmm0, xmm0
addss xmm2, xmm1
ucomiss xmm0, xmm2
ja 0x14005e378
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x14005e380
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
divss xmm6, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_asinf
xorps xmm0, xmmword [0x14009cba0]
xorps xmm2, xmm2
mulss xmm0, dword [0x14009c9b8]
movaps xmm1, xmm8
cvtss2sd xmm2, xmm0
movaps xmm0, xmm9
divsd xmm2, qword [0x14009c928]
cvtpd2ps xmm2, xmm2
movss dword [rbp - 0x5d], xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2f
mulss xmm0, dword [0x14009c9b8]
lea r8, [rbp - 0x65]
mov qword [rsp + 0x20], r12
mov r9d, 4
xorps xmm1, xmm1
lea rdx, [r14 + 0x18da700]
mov rcx, rsi
cvtss2sd xmm1, xmm0
divsd xmm1, qword [0x14009c928]
cvtpd2ps xmm0, xmm1
movss dword [rbp - 0x61], xmm0
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r9d, 4
mov qword [rsp + 0x20], r12
lea r8, [rbp - 0x69]
mov rcx, rsi
lea rdx, [r14 + 0x18da704]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp - 0x39]
lea r8, [rbp - 0x69]
movss xmm6, dword [rbp - 0x69]
add rdx, 0x214
movss xmm7, dword [rbp - 0x65]
mov r9d, 4
subss xmm6, dword [rbp - 0x61]
subss xmm7, dword [rbp - 0x5d]
mov rcx, rsi
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea rdx, [r15 + 0x1704]
mov qword [rbp - 0x45], r12
mov r9d, 0xc
mov dword [rbp - 0x49], r12d
lea r8, [rbp - 0x49]
mov qword [rsp + 0x20], r12
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea rdx, [r15 + 0x1404]
mov qword [rsp + 0x20], r12
mov r9d, 4
lea r8, [rbp - 0x65]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movd xmm0, dword [rbp - 0x69]
movss xmm1, dword [0x14009cb80]
cvtdq2ps xmm0, xmm0
andps xmm6, xmm1
divss xmm0, dword [0x14009c9a4]
mulss xmm0, dword [0x1400ab060]
comiss xmm0, xmm6
jb 0x14005e5b3
andps xmm7, xmm1
comiss xmm0, xmm7
jb 0x14005e5b3
cmp byte [0x1400ab0e9], 1
mov ecx, dword [0x1400ab0f0]
jne 0x14005e56a
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14005e5b3
cmp dword [rbp - 0x65], 1
lea rdx, [r14 + 0x18da704]
mov qword [rsp + 0x20], r12
mov r9d, 4
mov rcx, rsi
jle 0x14005e58a
movss xmm0, dword [rbp - 0x45]
lea r8, [rbp - 0x69]
movss xmm1, dword [rbp - 0x61]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
mulsd xmm0, qword [0x14009c910]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [rbp - 0x69], xmm0
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
movss xmm0, dword [rbp - 0x49]
lea r8, [rbp - 0x69]
movss xmm1, dword [rbp - 0x5d]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
mulsd xmm0, qword [str.333333]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [rbp - 0x69], xmm0
jmp 0x14005e598
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14005e5b3
mov qword [rsp + 0x20], r12
lea rdx, [r14 + 0x18da704]
mov r9d, 4
mov rcx, rsi
lea r8, [rbp - 0x61]
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
lea r8, [rbp - 0x5d]
mov r9d, 4
mov qword [rsp + 0x20], r12
lea rdx, [r14 + 0x18da700]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov rcx, qword [rbp - 0x29]
xor rcx, rsp
call fcn.140070520
lea r11, [rsp + 0xc0]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret