Function at 0x140004f70
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xe8]
sub rsp, 0x1c0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x1400f1040]
xor rax, rsp
mov qword [rbp + 0x10], rax
movdqa xmm0, xmmword [0x1400e0da0]
lea rcx, [rbp - 0x10]
movdqu xmmword [rsp + 0x70], xmm0
xor r13d, r13d
xorps xmm0, xmm0
xorps xmm1, xmm1
xorps xmm9, xmm9
mov qword [0x140105358], r13
movups xmmword [0x140105370], xmm0
movsd qword [0x1401053f0], xmm9
movups xmmword [0x1401053e0], xmm1
call fcn.1400025e0
movss xmm15, dword [0x1400e0a94]
xorps xmm10, xmm10
movss xmm14, dword [0x1400e0b10]
mov rbx, qword [rbp - 0x10]
movabs rdi, 0x7ffffffffff0bdbf
movss xmm7, dword [0x1400e0a5c]
lea rcx, [rsp + 0x40]
call fcn.1400025e0
mov rax, qword [rsp + 0x40]
mov rcx, rax
sub rcx, rbx
cmp rcx, 0x4c4b40
jl 0x140005051
mov rbx, rax
call fcn.140004ae0
cmp qword [0x140105340], r13
je 0x1400054d1
mov r12, qword [0x140104c08]
mov rdi, qword [0x140104c00]
mov dword [0x140105488], 0x7f7fffff
mov qword [0x140105480], r13
cmp rdi, r12
je 0x1400057ed
nop dword [rax]
mov rsi, qword [rdi]
mov rcx, rsi
call fcn.1400029f0
cmp byte [0x1400f10d2], r13b
mov r14, rax
mov r15, qword [rdi + 0x18]
je 0x140005101
lea rdx, [rax + 0x2e0]
call fcn.140005880
lea rdx, [r14 + 0x2e8]
movaps xmm6, xmm0
call fcn.140005880
addss xmm0, xmm7
comiss xmm0, xmm6
setae al
cmp byte [0x1400f10d2], r13b
je 0x140005101
test al, al
je 0x140005209
lea rdx, [rsi + 0x758]
call fcn.1400036f0
test al, 0xf8
jne 0x140005209
mov rdx, qword [rdi + 8]
add rdx, 0x1201
call fcn.1400037c0
cmp dword [0x140105338], eax
je 0x140005209
cmp byte [0x1400f10d0], r13b
je 0x140005209
mov r9d, 0x6e
lea rdx, [rbp - 0x30]
mov r8, r15
mov rcx, r14
call fcn.1400046f0
lea r8, [rbp - 0x10]
lea rdx, [rsp + 0x50]
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rbp - 0x10], xmm0
movsd qword [rbp], xmm1
call fcn.1400043d0
movss xmm0, dword [0x140105418]
movsd xmm2, qword [rsp + 0x58]
movsd xmm3, qword [rsp + 0x50]
mulss xmm0, xmm15
cvtps2pd xmm1, xmm0
movss xmm0, dword [0x14010541c]
subsd xmm3, xmm1
mulss xmm0, xmm15
cvtps2pd xmm1, xmm0
mulsd xmm3, xmm3
xorps xmm0, xmm0
subsd xmm2, xmm1
mulsd xmm2, xmm2
addsd xmm2, xmm3
cvtpd2ps xmm1, xmm2
ucomiss xmm0, xmm1
ja 0x1400051c7
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400051cf
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
mov eax, dword [0x1400f10d8]
lea ecx, [rax + rax*4]
add ecx, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jbe 0x140005209
movss xmm1, dword [0x140105488]
comiss xmm1, xmm0
jbe 0x140005209
movss dword [0x140105488], xmm0
mov qword [0x140105480], rsi
mov qword [0x140105358], r15
add rdi, 0x40
cmp rdi, r12
jne 0x1400050b0
cmp qword [0x140105480], r13
je 0x1400057ed
mov ecx, dword [0x1400f10e0]
test ecx, ecx
je 0x140005451
sub ecx, 1
je 0x140005426
sub ecx, 1
je 0x1400053fb
sub ecx, 1
je 0x1400053d0
cmp ecx, 1
jne 0x1400054c7
mov rdi, r13
nop dword [rax + rax]
mov rcx, qword [0x140105480]
call fcn.1400029f0
mov r9d, dword [rsp + rdi*4 + 0x70]
lea rdx, [rbp - 0x10]
mov r8, qword [0x140105358]
mov rcx, rax
call fcn.1400046f0
movups xmm6, xmmword [rbp - 0x10]
lea r8, [rsp + 0x20]
movsd xmm11, qword [rbp]
lea rdx, [rsp + 0x60]
movaps xmmword [rsp + 0x20], xmm6
movsd qword [rsp + 0x30], xmm11
call fcn.1400043d0
movss xmm1, dword [0x14010541c]
movss xmm0, dword [0x140105418]
movsd xmm12, qword [rsp + 0x68]
mulss xmm0, xmm15
mulss xmm1, xmm15
cvtps2pd xmm9, xmm0
cvtps2pd xmm8, xmm1
movaps xmm1, xmm14
movaps xmm0, xmm8
subsd xmm0, xmm12
cvtpd2ps xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movsd xmm13, qword [rsp + 0x60]
movaps xmm7, xmm0
movaps xmm0, xmm9
movaps xmm1, xmm14
subsd xmm0, xmm13
cvtpd2ps xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm7, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm7
ja 0x14000531d
xorps xmm0, xmm0
sqrtss xmm0, xmm7
jmp 0x140005325
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
subsd xmm8, qword [0x140105378]
xorps xmm10, xmm10
movaps xmm1, xmm14
cvtss2sd xmm10, xmm0
cvtpd2ps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
subsd xmm9, qword [0x140105370]
movaps xmm7, xmm0
movaps xmm1, xmm14
cvtpd2ps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm7, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm7
ja 0x140005374
xorps xmm0, xmm0
sqrtss xmm0, xmm7
jmp 0x14000537c
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvtss2sd xmm0, xmm0
comisd xmm0, xmm10
jbe 0x1400053b6
movsd qword [0x1401053e0], xmm6
unpckhpd xmm6, xmm6
movsd qword [0x1401053e8], xmm6
movsd qword [0x1401053f0], xmm11
movsd qword [0x140105370], xmm13
movsd qword [0x140105378], xmm12
inc rdi
cmp rdi, 3
jl 0x140005260
xorps xmm9, xmm9
xorps xmm10, xmm10
jmp 0x1400054c7
mov rcx, qword [0x140105480]
call fcn.1400029f0
mov r8, qword [0x140105358]
lea rdx, [rbp - 0x10]
mov r9d, 2
mov rcx, rax
call fcn.1400046f0
lea rdx, [rbp - 0x80]
jmp 0x14000547a
mov rcx, qword [0x140105480]
call fcn.1400029f0
mov r8, qword [0x140105358]
lea rdx, [rbp - 0x10]
mov r9d, 7
mov rcx, rax
call fcn.1400046f0
lea rdx, [rbp - 0x70]
jmp 0x14000547a
mov rcx, qword [0x140105480]
call fcn.1400029f0
mov r8, qword [0x140105358]
lea rdx, [rbp - 0x10]
mov r9d, 0x43
mov rcx, rax
call fcn.1400046f0
lea rdx, [rbp - 0x60]
jmp 0x14000547a
mov rcx, qword [0x140105480]
call fcn.1400029f0
mov r8, qword [0x140105358]
lea rdx, [rbp - 0x10]
mov r9d, 0x6e
mov rcx, rax
call fcn.1400046f0
lea rdx, [rbp - 0x50]
movups xmm0, xmmword [rax]
lea r8, [rsp + 0x20]
movups xmmword [0x1401053e0], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [0x1401053f0], xmm1
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movaps xmmword [rsp + 0x20], xmm0
movsd qword [rsp + 0x30], xmm1
call fcn.1400043d0
movsd xmm0, qword [rax]
movsd qword [0x140105370], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x140105378], xmm1
movabs rdi, 0x7ffffffffff0bdbf
cmp qword [0x140105480], r13
je 0x1400057f7
cmp qword [0x140105340], r13
je 0x1400057f7
mov ecx, dword [0x1400f10e4]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400057f7
movsd xmm7, qword [0x140105370]
ucomisd xmm7, xmm9
movsd xmm2, qword [0x140105378]
jp 0x140005526
jne 0x140005526
ucomisd xmm2, xmm9
jp 0x140005526
je 0x1400057f7
movss xmm1, dword [0x14010541c]
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [0x1400f10d8]
mov eax, r13d
mulss xmm1, xmm15
comiss xmm0, xmm1
xorps xmm1, xmm1
setae al
cvtsi2sd xmm1, eax
subsd xmm1, xmm2
cvtpd2ps xmm0, xmm1
movss xmm1, dword [0x1400e0b10]
call fcn.1400bb460
movss xmm1, dword [0x140105418]
movaps xmm6, xmm0
mulss xmm1, xmm15
cvtps2pd xmm2, xmm1
movaps xmm1, xmm14
subsd xmm2, xmm7
cvtpd2ps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm1, xmm0
xorps xmm0, xmm0
addss xmm1, xmm6
ucomiss xmm0, xmm1
ja 0x14000559f
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400055a7
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
ucomiss xmm0, xmm10
jp 0x1400055b3
je 0x1400057f7
mov rcx, qword [0x140105340]
call fcn.140002920
movsd xmm0, qword [0x1401053e8]
movaps xmm1, xmm14
subsd xmm0, qword [0x140104bd8]
mov rdi, rax
cvtpd2ps xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm6, xmm0
movaps xmm1, xmm14
movsd xmm0, qword [0x1401053e0]
subsd xmm0, qword [0x140104bd0]
cvtpd2ps xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movsd xmm1, qword [0x1401053f0]
addss xmm6, xmm0
subsd xmm1, qword [0x140104be0]
cvtpd2ps xmm0, xmm1
movaps xmm1, xmm14
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x140005635
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x14000563d
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
xorps xmm8, xmm8
lea rdx, [rdi + 0x1d08]
cvtss2sd xmm8, xmm0
call fcn.140005880
lea rdx, [rdi + 0x1d0c]
movaps xmm7, xmm0
call fcn.140005880
cmp byte [0x140105328], 1
movaps xmm6, xmm0
je 0x14000578a
ucomiss xmm7, xmm10
jp 0x14000567d
je 0x14000578a
ucomiss xmm6, xmm10
jp 0x140005689
je 0x14000578a
test rdi, rdi
je 0x14000578a
cmp byte [0x1400f10d1], r13b
je 0x14000578a
mov rdx, qword [0x140105480]
add rdx, 0x198
call fcn.1400034f0
xorps xmm0, xmm0
movsd qword [rbp], xmm9
mov r9d, 0x18
lea r8, [rbp - 0x10]
lea rcx, [0x1401052e8]
lea rdx, [rax + 0x168]
movups xmmword [rbp - 0x10], xmm0
call fcn.14000bb90
mulss xmm6, dword [0x1400e0d2c]
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x40]
cvtpd2ps xmm0, xmm8
andps xmm6, xmmword [0x1400e1250]
divss xmm0, xmm7
mulss xmm6, xmm15
cvtps2pd xmm1, xmm0
mulss xmm0, xmm0
movaps xmm3, xmm1
movaps xmm2, xmm1
mulsd xmm1, qword [rbp]
mulsd xmm3, qword [rbp - 0x10]
mulsd xmm2, qword [rbp - 8]
mulss xmm6, xmm0
xorps xmm0, xmm0
addsd xmm3, qword [0x1401053e0]
addsd xmm2, qword [0x1401053e8]
cvtss2sd xmm0, xmm6
addsd xmm0, xmm1
movaps xmm1, xmm3
unpcklpd xmm1, xmm2
movups xmmword [0x1401053e0], xmm1
movaps xmmword [rsp + 0x20], xmm1
addsd xmm0, qword [0x1401053f0]
movsd qword [rsp + 0x30], xmm0
movsd qword [rsp + 0x30], xmm0
movsd qword [0x1401053f0], xmm0
call fcn.1400043d0
movsd xmm0, qword [rax]
movsd qword [0x140105370], xmm0
movsd xmm1, qword [rax + 8]
movsd qword [0x140105378], xmm1
movsd xmm0, qword [0x1401053e0]
ucomisd xmm0, xmm9
jp 0x1400057d3
jne 0x1400057d3
movsd xmm0, qword [0x1401053e8]
ucomisd xmm0, xmm9
jp 0x1400057d3
jne 0x1400057d3
movsd xmm0, qword [0x1401053f0]
ucomisd xmm0, xmm9
jp 0x1400057d3
movss xmm7, dword [0x1400e0a5c]
movabs rdi, 0x7ffffffffff0bdbf
je 0x140005051
movups xmm0, xmmword [0x140105370]
lea rcx, [rbp - 0x10]
movdqa xmmword [rbp - 0x10], xmm0
call fcn.140004840
jmp 0x14000503f
movabs rdi, 0x7ffffffffff0bdbf
xorps xmm0, xmm0
movsd qword [rsp + 0x30], xmm9
lea rcx, [rsp + 0x48]
movsd qword [0x1401053f0], xmm9
movups xmmword [0x1401053e0], xmm0
mov qword [0x140105480], r13
movups xmmword [0x140105370], xmm0
call fcn.1400025e0
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x10], rax
cmp rax, rdi
je 0x140005860
mov ecx, 1
mov edx, 0xff
cmovl ecx, edx
test cl, cl
jns 0x140005860
add rax, 0xf4240
lea rcx, [rbp - 0x10]
mov qword [rbp - 0x10], rax
call fcn.140003960
jmp 0x140005049
movabs rax, 0x7fffffffffffffff
lea rcx, [rbp - 0x10]
mov qword [rbp - 0x10], rax
call fcn.140003960
jmp 0x140005049