Function at 0x140060bfc
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rdi
push r14
lea rbp, [rax - 0x47]
sub rsp, 0x90
movaps xmmword [rax - 0x28], xmm7
lea rcx, [rbp - 0x29]
movaps xmmword [rax - 0x38], xmm9
mov rsi, r8
movsxd rdi, r9d
call fcn.140005620
mov edx, dword [0x14010b2f8]
lea r8, [rbp + 0x57]
add rdx, qword [0x14010c900]
xor r14d, r14d
mov dword [rbp + 0x57], r14d
call fcn.1400179dc
test al, al
je 0x140060e7c
mov ebx, dword [rbp + 0x57]
cmp ebx, 0xffffffff
jne 0x140060c73
mov rcx, qword [rbp - 0x29]
mov qword [0x14010c9a8], rcx
jmp 0x140060e7c
mov eax, ebx
mov dword [rbp + 0x5b], r14d
shr eax, 9
lea rdx, [rbp - 0x21]
lea rcx, [rbp - 0x11]
lea eax, [rax*8 + 0x10]
mov dword [rbp + 0x57], eax
lea rax, [rbp + 0x57]
mov qword [rbp - 0x21], rax
lea rax, [rbp + 0x5f]
mov qword [rbp - 0x19], rax
call fcn.140060f00
mov rdx, qword [0x14010c7f0]
mov r8, rax
call fcn.140060a48
test rax, rax
je 0x140060e7c
mov ecx, ebx
mov qword [rbp + 0x57], r14
and ecx, 0x1ff
lea r8, [rbp + 0x57]
imul rdx, rcx, 0x78
add rdx, rax
call fcn.14000443c
test al, al
je 0x140060e7c
mov edx, dword [0x14010b2cc]
lea r8, [rbp + 0x4f]
mov rbx, qword [rbp + 0x57]
add rdx, rbx
mov dword [rbp + 0x4f], r14d
call fcn.140015f3c
test rbx, rbx
je 0x140060d22
mov edx, dword [0x14010b318]
lea r8, [rbp + 0x57]
add rdx, rbx
call fcn.140015eb8
mov edx, dword [0x14010b2fc]
lea r8, [rbp - 0x31]
add rdx, rbx
call fcn.140015f3c
mov edx, dword [rbp + 0x4f]
mov cl, byte [rbp + 0x57]
test edx, edx
jle 0x140060d32
mov al, 1
test cl, cl
je 0x140060d35
mov al, r14b
cmp byte [0x14010b10b], r14b
je 0x140060d5f
mov eax, dword [rbp - 0x31]
cmp dword [0x14010c910], eax
je 0x140060e7c
test edx, edx
jle 0x140060e7c
test cl, cl
jne 0x140060e7c
jmp 0x140060d67
test al, al
je 0x140060e7c
mov rbx, qword [rbp - 0x29]
imul rdx, rdi, 0xf4240
mov rcx, rbx
sub rcx, qword [0x14010c9a8]
cmp rcx, rdx
je 0x140060d87
jl 0x140060e7c
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140060e75
cmp byte [rbp + 0x6f], r14b
je 0x140060db6
movd xmm1, dword [rbp + 0x77]
movss xmm0, dword [rsi]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x140060e7c
cmp byte [0x14010cd40], r14b
je 0x140060e49
mov rdx, qword [rbp + 0x7f]
lea r8, [rbp + 0x57]
and dword [rbp + 0x57], r14d
lea rcx, [0x14010c838]
and dword [rbp + 0x5b], r14d
call fcn.140003cc4
mov rcx, qword [0x14010cd68]
movss xmm1, dword [0x1400f8098]
movss xmm0, dword [rcx + 0xec]
mulss xmm0, dword [0x1400f8010]
movss xmm9, dword [rcx + 0xe8]
subss xmm0, dword [rbp + 0x5b]
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_powf]
mulss xmm9, dword [0x1400f8010]
movaps xmm7, xmm0
movss xmm1, dword [0x1400f8098]
subss xmm9, dword [rbp + 0x57]
movaps xmm0, xmm9
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_powf]
addss xmm0, xmm7
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_sqrtf]
comiss xmm0, dword [0x1400f8118]
ja 0x140060e7c
xor edx, edx
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 2]
call qword [sym.imp.USER32.dll_mouse_event]
xor edx, edx
mov qword [rsp + 0x20], r14
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
mov qword [0x14010c9a8], rbx
lea r11, [rsp + 0x90]
mov al, 1
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
movaps xmm7, xmmword [r11 - 0x10]
movaps xmm9, xmmword [r11 - 0x20]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret