Function at 0x1800a8fc0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
lea rbp, [rsp - 0x1550]
mov eax, 0x1650
call fcn.18011ed00
sub rsp, rax
movaps xmmword [rsp + 0x1640], xmm6
movaps xmmword [rsp + 0x1630], xmm7
movaps xmmword [rsp + 0x1620], xmm8
movaps xmmword [rsp + 0x1610], xmm9
movaps xmmword [rsp + 0x1600], xmm10
movaps xmmword [rsp + 0x15f0], xmm11
movaps xmmword [rsp + 0x15e0], xmm12
mov rax, qword [0x18029b200]
xor rax, rsp
mov qword [rbp + 0x14d0], rax
cmp byte [0x18029e436], 0
jne 0x1800a903c
call fcn.1800ab050
mov eax, dword [reloc.WS2_32.dll_getpeername]
lea ebx, [rax + rax*4]
add ebx, ebx
call fcn.18000d2e0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.18008e470
nop
movzx eax, byte [0x18029e405]
test al, al
je 0x1800a933f
movd xmm9, ebx
cvtdq2ps xmm9, xmm9
movss xmm7, dword [rsp + 0x6c]
movss xmm10, dword [rsp + 0x68]
movss xmm6, dword [0x180127a30]
movss xmm11, dword [0x180127a58]
cmp byte [0x18029e406], 0
je 0x1800a90fd
call fcn.18000cd20
mov rbx, rax
movdqa xmm0, xmmword [0x180127b60]
movups xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call fcn.18000a980
movaps xmm1, xmm7
mulss xmm1, xmm6
movaps xmm0, xmm10
mulss xmm0, xmm6
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x34], xmm1
movss dword [rsp + 0x28], xmm11
mov dword [rsp + 0x20], 0x5a
mov r9d, eax
movaps xmm2, xmm9
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.18001cbe0
movzx eax, byte [0x18029e405]
test al, al
je 0x1800a933f
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1800a933f
movzx ecx, byte [0x18029e424]
call fcn.1800bd3f0
mov rcx, qword [0x18029e460]
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x1800a933f
test rax, rax
je 0x1800a933f
cmp rax, rdx
je 0x1800a933f
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.18009ff30
movsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x40], xmm0
mov edi, dword [rsp + 0x58]
mov dword [rsp + 0x48], edi
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x30]
call fcn.1800bdaf0
mulss xmm10, xmm6
mulss xmm7, xmm6
movss xmm0, dword [rsp + 0x34]
cvtps2pd xmm0, xmm0
movss xmm8, dword [rsp + 0x30]
cvtps2pd xmm8, xmm8
cvtps2pd xmm1, xmm7
subsd xmm0, xmm1
movsd xmm1, qword [0x18016f0c0]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm7, xmm0
cvtps2pd xmm2, xmm10
subsd xmm8, xmm2
movsd xmm1, qword [0x18016f0c0]
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm7, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm7
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x1800a91e5
sqrtss xmm0, xmm0
jmp 0x1800a91ea
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm9, xmm0
jbe 0x1800a933f
mov rcx, qword [0x18029e450]
mov rax, qword [0x18029e470]
mov rbx, qword [rax + rcx]
test rbx, rbx
je 0x1800a933f
movss xmm9, dword [0x180198ab4]
movsd xmm1, qword [rbx + 0x60]
movsd xmm0, qword [rbx + 0x40]
movsd qword [rsp + 0x30], xmm0
movss xmm12, dword [rbx + 0x68]
movaps xmm2, xmm12
movd xmm8, edi
subss xmm2, xmm8
movaps xmm10, xmm1
shufps xmm10, xmm10, 0x55
movsd qword [rsp + 0x40], xmm1
movaps xmm0, xmm10
movss xmm7, dword [rsp + 0x54]
subss xmm0, xmm7
movss xmm1, dword [rsp + 0x40]
movss xmm6, dword [rsp + 0x50]
subss xmm1, xmm6
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
mulss xmm2, xmm2
addss xmm1, xmm2
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1800a928e
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1800a9296
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
subss xmm8, xmm12
divss xmm8, xmm0
subss xmm7, xmm10
divss xmm7, xmm0
subss xmm6, dword [rsp + 0x40]
divss xmm6, xmm0
movaps xmm2, xmm8
movss xmm1, dword [rbx + 0x48]
subss xmm2, xmm1
movaps xmm0, xmm7
movss xmm4, dword [rsp + 0x34]
subss xmm0, xmm4
movaps xmm3, xmm6
movss xmm5, dword [rsp + 0x30]
subss xmm3, xmm5
comiss xmm9, xmm11
jbe 0x1800a9306
movaps xmm6, xmm3
divss xmm6, xmm9
addss xmm6, xmm5
movaps xmm7, xmm0
divss xmm7, xmm9
addss xmm7, xmm4
movaps xmm8, xmm2
divss xmm8, xmm9
addss xmm8, xmm1
subss xmm1, dword [rbx + 0x3d8]
movss dword [rbx + 0x3d0], xmm6
movss dword [rbx + 0x3d4], xmm7
movaps xmm0, xmm8
subss xmm0, xmm1
movss dword [rbx + 0x3d8], xmm0
movaps xmm1, xmm6
unpcklps xmm1, xmm7
movsd qword [rbx + 0x40], xmm1
movss dword [rbx + 0x48], xmm8
mov rcx, qword [rbp + 0x14c0]
test rcx, rcx
je 0x1800a9351
call fcn.18000ff70
nop
mov rcx, qword [rbp + 0x14d0]
xor rcx, rsp
call fcn.18011eca0
lea r11, [rsp + 0x1650]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
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