Function at 0x14009b660
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
push rdi
sub rsp, 0x2f0
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
movaps xmmword [rax - 0x88], xmm13
movaps xmmword [rax - 0x98], xmm14
mov rax, qword [0x140135080]
xor rax, rsp
mov qword [rsp + 0x258], rax
call fcn.140099410
movsxd rdi, eax
test eax, eax
js 0x14009bc88
mov eax, dword [reloc.WS2_32.dll_accept]
cmp eax, 1
jne 0x14009b6d8
mov ebx, 8
jmp 0x14009b6f3
cmp eax, 2
jne 0x14009b6e4
mov ebx, 7
jmp 0x14009b6f3
mov ebx, dword [rsp + 0x30]
mov ecx, 5
cmp eax, 3
cmove ebx, ecx
mov ecx, dword [reloc.WS2_32.dll_getsockname]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14009bc88
imul rcx, rdi, 0x38
mov rax, qword [0x140136150]
movups xmm13, xmmword [rcx + rax]
movups xmm11, xmmword [rcx + rax + 0x10]
movups xmm6, xmmword [rcx + rax + 0x20]
movsd xmm0, qword [rcx + rax + 0x30]
movsd qword [rsp + 0x200], xmm0
mov rdx, qword [0x1401360e0]
add rdx, 0x1f90
xorps xmm0, xmm0
movups xmmword [rsp + 0x1b0], xmm0
xorps xmm10, xmm10
mov qword [rsp + 0x1c0], 0
mov r9d, Ordinal_32
lea r8, [rsp + 0x1b0]
call fcn.1400a05c0
test al, al
jne 0x14009b78e
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x1b0], xmm0
mov qword [rsp + 0x1c0], rax
mov dword [rsp + 0x1c8], eax
movq rsi, xmm6
lea rcx, [rsi + 0x5d8]
call fcn.14009f2e0
mov r8, rax
test rax, rax
jne 0x14009b7b6
lea rcx, [rsi + 0x5d8]
call fcn.14009f2e0
mov r8, rax
mov qword [rsp + 0x1e0], 0
mov dword [rsp + 0x1e8], 0
mov qword [rsp + 0x1f0], 0
mov dword [rsp + 0x1f8], 0
lea eax, [rbx + rbx*2]
shl eax, 4
movsxd rdx, eax
add rdx, r8
mov r9d, Ordinal_50
lea r8, [rsp + 0x1d0]
call fcn.1400a05c0
test al, al
jne 0x14009b822
xorps xmm0, xmm0
movups xmmword [rsp + 0x1d0], xmm0
movups xmmword [rsp + 0x1e0], xmm0
movups xmmword [rsp + 0x1f0], xmm0
mov qword [rsp + 0x220], 0
mov dword [rsp + 0x228], 0
mov qword [rsp + 0x230], 0
mov dword [rsp + 0x238], 0
lea rdx, [rsi + 0x250]
mov r9d, Ordinal_50
lea r8, [rsp + 0x210]
call fcn.1400a05c0
test al, al
jne 0x14009b889
xorps xmm0, xmm0
movups xmmword [rsp + 0x210], xmm0
movups xmmword [rsp + 0x220], xmm0
movups xmmword [rsp + 0x230], xmm0
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0x210]
call fcn.1400960b0
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
movups xmm8, xmmword [rax + 0x20]
movups xmm9, xmmword [rax + 0x30]
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0x1d0]
call fcn.1400960b0
movaps xmmword [rsp + 0x90], xmm6
movaps xmmword [rsp + 0xa0], xmm7
movaps xmmword [rsp + 0xb0], xmm8
movaps xmmword [rsp + 0xc0], xmm9
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x60], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x80], xmm1
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x150]
call fcn.140096230
movups xmm9, xmmword [rax + 0x30]
mov qword [rsp + 0x1a0], 0
mov dword [rsp + 0x1a8], 0
psrldq xmm11, 8
movq rdx, xmm11
add rdx, 0x164
mov r9d, listen
lea r8, [rsp + 0x1a0]
call fcn.1400a05c0
test al, al
jne 0x14009b97c
xor eax, eax
mov qword [rsp + 0x1a0], rax
mov dword [rsp + 0x1a8], eax
movaps xmm7, xmm9
shufps xmm7, xmm9, 0xaa
movss xmm0, dword [rsp + 0x1a8]
comiss xmm0, xmm7
jae 0x14009bc88
mov rdx, qword [0x140136100]
add rdx, 0x428
mov qword [rsp + 0x190], 0
mov dword [rsp + 0x198], 0
mov r9d, listen
lea r8, [rsp + 0x190]
call fcn.1400a05c0
test al, al
jne 0x14009b9e4
xor eax, eax
mov qword [rsp + 0x190], rax
mov dword [rsp + 0x198], eax
subss xmm7, dword [rsp + 0x1b8]
movaps xmm14, xmm9
shufps xmm14, xmm9, 0x55
movaps xmm0, xmm14
movss xmm11, dword [rsp + 0x1b4]
subss xmm0, xmm11
movss xmm6, dword [0x1401243e8]
movaps xmm1, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm8, xmm0
movaps xmm0, xmm9
movss xmm12, dword [rsp + 0x1b0]
subss xmm0, xmm12
movaps xmm1, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm8, xmm0
movaps xmm1, xmm6
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm8, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm8
ja 0x14009ba60
xorps xmm0, xmm0
sqrtss xmm0, xmm8
jmp 0x14009ba69
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
divss xmm7, xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_asinf
movss xmm8, dword [0x14012446c]
mulss xmm0, xmm8
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
divsd xmm1, qword [0x1401243f0]
cvtpd2ps xmm6, xmm1
subss xmm11, xmm14
subss xmm12, xmm9
divss xmm11, xmm12
movaps xmm0, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_atanf
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
mulsd xmm1, qword [0x140124408]
cvtpd2ps xmm7, xmm1
comiss xmm12, xmm10
jb 0x14009bacc
addss xmm7, xmm8
psrldq xmm13, 8
movq rcx, xmm13
add rcx, 0x1b0
call fcn.14009f550
comiss xmm0, xmm10
jb 0x14009bc88
cmp byte [0x140135fbd], 0
jne 0x14009bc88
movss xmm11, dword [rsp + 0x198]
subss xmm10, xmm11
movss xmm1, dword [rsp + 0x194]
subss xmm7, xmm1
movss xmm12, dword [rsp + 0x190]
subss xmm6, xmm12
movss xmm5, dword [0x14012445c]
movss xmm2, dword [0x1401244c8]
comiss xmm6, xmm5
jbe 0x14009bb49
nop word [rax + rax]
addss xmm6, xmm2
comiss xmm6, xmm5
ja 0x14009bb40
movss xmm3, dword [0x1401244c0]
comiss xmm3, xmm6
jbe 0x14009bb60
addss xmm6, xmm8
comiss xmm3, xmm6
ja 0x14009bb56
movss xmm9, dword [0x1401244cc]
comiss xmm7, xmm8
jbe 0x14009bb7b
nop
addss xmm7, xmm9
comiss xmm7, xmm8
ja 0x14009bb70
movss xmm4, dword [0x140124478]
comiss xmm2, xmm7
jbe 0x14009bb99
nop dword [rax + rax]
addss xmm7, xmm4
comiss xmm2, xmm7
ja 0x14009bb90
movd xmm0, dword [reloc.WS2_32.dll_closesocket]
cvtdq2ps xmm0, xmm0
divss xmm10, xmm0
divss xmm7, xmm0
addss xmm11, xmm10
addss xmm1, xmm7
divss xmm6, xmm0
addss xmm6, xmm12
comiss xmm6, xmm5
jbe 0x14009bbcd
addss xmm6, xmm2
comiss xmm6, xmm5
ja 0x14009bbc4
comiss xmm3, xmm6
jbe 0x14009bbdc
addss xmm6, xmm8
comiss xmm3, xmm6
ja 0x14009bbd2
comiss xmm1, xmm8
jbe 0x14009bbed
addss xmm1, xmm9
comiss xmm1, xmm8
ja 0x14009bbe2
comiss xmm2, xmm1
jbe 0x14009bbfb
addss xmm1, xmm4
comiss xmm2, xmm1
ja 0x14009bbf2
movaps xmm0, xmm6
unpcklps xmm0, xmm1
movsd qword [rsp + 0x40], xmm0
movss dword [rsp + 0x48], xmm11
mov rbx, qword [0x140136100]
add rbx, 0x428
xor eax, eax
mov qword [rsp + 0x1d0], rax
mov qword [rsp + 0x1f8], rax
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x200], xmm0
mov eax, dword [0x140137a10]
mov dword [rsp + 0x1d8], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [rsp + 0x1dc], eax
mov qword [rsp + 0x1e0], rbx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x1e8], rax
mov qword [rsp + 0x1f0], sendto
mov edx, 2
lea rcx, [rsp + 0x1d0]
call fcn.1400a0650
nop
mov rcx, qword [rsp + 0x258]
xor rcx, rsp
call fcn.140100a20
lea r11, [rsp + 0x2f0]
mov rbx, qword [r11 + 0x10]
mov rsi, 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]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop rdi
ret