Function at 0x14004d6c0
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
push rbp
push rdi
push r13
lea rbp, [r11 - 0x5f]
sub rsp, 0x100
movaps xmmword [r11 - 0x48], xmm7
movaps xmmword [r11 - 0x58], xmm8
movaps xmmword [r11 - 0x98], xmm13
mov rax, qword [0x1400e4f10]
xor rax, rsp
mov qword [rbp - 0x49], rax
mov eax, dword [0x14013a2a4]
mov ecx, 4
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], r12
mov qword [r11 - 0x20], r14
mov qword [r11 - 0x28], r15
test eax, eax
jne 0x14004d715
xor edi, edi
jmp 0x14004d74a
cmp eax, 1
jne 0x14004d71f
lea edi, [rax + 6]
jmp 0x14004d74a
cmp eax, 2
jne 0x14004d729
lea edi, [rax + 4]
jmp 0x14004d74a
cmp eax, 3
jne 0x14004d733
lea edi, [rax + 2]
jmp 0x14004d74a
cmp eax, ecx
jne 0x14004d73e
mov edi, 3
jmp 0x14004d74a
mov edi, dword [0x140139a68]
cmp eax, 5
cmove edi, ecx
mov rdx, qword [0x14013a2c0]
lea r8, [rbp - 0x59]
mov rcx, qword [0x14013a2d0]
xor r13d, r13d
movss xmm7, dword [0x1400afe48]
add rdx, 0x18
mov dword [0x140139a68], edi
mov qword [rsp + 0x20], r13
lea r9d, [r13 + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp - 0x59]
lea r9d, [r13 + 8]
mov rcx, qword [0x14013a2d0]
lea r8, [rbp - 0x51]
add rdx, 0x100
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r12, qword [rbp - 0x51]
lea rsi, [0x140138a10]
movss xmm8, dword [0x1400afde8]
mov r14, r12
movsd xmm13, qword [0x1400afce8]
mov r15d, 0x100
mov qword [rsp + 0x120], rbx
movaps xmmword [rsp + 0xe0], xmm6
nop dword [rax + rax]
test r12, r12
je 0x14004d913
mov rcx, qword [0x14013a2d0]
lea r8, [rbp - 0x69]
mov r9d, 8
mov qword [rsp + 0x20], 0
mov rdx, r14
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rbx, qword [rbp - 0x69]
lea r8, [rbp - 0x71]
mov rcx, qword [0x14013a2d0]
mov r9d, 4
mov qword [rsp + 0x20], 0
lea rdx, [rbx + 0x10b8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test rbx, rbx
je 0x14004d913
cmp byte [0x14013a2ce], 0
jne 0x14004d85c
mov eax, dword [rbp - 0x71]
and eax, 0x1fc000
cmp eax, 0x8000
jne 0x14004d913
cmp rbx, qword [0x140139230]
je 0x14004d913
cmp qword [rsi], rbx
je 0x14004d913
mov r8d, edi
lea rcx, [rsp + 0x30]
mov rdx, rbx
call fcn.14004bb70
mov rcx, qword [0x14013a2d0]
lea rdx, [rbx + 0x280]
mov r9d, 4
mov qword [rsp + 0x20], 0
lea r8, [rbp - 0x6d]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
comiss xmm8, dword [rbp - 0x6d]
jae 0x14004d913
lea rcx, [rbp - 0x79]
call fcn.14004b8c0
movss xmm0, dword [rbp - 0x75]
movaps xmm1, xmm13
subss xmm0, dword [rsp + 0x34]
cvtps2pd xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movss xmm1, dword [rbp - 0x79]
movaps xmm6, xmm0
subss xmm1, dword [rsp + 0x30]
cvtps2pd xmm0, xmm1
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm6, xmm0
xorps xmm1, xmm1
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
ucomiss xmm1, xmm0
ja 0x14004d903
sqrtss xmm0, xmm0
jmp 0x14004d908
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm7, xmm0
jbe 0x14004d913
movaps xmm7, xmm0
mov r13, rbx
add r14, 0x10
add rsi, 8
sub r15, 1
jne 0x14004d7e0
mov edx, dword [0x140139a68]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x1400539a0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov r15, qword [rsp + 0xf0]
mov r14, qword [rsp + 0xf8]
mov r12, qword [rsp + 0x130]
mov rsi, qword [rsp + 0x128]
test r13, r13
je 0x14004dc6d
mov r8d, dword [0x140139a68]
lea rcx, [rsp + 0x30]
movaps xmmword [rsp + 0xb0], xmm9
mov rdx, r13
movaps xmmword [rsp + 0xa0], xmm10
movaps xmmword [rsp + 0x90], xmm11
call fcn.14004bb70
cmp byte [0x14013a2cd], 0
movss xmm0, dword [0x14012f744]
cvtps2pd xmm0, xmm0
je 0x14004d9be
addsd xmm0, qword [0x1400afc98]
jmp 0x14004d9c6
addsd xmm0, qword [0x1400afcc8]
xor ecx, ecx
cvtpd2ps xmm11, xmm0
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cdq
mov ecx, 1
sub eax, edx
sar eax, 1
mov ebx, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movss xmm10, dword [rsp + 0x34]
cdq
sub eax, edx
sar eax, 1
cvtps2pd xmm0, xmm10
mov edi, eax
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm0, xmm1
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movss xmm9, dword [rsp + 0x30]
movaps xmm6, xmm0
movd xmm1, ebx
cvtdq2pd xmm1, xmm1
cvtps2pd xmm0, xmm9
subsd xmm0, xmm1
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm6, xmm0
xorps xmm1, xmm1
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
ucomiss xmm1, xmm0
ja 0x14004da4b
xorps xmm6, xmm6
sqrtss xmm6, xmm0
jmp 0x14004da53
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
movss xmm4, dword [0x1400b0400]
xorps xmm2, xmm2
ucomiss xmm9, xmm2
xorps xmm8, xmm8
xorps xmm7, xmm7
jp 0x14004da6d
je 0x14004dac9
movd xmm3, ebx
cvtdq2ps xmm3, xmm3
comiss xmm9, xmm3
jbe 0x14004daa7
movaps xmm8, xmm3
lea eax, [rbx + rbx]
subss xmm8, xmm9
movd xmm0, eax
movaps xmm1, xmm3
cvtdq2ps xmm0, xmm0
xorps xmm8, xmm4
divss xmm8, xmm11
addss xmm1, xmm8
comiss xmm1, xmm0
jbe 0x14004daa7
xorps xmm8, xmm8
comiss xmm3, xmm9
jbe 0x14004dac9
movaps xmm8, xmm9
subss xmm8, xmm3
divss xmm8, xmm11
addss xmm3, xmm8
comiss xmm2, xmm3
jbe 0x14004dac9
xorps xmm8, xmm8
ucomiss xmm10, xmm2
jp 0x14004dad1
je 0x14004db26
movd xmm3, edi
cvtdq2ps xmm3, xmm3
comiss xmm10, xmm3
jbe 0x14004db07
movaps xmm7, xmm3
lea eax, [rdi + rdi]
subss xmm7, xmm10
movd xmm0, eax
movaps xmm1, xmm3
cvtdq2ps xmm0, xmm0
xorps xmm7, xmm4
divss xmm7, xmm11
addss xmm1, xmm7
comiss xmm1, xmm0
jbe 0x14004db07
xorps xmm7, xmm7
comiss xmm3, xmm10
jbe 0x14004db26
movaps xmm7, xmm10
subss xmm7, xmm3
divss xmm7, xmm11
addss xmm3, xmm7
comiss xmm2, xmm3
jbe 0x14004db26
xorps xmm7, xmm7
mov rcx, qword [0x14013a2d0]
lea rdx, [r13 + 0x90]
xor ebx, ebx
lea r8, [rsp + 0x30]
mov qword [rsp + 0x20], rbx
lea r9d, [rbx + 0xc]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [0x140139230]
lea r9d, [rbx + 0xc]
mov rcx, qword [0x14013a2d0]
lea r8, [rbp - 0x69]
movss xmm9, dword [rsp + 0x30]
add rdx, 0x90
movss xmm10, dword [rsp + 0x34]
mov qword [rsp + 0x20], rbx
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm0, dword [0x14010a5f8]
xorps xmm1, xmm1
movaps xmm11, xmmword [rsp + 0x90]
cvtps2pd xmm0, xmm0
cvtss2sd xmm1, xmm6
addsd xmm0, qword [0x1400afc98]
comisd xmm0, xmm1
jb 0x14004dc5b
movss xmm0, dword [rbp - 0x65]
movaps xmm1, xmm13
movss xmm2, dword [rbp - 0x69]
subss xmm0, xmm10
subss xmm2, xmm9
cvtps2pd xmm6, xmm0
cvtps2pd xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm9, xmm0
movaps xmm1, xmm13
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm9, xmm0
movaps xmm1, xmm13
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm9, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm9
ja 0x14004dc0a
xorps xmm0, xmm0
sqrtsd xmm0, xmm9
jmp 0x14004dc13
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movss xmm1, dword [0x1400e6364]
mulsd xmm0, qword [0x1400afcb0]
cvtps2pd xmm1, xmm1
comisd xmm1, xmm0
jb 0x14004dc5b
mov ecx, dword [0x140138a00]
call qword [sym.imp.USER32.dll_GetKeyState]
bt ax, 0xf
jae 0x14004dc5b
xor r9d, r9d
mov qword [rsp + 0x20], rbx
cvttss2si r8, xmm7
lea ecx, [r9 + 1]
cvttss2si rdx, xmm8
call qword [sym.imp.USER32.dll_mouse_event]
movaps xmm9, xmmword [rsp + 0xb0]
movaps xmm10, xmmword [rsp + 0xa0]
movaps xmm6, xmmword [rsp + 0xe0]
mov rbx, qword [rsp + 0x120]
mov rcx, qword [rbp - 0x49]
xor rcx, rsp
call fcn.140089620
lea r11, [rsp + 0x100]
movaps xmm7, xmmword [r11 - 0x30]
movaps xmm8, xmmword [r11 - 0x40]
movaps xmm13, xmmword [r11 - 0x80]
mov rsp, r11
pop r13
pop rdi
pop rbp
ret