Function at 0x14003a3d0
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0x100
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x48], xmm9
movaps xmmword [rax - 0x58], xmm10
movaps xmmword [rax - 0x68], xmm11
movaps xmmword [rax - 0x78], xmm12
mov rax, qword [0x14013e040]
xor rax, rsp
mov qword [rbp - 0x21], rax
mov rcx, qword [0x1401408e8]
lea rdx, [rbp - 0x29]
mov rbx, qword [0x1401408c8]
xor r14d, r14d
add rcx, 0x3d8
mov qword [rbp - 0x29], r14
mov r8d, 8
xor dil, dil
call fcn.1400375d0
mov rcx, qword [rbp - 0x29]
lea rdx, [rbp - 0x59]
xorps xmm0, xmm0
xor eax, eax
add rcx, 0xd8
mov qword [rbp - 0x39], rax
mov r8d, 0x30
mov qword [rbp - 0x31], rax
movups xmmword [rbp - 0x59], xmm0
movups xmmword [rbp - 0x49], xmm0
xorps xmm6, xmm6
call fcn.1400375d0
movss xmm0, dword [0x140127e70]
lea rdx, [rbp - 0x59]
movss xmm10, dword [rbp - 0x51]
xor eax, eax
movss xmm11, dword [rbp - 0x45]
xorps xmm10, xmm0
movss xmm12, dword [rbp - 0x39]
xorps xmm11, xmm0
mov rcx, qword [rbp - 0x29]
xorps xmm12, xmm0
xorps xmm0, xmm0
mov qword [rbp - 0x39], rax
add rcx, 0xd8
mov qword [rbp - 0x31], rax
mov r8d, 0x30
movups xmmword [rbp - 0x59], xmm0
movups xmmword [rbp - 0x49], xmm0
call fcn.1400375d0
mov ecx, 0x57
xorps xmm8, xmm8
xorps xmm7, xmm7
xorps xmm9, xmm9
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x14003a50b
movaps xmm8, xmm10
movaps xmm7, xmm11
movaps xmm9, xmm12
addss xmm8, xmm6
addss xmm7, xmm6
mov dil, 1
addss xmm9, xmm6
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x14003a52d
mov dil, 1
subss xmm8, xmm10
subss xmm7, xmm11
subss xmm9, xmm12
mov ecx, 0x41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm10, dword [rbp - 0x41]
movss xmm11, dword [rbp - 0x4d]
movss xmm12, dword [rbp - 0x59]
test ax, ax
jns 0x14003a561
mov dil, 1
subss xmm8, xmm12
subss xmm7, xmm11
subss xmm9, xmm10
mov ecx, 0x44
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x14003a58f
addss xmm12, xmm8
mov dil, 1
addss xmm11, xmm7
addss xmm10, xmm9
movaps xmm8, xmm12
movaps xmm7, xmm11
movaps xmm9, xmm10
movaps xmm0, xmm7
movaps xmm2, xmm8
mulss xmm2, xmm8
movaps xmm1, xmm9
mulss xmm0, xmm7
mulss xmm1, xmm9
addss xmm2, xmm0
xorps xmm0, xmm0
addss xmm2, xmm1
ucomiss xmm0, xmm2
ja 0x14003a5c1
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x14003a5c9
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, xmm6
jbe 0x14003a5dc
divss xmm8, xmm0
divss xmm7, xmm0
divss xmm9, xmm0
lea rsi, [rbx + 0x160]
test dil, dil
je 0x14003a6a4
mov ebx, 0x96
movd xmm6, dword [0x14013e2e4]
mov rdx, rsi
cvtdq2ps xmm6, xmm6
call fcn.140038be0
mov rcx, qword [0x140140750]
lea r8, [rbp - 0x59]
add rax, 0x14c
mov qword [rsp + 0x38], r14
mov qword [rbp - 0x51], rax
lea rax, [rbp - 0x69]
movaps xmm0, xmm8
mov qword [rbp - 0x49], rax
mov eax, dword [0x140140758]
movaps xmm1, xmm7
mulss xmm0, xmm6
mov r9d, 0x28
mov edx, 0x225914
mov qword [rsp + 0x30], r14
mulss xmm1, xmm6
mov dword [rsp + 0x28], r14d
movss dword [rbp - 0x69], xmm0
movaps xmm0, xmm9
mulss xmm0, xmm6
mov dword [rbp - 0x38], r14d
movss dword [rbp - 0x65], xmm1
mov word [rbp - 0x34], r14w
movss dword [rbp - 0x61], xmm0
mov byte [rbp - 0x32], r14b
mov dword [rbp - 0x59], 0x85b3b69
mov qword [rbp - 0x41], 0xc
mov dword [rbp - 0x55], eax
mov byte [rbp - 0x39], 1
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
sub rbx, 1
jne 0x14003a5f1
jmp 0x14003a72f
mulss xmm7, dword [0x140127938]
mov rdx, rsi
call fcn.140038be0
mov rcx, qword [0x140140750]
lea r8, [rbp - 0x59]
add rax, 0x14c
mov qword [rsp + 0x38], r14
mov qword [rbp - 0x51], rax
xorps xmm0, xmm0
lea rax, [rbp - 0x69]
unpcklps xmm0, xmm7
mov qword [rbp - 0x49], rax
mov r9d, 0x28
mov eax, dword [0x140140758]
mov edx, 0x225914
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rbp - 0x55], eax
movss dword [rbp - 0x61], xmm6
movsd qword [rbp - 0x69], xmm0
mov dword [rbp - 0x38], r14d
mov word [rbp - 0x34], r14w
mov byte [rbp - 0x32], r14b
mov dword [rbp - 0x59], 0x85b3b69
mov qword [rbp - 0x41], 0xc
mov byte [rbp - 0x39], 1
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [rbp - 0x21]
xor rcx, rsp
call fcn.1400dce40
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop rbp
ret