Function at 0x140002180
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [r11 - 0x5f]
sub rsp, 0xe0
movaps xmmword [r11 - 0x38], xmm6
movaps xmmword [r11 - 0x48], xmm7
mov rax, qword [0x140078040]
xor rax, rsp
mov qword [rbp - 0x41], rax
mov rdi, rcx
mov qword [r11 + 0x10], r12
xor ecx, ecx
mov qword [r11 + 0x18], r15
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cdq
mov ecx, 1
sub eax, edx
sar eax, 1
mov r14d, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cdq
mov rcx, rdi
sub eax, edx
sar eax, 1
mov r15d, eax
call fcn.140001b60
mov rcx, qword gs:[0x58]
mov rsi, rax
mov r12d, 4
mov rbx, qword [rcx]
mov ecx, dword [r12 + rbx]
cmp dword [0x1400ec9b8], ecx
jle 0x140002255
lea rcx, [0x1400ec9b8]
call fcn.140060ef0
cmp dword [0x1400ec9b8], 0xffffffff
jne 0x140002255
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
xor ecx, ecx
movd xmm6, eax
cvtdq2ps xmm6, xmm6
call qword [sym.imp.USER32.dll_GetSystemMetrics]
lea rcx, [0x1400ec9b8]
movss dword [0x1400ec9c4], xmm6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [0x1400ec9c0], xmm0
call fcn.140060e84
xor r9d, r9d
lea rdx, [rbp - 0x79]
mov r8, rsi
call fcn.140060a00
mov eax, dword [r12 + rbx]
cmp dword [0x1400ec9b8], eax
jle 0x1400022c2
lea rcx, [0x1400ec9b8]
call fcn.140060ef0
cmp dword [0x1400ec9b8], 0xffffffff
jne 0x1400022c2
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
xor ecx, ecx
movd xmm6, eax
cvtdq2ps xmm6, xmm6
call qword [sym.imp.USER32.dll_GetSystemMetrics]
lea rcx, [0x1400ec9b8]
movss dword [0x1400ec9c4], xmm6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [0x1400ec9c0], xmm0
call fcn.140060e84
movsd xmm0, qword [rbp - 0x79]
lea r8, [rbp - 0x69]
mov esi, dword [rbp - 0x71]
lea rdx, [rbp - 0x59]
movsd qword [rbp - 0x69], xmm0
mov dword [rbp - 0x61], esi
call fcn.140060b40
movss xmm0, dword [rbp - 0x55]
movd xmm1, r15d
cvtdq2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
subsd xmm0, xmm1
movsd xmm1, qword [0x14006dda8]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [0x14006dda8]
movaps xmm7, xmm0
movss xmm0, dword [rbp - 0x59]
movd xmm2, r14d
cvtps2pd xmm0, xmm0
cvtdq2pd xmm2, xmm2
subsd xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
mov r15, qword [rsp + 0x120]
addsd xmm7, xmm0
xorps xmm0, xmm0
xorps xmm1, xmm1
cvtsd2ss xmm0, xmm7
ucomiss xmm1, xmm0
ja 0x14000234a
xorps xmm6, xmm6
sqrtss xmm6, xmm0
jmp 0x140002352
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
mov eax, dword [r12 + rbx]
xor r14d, r14d
cmp dword [0x1400ec3a0], eax
mov r12, qword [rsp + 0x118]
jle 0x140002391
lea rcx, [0x1400ec3a0]
call fcn.140060ef0
cmp dword [0x1400ec3a0], 0xffffffff
jne 0x140002391
lea rcx, [0x1400ec3a0]
mov dword [0x1400ec398], r14d
call fcn.140060e84
mov ecx, dword [0x1400ec39c]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x140002620
movd xmm0, dword [rdi]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm6
jbe 0x140002620
mov rdx, qword [0x1400ec430]
lea r8, [rbp - 0x59]
add rdx, qword [0x1400ec450]
mov r9d, 8
mov rcx, qword [0x1400ec440]
movaps xmmword [rsp + 0xb0], xmm8
movaps xmmword [rsp + 0xa0], xmm9
movaps xmmword [rsp + 0x90], xmm10
movaps xmmword [rsp + 0x80], xmm11
movaps xmmword [rsp + 0x70], xmm12
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rbx, qword [rbp - 0x59]
lea r8, [rbp - 0x69]
mov rcx, qword [0x1400ec440]
mov r9d, 0xc
mov qword [rsp + 0x20], r14
lea rdx, [rbx + 0x60]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm0, dword [rbp - 0x61]
movss xmm1, dword [rbp - 0x65]
movss xmm2, dword [rbp - 0x69]
movss xmm10, dword [rbp - 0x75]
movss xmm11, dword [rbp - 0x79]
subss xmm1, xmm10
subss xmm2, xmm11
movd xmm12, esi
subss xmm0, xmm12
mulss xmm1, xmm1
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm1
addss xmm2, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x140002484
xorps xmm9, xmm9
sqrtss xmm9, xmm2
jmp 0x140002490
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm9, xmm0
mov rcx, qword [0x1400ec440]
lea rdi, [rbx + 0x3d0]
mov rdx, rdi
mov qword [rsp + 0x20], r14
mov r9d, 0xc
lea r8, [rbp - 0x51]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm8, dword [rbp - 0x51]
xorps xmm1, xmm1
ucomiss xmm8, xmm1
movss xmm6, dword [rbp - 0x49]
movss xmm7, dword [rbp - 0x4d]
jp 0x140002528
jne 0x140002528
ucomiss xmm7, xmm1
jp 0x140002528
jne 0x140002528
ucomiss xmm6, xmm1
jp 0x140002528
jne 0x140002528
mov rcx, qword [0x1400ec440]
lea r8, [rbp - 0x79]
add rbx, 0x40
mov qword [rsp + 0x20], r14
mov rdx, rbx
mov r9d, 0xc
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movsd xmm1, qword [rbp - 0x79]
mov eax, dword [rbp - 0x71]
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
movsd qword [rbp - 0x51], xmm1
movaps xmm7, xmm0
movss xmm8, dword [rbp - 0x51]
mov dword [rbp - 0x49], eax
movd xmm6, eax
jmp 0x14000252c
add rbx, 0x40
subss xmm11, dword [rbp - 0x69]
subss xmm10, dword [rbp - 0x65]
subss xmm12, dword [rbp - 0x61]
mov rcx, qword [0x1400ec440]
lea r8, [rbp - 0x79]
movaps xmm0, xmm8
mov qword [rsp + 0x20], r14
divss xmm11, xmm9
mov eax, 0x66666667
mov r9d, 0xc
imul dword [0x1400780bc]
subss xmm0, xmm11
divss xmm10, xmm9
sar edx, 1
mov eax, edx
inc edx
shr eax, 0x1f
add eax, edx
mov rdx, rdi
movd xmm1, eax
cvtdq2ps xmm1, xmm1
divss xmm12, xmm9
divss xmm0, xmm1
subss xmm8, xmm0
movaps xmm0, xmm7
subss xmm0, xmm10
movss dword [rbp - 0x79], xmm8
divss xmm0, xmm1
subss xmm7, xmm0
movaps xmm0, xmm6
subss xmm0, xmm12
movss dword [rbp - 0x75], xmm7
subss xmm6, xmm0
movss dword [rbp - 0x71], xmm6
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov rcx, qword [0x1400ec440]
lea r8, [rbp - 0x79]
mov r9d, 0xc
movss dword [rbp - 0x79], xmm8
mov rdx, rbx
movss dword [rbp - 0x75], xmm7
movss dword [rbp - 0x71], xmm6
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
movaps xmm12, xmmword [rsp + 0x70]
movaps xmm11, xmmword [rsp + 0x80]
movaps xmm10, xmmword [rsp + 0x90]
movaps xmm9, xmmword [rsp + 0xa0]
movaps xmm8, xmmword [rsp + 0xb0]
mov rcx, qword [rbp - 0x41]
xor rcx, rsp
call fcn.140060db0
movaps xmm6, xmmword [rsp + 0xd0]
movaps xmm7, xmmword [rsp + 0xc0]
add rsp, 0xe0
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret