Function at 0x1400013c0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x10], rbx
push rsi
sub rsp, 0x100
movaps xmmword [rsp + 0xa0], xmm11
mov rax, qword [0x140061040]
xor rax, rsp
mov qword [rsp + 0x50], rax
xor esi, esi
xorps xmm11, xmm11
cmp byte [0x140061cc1], sil
je 0x1400016d7
mov ecx, dword [0x1400610b8]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400016d7
mov rbx, qword [0x140061310]
movaps xmmword [rsp + 0xc0], xmm9
xorps xmm9, xmm9
movaps xmmword [rsp + 0xb0], xmm10
xorps xmm10, xmm10
movaps xmmword [rsp + 0x90], xmm12
xorps xmm12, xmm12
cvtsi2ss xmm12, dword [0x1400610d0]
movaps xmmword [rsp + 0x80], xmm13
xorps xmm13, xmm13
movaps xmmword [rsp + 0x70], xmm14
movss xmm14, dword [0x14006138c]
movaps xmmword [rsp + 0x60], xmm15
movss xmm15, dword [0x140061388]
movaps xmmword [rsp + 0xf0], xmm6
movaps xmmword [rsp + 0xe0], xmm7
movaps xmmword [rsp + 0xd0], xmm8
nop dword [rax + rax]
cmp rbx, qword [0x140061318]
jae 0x1400015aa
cmp byte [0x140061cc0], sil
je 0x1400014b5
mov eax, dword [rbx + 0x18]
cmp dword [0x140061398], eax
je 0x1400015a1
mov eax, dword [0x1400610b4]
lea r8, [rsp + 0x40]
mov rcx, qword [0x140061d08]
mov r9d, 0xc
shl eax, 5
movsxd rdx, eax
add rdx, qword [rbx + 0x30]
mov qword [rsp + 0x40], rsi
mov dword [rsp + 0x48], esi
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm8, dword [rsp + 0x40]
movss xmm7, dword [rsp + 0x44]
subss xmm8, dword [0x14006137c]
subss xmm7, dword [0x140061380]
movss xmm6, dword [rsp + 0x48]
subss xmm6, dword [0x140061384]
movaps xmm0, xmm8
movaps xmm1, xmm7
xorps xmm6, xmmword [0x140058c30]
call sub.api_ms_win_crt_math_l1_1_0.dll__hypotf
movaps xmm1, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2f
movss xmm15, dword [0x140061388]
movaps xmm6, xmm0
mulss xmm6, dword [0x1400587b4]
movaps xmm1, xmm8
movaps xmm0, xmm7
subss xmm6, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2f
movss xmm14, dword [0x14006138c]
movaps xmm7, xmm0
mulss xmm7, dword [0x1400587b4]
movaps xmm8, xmm11
subss xmm8, dword [0x140061390]
movaps xmm0, xmm6
subss xmm7, xmm14
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll__hypotf
comiss xmm12, xmm0
jbe 0x1400015a1
movaps xmm12, xmm0
movaps xmm10, xmm6
movaps xmm9, xmm7
movaps xmm13, xmm8
sub rbx, 0xffffffffffffff80
jmp 0x140001490
ucomiss xmm10, xmm11
movaps xmm12, xmmword [rsp + 0x90]
movaps xmm8, xmmword [rsp + 0xd0]
movaps xmm7, xmmword [rsp + 0xe0]
movaps xmm6, xmmword [rsp + 0xf0]
jp 0x1400015e8
jne 0x1400015e8
ucomiss xmm9, xmm11
jp 0x1400015e8
jne 0x1400015e8
ucomiss xmm13, xmm11
jp 0x1400015e8
je 0x1400016b0
movd xmm0, dword [0x1400610d4]
cvtdq2ps xmm0, xmm0
divss xmm10, xmm0
divss xmm9, xmm0
movss xmm0, dword [0x1400587c0]
addss xmm10, xmm15
addss xmm9, xmm14
comiss xmm10, xmm0
movss dword [rsp + 0x34], xmm9
ja 0x14000162a
movss xmm0, dword [0x140058838]
comiss xmm0, xmm10
jbe 0x14000162e
movaps xmm10, xmm0
movss xmm0, dword [0x1400587d4]
comiss xmm9, xmm0
jbe 0x14000164f
movss xmm1, dword [0x140058844]
addss xmm9, xmm1
comiss xmm9, xmm0
ja 0x140001644
movss xmm0, dword [0x140058840]
comiss xmm0, xmm9
jbe 0x140001670
movss xmm1, dword [0x1400587e8]
addss xmm9, xmm1
comiss xmm0, xmm9
ja 0x140001665
mov rdx, qword [0x140061d00]
lea r8, [rsp + 0x30]
mov rcx, qword [0x140061d08]
movaps xmm0, xmm10
unpcklps xmm0, xmm9
add rdx, 0x19c5958
mov r9d, 0xc
movsd qword [rsp + 0x30], xmm0
movss dword [rsp + 0x38], xmm11
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
movaps xmm14, xmmword [rsp + 0x70]
movaps xmm13, xmmword [rsp + 0x80]
movaps xmm10, xmmword [rsp + 0xb0]
movaps xmm9, xmmword [rsp + 0xc0]
movaps xmm15, xmmword [rsp + 0x60]
cmp byte [0x140061cc2], sil
je 0x1400017d2
mov rax, qword [0x140061ce8]
lea r8, str.Background
xor edx, edx
mov qword [rsp + 0x110], rdi
mov rcx, qword [rax + 0x4b88]
mov rcx, qword [rcx]
call fcn.14000ed90
lea rcx, [0x1400610c0]
mov rbx, rax
call fcn.14000a830
mov ecx, dword [0x1400610d0]
mov edi, eax
mov eax, dword [0x140061d14]
lea edx, [rcx + rcx*4]
add edx, edx
movd xmm2, edx
cdq
sub eax, edx
sar eax, 1
cvtdq2ps xmm2, xmm2
movd xmm0, eax
mov eax, dword [0x140061d18]
cvtdq2ps xmm0, xmm0
cdq
sub eax, edx
sar eax, 1
movss dword [rsp + 0x40], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x44], xmm0
test edi, 0xff000000
je 0x1400017ca
movss xmm0, dword [0x1400586f8]
comiss xmm0, xmm2
ja 0x1400017ca
subss xmm2, xmm0
mov dword [rsp + 0x28], 0x63
movss xmm0, dword [0x140058788]
lea rdx, [rsp + 0x40]
movaps xmm3, xmm11
movss dword [rsp + 0x20], xmm0
mov rcx, rbx
call fcn.1400301d0
movss xmm0, dword [0x140058738]
mov r9d, edi
mov r8d, dword [rbx + 0x50]
mov rcx, rbx
mov rdx, qword [rbx + 0x58]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
call fcn.14002e7e0
mov dword [rbx + 0x50], esi
mov rdi, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.14004f750
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x18]
movaps xmm11, xmmword [r11 - 0x60]
mov rsp, r11
pop rsi
ret