Function at 0x14002ed30
Capabilities:
Log keystrokes via polling

Disassembly:
movss dword [rsp + 0x20], xmm3
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x128
mov rax, qword [0x140a7c340]
xor rax, rsp
mov qword [rsp + 0x110], rax
lea rax, [rsp + 0x50]
mov rdi, rax
mov rsi, qword [rsp + 0x148]
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
mov ecx, dword [0x1401a5004]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
je 0x14002ed93
movzx eax, byte [section..data]
test eax, eax
je 0x14002ed98
jmp 0x14002f0a6
movzx eax, byte [0x1401a5001]
test eax, eax
je 0x14002effb
mov rax, qword [rsp + 0x140]
add rax, 0x1aa0
mov rcx, rax
call fcn.14002e970
movss dword [rsp + 0x24], xmm0
mov rax, qword [rsp + 0x140]
add rax, 0x1d0c
mov rcx, rax
call fcn.14002e970
movss dword [rsp + 0x2c], xmm0
movss xmm0, dword [rsp + 0x24]
comiss xmm0, dword [0x14014db4c]
jbe 0x14002effb
movsd xmm0, qword [rsp + 0x60]
subsd xmm0, qword [0x140a7c7e0]
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x68], xmm0
movsd xmm0, qword [rsp + 0x58]
subsd xmm0, qword [0x140a7c7d8]
mov edx, 2
call fcn.14002e940
movsd qword [rsp + 0x78], xmm0
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, qword [0x140a7c7d0]
mov edx, 2
movaps xmm0, xmm1
call fcn.14002e940
movsd xmm1, qword [rsp + 0x78]
addsd xmm1, xmm0
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x28], xmm0
movss xmm0, dword [rsp + 0x28]
divss xmm0, dword [rsp + 0x24]
movss dword [rsp + 0x6c], xmm0
lea rax, [rsp + 0x38]
lea rcx, [rsp + 0x50]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
movss xmm0, dword [rsp + 0x24]
movss dword [rsp + 0x30], xmm0
movss xmm0, dword [rsp + 0x2c]
movss dword [rsp + 0x34], xmm0
lea rax, [rsp + 0xb0]
lea rcx, [rsp + 0x50]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0xb0]
lea rcx, [0x140a7c7d0]
call fcn.14002ec60
movsd qword [rsp + 0x80], xmm0
movss xmm0, dword [rsp + 0x30]
call fcn.14002f6c0
cvtss2sd xmm0, xmm0
movsd xmm1, qword [rsp + 0x80]
divsd xmm1, xmm0
movaps xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [rsp + 0x20], xmm0
movss xmm0, dword [0x14014db78]
mulss xmm0, dword [rsp + 0x20]
mulss xmm0, dword [0x14014db70]
movss dword [rsp + 0x70], xmm0
cvtss2sd xmm0, dword [rsp + 0x20]
mov rax, qword [rsp + 0x150]
movsd xmm1, qword [rax]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd xmm1, qword [rsp + 0x38]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x38], xmm0
cvtss2sd xmm0, dword [rsp + 0x20]
mov rax, qword [rsp + 0x150]
movsd xmm1, qword [rax + 8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd xmm1, qword [rsp + 0x40]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x40], xmm0
cvtss2sd xmm0, dword [rsp + 0x20]
mov rax, qword [rsp + 0x150]
movsd xmm1, qword [rax + 0x10]
mulsd xmm1, xmm0
movaps xmm0, xmm1
movsd xmm1, qword [rsp + 0x48]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x48], xmm0
movss xmm0, dword [0x14014db74]
mulss xmm0, dword [rsp + 0x34]
call fcn.14002f6c0
mulss xmm0, dword [0x14014db50]
movss xmm1, dword [rsp + 0x20]
mulss xmm1, dword [rsp + 0x20]
mulss xmm0, xmm1
cvtss2sd xmm0, xmm0
movsd xmm1, qword [rsp + 0x48]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x48], xmm0
lea rax, [rsp + 0x50]
lea rcx, [rsp + 0x38]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0xd0]
lea rcx, [rsp + 0x50]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0xf0]
call fcn.140043020
lea rcx, [rsp + 0x88]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
cvtsi2sd xmm0, dword [0x140a7c750]
divsd xmm0, qword [0x14014db68]
movsd qword [rsp + 0x98], xmm0
cvtsi2sd xmm0, dword [0x140a7c754]
divsd xmm0, qword [0x14014db68]
movsd qword [rsp + 0xa0], xmm0
lea rax, [rsp + 0x100]
mov rdi, rax
xor eax, eax
mov ecx, 0x10
rep stosb byte [rdi], al
movss xmm2, dword [rsp + 0x158]
movsd xmm1, qword [rsp + 0x90]
movsd xmm0, qword [rsp + 0x88]
call fcn.1400d5800
nop
mov rcx, qword [rsp + 0x110]
xor rcx, rsp
call fcn.1401494c0
add rsp, 0x128
pop rdi
pop rsi
ret