Function at 0x1400ac520
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rdi
sub rsp, 0x300
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 [0x140148080]
xor rax, rsp
mov qword [rsp + 0x268], rax
call fcn.1400a77b0
movsxd rdi, eax
test eax, eax
js 0x1400acbd8
mov eax, dword [reloc.WS2_32.dll_accept]
cmp eax, 1
jne 0x1400ac592
lea ebx, [rax + 7]
jmp 0x1400ac5ab
cmp eax, 2
jne 0x1400ac59c
lea ebx, [rax + 5]
jmp 0x1400ac5ab
mov ebx, dword [rsp + 0x40]
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 0x1400acbd8
imul rcx, rdi, 0x38
add rcx, qword [0x1401495d0]
movups xmm13, xmmword [rcx]
movups xmm11, xmmword [rcx + 0x10]
movups xmm6, xmmword [rcx + 0x20]
movsd xmm0, qword [rcx + 0x30]
movsd qword [rsp + 0x210], xmm0
mov rdx, qword [0x140149560]
add rdx, 0x1ff0
xorps xmm0, xmm0
movups xmmword [rsp + 0x1c0], xmm0
xorps xmm10, xmm10
mov qword [rsp + 0x1d0], 0
mov r9d, Ordinal_32
lea r8, [rsp + 0x1c0]
call fcn.1400b17f0
test al, al
jne 0x1400ac642
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x1c0], xmm0
mov qword [rsp + 0x1d0], rax
mov dword [rsp + 0x1d8], eax
movq rdi, xmm6
lea rcx, [rdi + 0x5d8]
call fcn.1400b06d0
mov rcx, rax
test rax, rax
jne 0x1400ac66a
lea rcx, [rdi + 0x5c8]
call fcn.1400b06d0
mov rcx, rax
mov qword [rsp + 0x1f0], 0
mov dword [rsp + 0x1f8], 0
mov qword [rsp + 0x200], 0
mov dword [rsp + 0x208], 0
lea eax, [rbx + rbx*2]
shl eax, 4
movsxd rdx, eax
add rdx, rcx
mov r9d, Ordinal_50
lea r8, [rsp + 0x1e0]
call fcn.1400b17f0
test al, al
jne 0x1400ac6d6
xorps xmm0, xmm0
movups xmmword [rsp + 0x1e0], xmm0
movups xmmword [rsp + 0x1f0], xmm0
movups xmmword [rsp + 0x200], xmm0
mov qword [rsp + 0x230], 0
mov dword [rsp + 0x238], 0
mov qword [rsp + 0x240], 0
mov dword [rsp + 0x248], 0
lea rdx, [rdi + 0x250]
mov r9d, Ordinal_50
lea r8, [rsp + 0x220]
call fcn.1400b17f0
test al, al
jne 0x1400ac73d
xorps xmm0, xmm0
movups xmmword [rsp + 0x220], xmm0
movups xmmword [rsp + 0x230], xmm0
movups xmmword [rsp + 0x240], xmm0
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x220]
call fcn.1400a40e0
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
movups xmm8, xmmword [rax + 0x20]
movups xmm9, xmmword [rax + 0x30]
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x1e0]
call fcn.1400a40e0
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0xb0], xmm7
movaps xmmword [rsp + 0xc0], xmm8
movaps xmmword [rsp + 0xd0], xmm9
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x70], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x80], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x90], xmm1
lea r8, [rsp + 0xa0]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x160]
call fcn.1400a4260
movups xmm9, xmmword [rax + 0x30]
mov qword [rsp + 0x1b0], 0
mov dword [rsp + 0x1b8], 0
psrldq xmm11, 8
movq rdx, xmm11
add rdx, 0x164
mov r9d, recvfrom
lea r8, [rsp + 0x1b0]
call fcn.1400b17f0
test al, al
jne 0x1400ac833
xor eax, eax
mov qword [rsp + 0x1b0], rax
mov dword [rsp + 0x1b8], eax
movaps xmm7, xmm9
shufps xmm7, xmm9, 0xaa
movss xmm0, dword [rsp + 0x1b8]
comiss xmm0, xmm7
jae 0x1400acbd8
mov rdx, qword [0x140149580]
add rdx, 0x448
mov qword [rsp + 0x1a0], 0
mov dword [rsp + 0x1a8], 0
mov r9d, recvfrom
lea r8, [rsp + 0x1a0]
call fcn.1400b17f0
test al, al
jne 0x1400ac89b
xor eax, eax
mov qword [rsp + 0x1a0], rax
mov dword [rsp + 0x1a8], eax
subss xmm7, dword [rsp + 0x1c8]
movaps xmm14, xmm9
shufps xmm14, xmm9, 0x55
movaps xmm0, xmm14
movss xmm11, dword [rsp + 0x1c4]
subss xmm0, xmm11
movss xmm6, dword [0x140135928]
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 + 0x1c0]
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 0x1400ac917
xorps xmm0, xmm0
sqrtss xmm0, xmm8
jmp 0x1400ac920
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 [0x140135a18]
mulss xmm0, xmm8
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
divsd xmm1, qword [0x140135930]
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 [0x140135950]
cvtpd2ps xmm7, xmm1
comiss xmm12, xmm10
jb 0x1400ac983
addss xmm7, xmm8
psrldq xmm13, 8
movq rcx, xmm13
add rcx, 0x1b0
call fcn.1400b0940
comiss xmm0, xmm10
jb 0x1400acbd8
movss xmm1, dword [rsp + 0x1a4]
subss xmm7, xmm1
cmp byte [0x14014990e], 0
je 0x1400aca56
addss xmm1, xmm7
subss xmm6, dword [rsp + 0x1a0]
addss xmm6, dword [rsp + 0x1a0]
movss xmm0, dword [0x140135a2c]
comiss xmm10, xmm6
jbe 0x1400ac9e6
addss xmm6, xmm0
movss xmm2, dword [0x140135abc]
comiss xmm6, xmm0
jbe 0x1400ac9f7
addss xmm6, xmm2
comiss xmm10, xmm1
jbe 0x1400aca01
addss xmm1, xmm0
comiss xmm1, xmm0
jbe 0x1400aca0a
addss xmm1, xmm2
movsd xmm0, qword [rsp + 0x1cc]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsp + 0x1d4]
mov dword [rsp + 0x58], eax
movaps xmm0, xmm6
unpcklps xmm0, xmm1
movsd qword [rsp + 0x30], xmm0
movss dword [rsp + 0x38], xmm10
movd xmm2, dword [0x140148550]
cvtdq2ps xmm2, xmm2
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x30]
call fcn.1400a7400
jmp 0x1400acbd8
movss xmm11, dword [rsp + 0x1a8]
subss xmm10, xmm11
movss xmm12, dword [rsp + 0x1a0]
subss xmm6, xmm12
movss xmm5, dword [0x1401359e8]
movss xmm2, dword [0x140135ab8]
comiss xmm6, xmm5
jbe 0x1400aca99
nop dword [rax]
addss xmm6, xmm2
comiss xmm6, xmm5
ja 0x1400aca90
movss xmm3, dword [0x140135aa8]
comiss xmm3, xmm6
jbe 0x1400acab0
addss xmm6, xmm8
comiss xmm3, xmm6
ja 0x1400acaa6
movss xmm9, dword [0x140135abc]
comiss xmm7, xmm8
jbe 0x1400acacb
nop
addss xmm7, xmm9
comiss xmm7, xmm8
ja 0x1400acac0
movss xmm4, dword [0x140135a2c]
comiss xmm2, xmm7
jbe 0x1400acae9
nop dword [rax + rax]
addss xmm7, xmm4
comiss xmm2, xmm7
ja 0x1400acae0
movd xmm0, dword [0x140148550]
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 0x1400acb1d
addss xmm6, xmm2
comiss xmm6, xmm5
ja 0x1400acb14
comiss xmm3, xmm6
jbe 0x1400acb2c
addss xmm6, xmm8
comiss xmm3, xmm6
ja 0x1400acb22
comiss xmm1, xmm8
jbe 0x1400acb3d
addss xmm1, xmm9
comiss xmm1, xmm8
ja 0x1400acb32
comiss xmm2, xmm1
jbe 0x1400acb4b
addss xmm1, xmm4
comiss xmm2, xmm1
ja 0x1400acb42
movaps xmm0, xmm6
unpcklps xmm0, xmm1
movsd qword [rsp + 0x30], xmm0
movss dword [rsp + 0x38], xmm11
mov rbx, qword [0x140149580]
add rbx, 0x448
xor eax, eax
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0x208], rax
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x210], xmm0
mov eax, dword [0x14014ae90]
mov dword [rsp + 0x1e8], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [rsp + 0x1ec], eax
mov qword [rsp + 0x1f0], rbx
lea rax, [rsp + 0x30]
mov qword [rsp + 0x1f8], rax
mov qword [rsp + 0x200], recvfrom
mov edx, 2
lea rcx, [rsp + 0x1e0]
call fcn.1400b1880
nop
mov rcx, qword [rsp + 0x268]
xor rcx, rsp
call fcn.140112470
lea r11, [rsp + 0x300]
mov rbx, qword [r11 + 0x10]
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