Function at 0x1400394e0
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
push rbp
push r13
lea rbp, [r11 - 0x298]
sub rsp, 0x388
movaps xmmword [r11 - 0x38], xmm6
mov rax, qword [0x14004a040]
xor rax, rsp
mov qword [rbp + 0x1c0], rax
mov rcx, qword [0x14004a920]
add rcx, 0x13723c18
mov qword [r11 - 0x18], r12
call fcn.14003b2b0
mov qword [0x14004a8d8], rax
lea rcx, [rax + 0x200]
call fcn.14003b2b0
mov qword [0x14004a8c8], rax
lea rcx, [rax + 0x38]
call fcn.14003b2b0
mov rcx, rax
call fcn.14003b2b0
mov qword [0x14004a898], rax
lea rcx, [rax + 0x30]
call fcn.14003b2b0
mov qword [0x14004a8d0], rax
lea rcx, [rax + 0x350]
call fcn.14003b2b0
mov qword [0x14004a8a0], rax
test rax, rax
je 0x1400395f4
lea rcx, [rax + 0x1b0]
call fcn.14003b2b0
xorps xmm0, xmm0
mov qword [0x14004a880], rax
mov r8d, 0x18
movsd qword [rbp + 0x30], xmm0
lea rdx, [rbp + 0x20]
lea rcx, [rax + 0x138]
movups xmmword [rbp + 0x20], xmm0
call fcn.140037920
movups xmm0, xmmword [rbp + 0x20]
mov rcx, qword [0x14004a8a0]
add rcx, 0x2c8
movups xmmword [0x14004a118], xmm0
movsd xmm0, qword [rbp + 0x30]
movsd qword [0x14004a128], xmm0
call fcn.14003b2b0
mov qword [0x14004a888], rax
lea rcx, [rax + 0x1261]
call fcn.14003b600
mov dword [0x14004a8b0], eax
mov rcx, qword [0x14004a8d8]
add rcx, 0x188
mov qword [rsp + 0x3a0], rbx
call fcn.14003b2b0
mov qword [0x14004a8b8], rax
lea rcx, [rax + 0x2c0]
call fcn.14003b2b0
mov rcx, qword [0x14004a8b8]
add rcx, 0x2c8
mov qword [0x14004a8a8], rax
call fcn.14003b600
xor r13d, r13d
mov dword [0x14004a890], eax
mov dword [0x14004a8c0], 0x7f7fffff
mov r12d, r13d
mov qword [0x14004a878], r13
test eax, eax
jle 0x140039ed9
movaps xmmword [rsp + 0x2f0], xmm13
movss xmm13, dword [0x140043608]
movaps xmmword [rsp + 0x2e0], xmm14
movdqa xmm14, xmmword [0x1400439a0]
movaps xmmword [rsp + 0x2d0], xmm15
movsd xmm15, qword [0x140043650]
mov qword [rsp + 0x3a8], rsi
mov qword [rsp + 0x3b0], rdi
mov qword [rsp + 0x378], r14
mov qword [rsp + 0x370], r15
movaps xmmword [rsp + 0x350], xmm7
movaps xmmword [rsp + 0x340], xmm8
movaps xmmword [rsp + 0x330], xmm9
movaps xmmword [rsp + 0x320], xmm10
movaps xmmword [rsp + 0x310], xmm11
movaps xmmword [rsp + 0x300], xmm12
nop dword [rax]
mov rax, qword [0x14004a8a8]
movsxd rcx, r12d
lea rcx, [rax + rcx*8]
call fcn.14003b2b0
mov rbx, rax
test rax, rax
je 0x140039e59
lea rcx, [rax + 0x1261]
call fcn.14003b600
cmp eax, dword [0x14004a8b0]
je 0x140039e59
lea rcx, [rbx + 0x320]
call fcn.14003b2b0
test rax, rax
je 0x140039e59
cmp rax, qword [0x14004a8a0]
je 0x140039e59
lea rcx, [rax + 0x328]
call fcn.14003b2b0
mov r15, rax
test rax, rax
je 0x140039e59
mov r8d, 0x6e
lea rcx, [rbp + 0x20]
mov rdx, rax
call fcn.140038410
movups xmm0, xmmword [rbp + 0x20]
lea rdx, [rbp - 0x40]
movsd xmm1, qword [rbp + 0x30]
lea rcx, [rbp - 0x60]
movaps xmmword [rbp - 0x40], xmm0
movsd qword [rbp - 0x30], xmm1
call fcn.140037fe0
xor r8d, r8d
lea rcx, [rbp - 0x20]
mov rdx, r15
call fcn.140038410
movups xmm6, xmmword [rbp - 0x20]
lea rdx, [rbp]
movsd xmm7, qword [rbp - 0x10]
lea rcx, [rbp - 0x50]
movaps xmmword [rbp], xmm6
movsd qword [rbp + 0x10], xmm7
call fcn.140037fe0
movsd xmm8, qword [rbp - 0x58]
movsd xmm12, qword [rbp - 0x48]
movaps xmm0, xmm8
subsd xmm0, xmm12
andps xmm0, xmmword [0x140043b20]
cvtpd2ps xmm11, xmm0
movaps xmm0, xmm6
unpckhpd xmm0, xmm6
movaps xmm9, xmm11
subsd xmm0, qword [0x14004a120]
mulss xmm9, xmm13
movss xmm13, dword [0x140043668]
movaps xmm1, xmm13
cvtsd2ss xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
subsd xmm6, qword [0x14004a118]
movaps xmm10, xmm0
movaps xmm1, xmm13
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
subsd xmm7, qword [0x14004a128]
addss xmm10, xmm0
movaps xmm1, xmm13
cvtpd2ps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm10, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm10
ja 0x14003985d
xorps xmm0, xmm0
sqrtss xmm0, xmm10
jmp 0x140039866
movaps xmm0, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cmp byte [0x14004a862], r13b
xorps xmm13, xmm13
movsd xmm7, qword [rbp - 0x60]
cvtss2sd xmm0, xmm0
divsd xmm0, qword [0x140043690]
cvtsd2ss xmm13, xmm0
je 0x140039dd9
cmp byte [0x14004a8fc], r13b
je 0x1400399dd
mov rcx, qword [0x14004a8d8]
add rcx, 0x150
call fcn.14003b350
movaps xmm1, xmm9
lea rcx, [r15 + 0x30c]
mulss xmm1, dword [0x140043608]
movaps xmm6, xmm0
cvttss2si esi, xmm11
cvtps2pd xmm10, xmm1
cvttss2si r14d, xmm9
call fcn.14003b400
lea rax, [rbp + 0x20]
mov r9d, esi
mov qword [rsp + 0x20], rax
mov r8d, r14d
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
cvttsd2si edx, xmm8
subsd xmm6, xmm1
comisd xmm15, xmm6
jb 0x140039904
movdqa xmmword [rbp + 0x20], xmm14
jmp 0x140039911
movdqa xmm0, xmmword [0x140043960]
movdqa xmmword [rbp + 0x20], xmm0
movaps xmm0, xmm7
subsd xmm0, xmm10
cvttsd2si ecx, xmm0
call fcn.140039200
cmp byte [0x14004a85f], r13b
je 0x1400399dd
movdqa xmm0, xmmword [0x140043820]
lea r8, str.Foreground
mov rax, qword [0x14004a750]
mov edx, 1
movdqa xmmword [rbp + 0x20], xmm0
movaps xmm0, xmm7
subsd xmm0, xmm10
cvttsd2si edi, xmm8
mov rcx, qword [rax + 0x48b0]
mov rcx, qword [rcx]
cvttsd2si ebx, xmm0
call fcn.140006700
lea ecx, [rbx + r14]
mov r10, rax
movd xmm0, ecx
lea ecx, [rdi + rsi]
cvtdq2ps xmm0, xmm0
movd xmm1, ecx
lea rcx, [rbp + 0x20]
cvtdq2ps xmm1, xmm1
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x64], xmm1
movd xmm1, edi
movd xmm0, ebx
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x6c], xmm1
movss dword [rsp + 0x68], xmm0
call fcn.1400030e0
xorps xmm10, xmm10
mov dword [rsp + 0x28], r13d
mov r9d, eax
movss dword [rsp + 0x20], xmm10
lea rdx, [rsp + 0x68]
mov rcx, r10
lea r8, [rsp + 0x60]
call fcn.140025630
jmp 0x1400399e1
xorps xmm10, xmm10
cmp byte [0x14004a862], r13b
je 0x140039dd9
cmp byte [0x14004a861], r13b
je 0x140039b35
mov rcx, qword [0x14004a8d8]
add rcx, 0x150
call fcn.14003b350
cvttss2si r14d, xmm9
lea rcx, [r15 + 0x30c]
mulss xmm9, dword [0x140043608]
movaps xmm6, xmm0
cvttss2si esi, xmm11
cvtps2pd xmm9, xmm9
call fcn.14003b400
lea rax, [rbp + 0x20]
mov r9d, esi
mov qword [rsp + 0x20], rax
mov r8d, r14d
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
cvttsd2si edx, xmm8
subsd xmm6, xmm1
comisd xmm15, xmm6
jb 0x140039a62
movdqa xmmword [rbp + 0x20], xmm14
jmp 0x140039a6f
movdqa xmm0, xmmword [0x140043960]
movdqa xmmword [rbp + 0x20], xmm0
movaps xmm0, xmm7
subsd xmm0, xmm9
cvttsd2si ecx, xmm0
call fcn.140038e40
cmp byte [0x14004a85f], r13b
je 0x140039b35
movdqa xmm0, xmmword [0x140043820]
lea r8, str.Foreground
mov rax, qword [0x14004a750]
mov edx, 1
movdqa xmmword [rbp + 0x20], xmm0
movaps xmm0, xmm7
subsd xmm0, xmm9
cvttsd2si edi, xmm8
mov rcx, qword [rax + 0x48b0]
mov rcx, qword [rcx]
cvttsd2si ebx, xmm0
call fcn.140006700
lea ecx, [r14 + rbx]
mov r10, rax
movd xmm0, ecx
lea ecx, [rsi + rdi]
cvtdq2ps xmm0, xmm0
movd xmm1, ecx
lea rcx, [rbp + 0x20]
cvtdq2ps xmm1, xmm1
movss dword [rsp + 0x70], xmm0
movss dword [rsp + 0x74], xmm1
movd xmm1, edi
movd xmm0, ebx
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x7c], xmm1
movss dword [rsp + 0x78], xmm0
call fcn.1400030e0
mov r9d, eax
mov dword [rsp + 0x28], r13d
lea rdx, [rsp + 0x78]
movss dword [rsp + 0x20], xmm10
lea r8, [rsp + 0x70]
mov rcx, r10
call fcn.140025630
cmp byte [0x14004a860], r13b
movsd xmm9, qword [rbp - 0x50]
je 0x140039c61
mov rcx, qword [0x14004a8d8]
add rcx, 0x150
call fcn.14003b350
lea rcx, [r15 + 0x30c]
movaps xmm6, xmm0
call fcn.14003b400
mov rax, qword [0x14004a750]
lea r8, str.Foreground
xorps xmm1, xmm1
mov edx, 1
cvtss2sd xmm1, xmm0
mov rcx, qword [rax + 0x48b0]
mov rcx, qword [rcx]
subsd xmm6, xmm1
comisd xmm15, xmm6
jb 0x140039bee
movdqa xmmword [rbp + 0x20], xmm14
call fcn.140006700
cvtpd2ps xmm0, xmm9
lea rcx, [rbp + 0x20]
mov r10, rax
cvtpd2ps xmm1, xmm12
movss dword [rbp - 0x80], xmm0
movd xmm0, dword [0x14004a8f8]
movss dword [rbp - 0x7c], xmm1
movd xmm1, dword [0x14004a928]
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
movss dword [rbp - 0x78], xmm0
movss dword [rbp - 0x74], xmm1
call fcn.1400030e0
lea rdx, [rbp - 0x78]
lea r8, [rbp - 0x80]
jmp 0x140039c48
movdqa xmm0, xmmword [0x140043960]
movdqa xmmword [rbp + 0x20], xmm0
call fcn.140006700
cvtpd2ps xmm0, xmm9
lea rcx, [rbp + 0x20]
mov r10, rax
cvtpd2ps xmm1, xmm12
movss dword [rbp - 0x70], xmm0
movd xmm0, dword [0x14004a8f8]
movss dword [rbp - 0x6c], xmm1
movd xmm1, dword [0x14004a928]
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
movss dword [rbp - 0x68], xmm0
movss dword [rbp - 0x64], xmm1
call fcn.1400030e0
lea rdx, [rbp - 0x68]
lea r8, [rbp - 0x70]
movss xmm0, dword [0x1400435e8]
mov r9d, eax
mov rcx, r10
movss dword [rsp + 0x20], xmm0
call fcn.1400253c0
cmp byte [0x14004a863], r13b
je 0x140039dd9
cvtps2pd xmm2, xmm13
lea rdx, str._.fm
lea rcx, [rbp + 0x40]
movdqa xmmword [rbp + 0x20], xmm14
movq r8, xmm2
call fcn.14003b5a0
mov rbx, qword [0x14004a750]
lea rax, [rbp + 0x40]
movss xmm0, dword [0x140043728]
lea rdx, [rsp + 0x58]
movss xmm3, dword [0x14004371c]
mov qword [rsp + 0x30], r13
movss xmm2, dword [rbx + 0x3c10]
mov rcx, qword [rbx + 0x3c08]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
call fcn.1400290f0
movss xmm0, dword [rsp + 0x58]
lea r8, str.Foreground
addss xmm0, dword [0x140043634]
mov edx, 1
cvttss2si eax, xmm0
movd xmm6, eax
mov rax, qword [rbx + 0x48b0]
cvtdq2ps xmm6, xmm6
mov rcx, qword [rax]
movss dword [rsp + 0x58], xmm6
call fcn.140006700
lea rcx, [rbp + 0x20]
mov r8, rax
call fcn.1400030e0
movss xmm13, dword [0x140043608]
mov r9d, eax
movss xmm1, dword [rsp + 0x5c]
mulss xmm6, xmm13
mulss xmm1, xmm13
cvtps2pd xmm0, xmm6
subsd xmm9, xmm0
cvtpd2ps xmm0, xmm9
movss dword [rsp + 0x50], xmm0
cvtps2pd xmm0, xmm1
subsd xmm12, xmm0
cvtpd2ps xmm0, xmm12
movss dword [rsp + 0x54], xmm0
test eax, 0xff000000
je 0x140039de2
lea rcx, [rbp + 0x40]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], r13b
jne 0x140039d70
lea rcx, [rbp + 0x40]
add rcx, rax
lea rax, [rbp + 0x40]
cmp rax, rcx
je 0x140039de2
mov rax, qword [r8 + 0x38]
mov rdx, r8
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], r13b
movss dword [rsp + 0x40], xmm10
movss xmm2, dword [rax + 0x10]
mov qword [rsp + 0x38], rcx
lea rcx, [rbp + 0x40]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x20]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rax + 8]
mov dword [rsp + 0x20], r9d
lea r9, [rsp + 0x50]
movups xmmword [rbp + 0x20], xmm0
call fcn.140029310
jmp 0x140039de2
movss xmm13, dword [0x140043608]
xorps xmm1, xmm1
xorps xmm0, xmm0
cvtsi2sd xmm1, dword [0x14004a914]
cvtsi2sd xmm0, dword [0x14004a8f8]
subsd xmm8, xmm1
xorps xmm1, xmm1
subsd xmm7, xmm0
xorps xmm0, xmm0
mulsd xmm8, xmm8
mulsd xmm7, xmm7
addsd xmm8, xmm7
cvtsd2ss xmm1, xmm8
ucomiss xmm0, xmm1
ja 0x140039e28
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x140039e30
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [0x14004a0b8]
comiss xmm1, xmm0
jb 0x140039e59
movss xmm1, dword [0x14004a8c0]
comiss xmm1, xmm0
jbe 0x140039e59
movss dword [0x14004a8c0], xmm0
mov qword [0x14004a878], r15
inc r12d
cmp r12d, dword [0x14004a890]
jl 0x1400396f0
movaps xmm15, xmmword [rsp + 0x2d0]
movaps xmm14, xmmword [rsp + 0x2e0]
movaps xmm13, xmmword [rsp + 0x2f0]
movaps xmm12, xmmword [rsp + 0x300]
movaps xmm11, xmmword [rsp + 0x310]
movaps xmm10, xmmword [rsp + 0x320]
movaps xmm9, xmmword [rsp + 0x330]
movaps xmm8, xmmword [rsp + 0x340]
movaps xmm7, xmmword [rsp + 0x350]
mov r15, qword [rsp + 0x370]
mov r14, qword [rsp + 0x378]
mov rdi, qword [rsp + 0x3b0]
mov rsi, qword [rsp + 0x3a8]
cmp byte [0x14004a85d], r13b
mov r12, qword [rsp + 0x380]
je 0x140039f00
mov ecx, dword [0x14004a0c4]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140039f00
call fcn.140038bc0
cmp byte [0x14004a0bc], r13b
movss xmm6, dword [0x1400436dc]
je 0x140039fbf
mov rax, qword [0x14004a750]
lea r8, str.Foreground
movdqa xmm0, xmmword [0x140043ad0]
mov edx, 1
mov dword [rsp + 0x50], 0x41f00000
mov dword [rsp + 0x54], 0x41f00000
mov rcx, qword [rax + 0x48b0]
movups xmmword [rbp + 0x20], xmm0
mov rcx, qword [rcx]
call fcn.140006700
lea rcx, [rbp + 0x20]
mov r8, rax
call fcn.1400030e0
test eax, 0xff000000
je 0x140039fbf
mov rdx, qword [r8 + 0x38]
lea r9, [0x14004333b]
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], r13b
mov rcx, qword [rdx + 8]
movss xmm2, dword [rdx + 0x10]
mov rdx, r8
movups xmmword [rbp + 0x20], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
mov qword [rsp + 0x38], r9
lea r9, [0x140043320]
mov qword [rsp + 0x30], r9
lea r9, [rbp + 0x20]
mov qword [rsp + 0x28], r9
lea r9, [rsp + 0x50]
mov dword [rsp + 0x20], eax
call fcn.140029310
cmp byte [0x14004a85e], r13b
je 0x14003a17d
mov rax, qword gs:[0x58]
mov edx, 4
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14004a870], eax
jle 0x14003a015
lea rcx, [0x14004a870]
call fcn.14003b9f8
cmp dword [0x14004a870], 0xffffffff
jne 0x14003a015
lea rcx, [0x14004a8e0]
call fcn.140039400
lea rcx, [0x14004a870]
call fcn.14003b98c
lea rcx, [rsp + 0x50]
call fcn.140039400
mov rax, qword [rsp + 0x50]
xorps xmm1, xmm1
mov rcx, rax
sub rcx, qword [0x14004a8e0]
mov qword [0x14004a8e0], rax
mov eax, dword [0x14004a850]
inc eax
cvtsi2ss xmm1, rcx
mov dword [0x14004a850], eax
divss xmm1, dword [0x140043718]
comiss xmm1, dword [0x14004363c]
jb 0x14003a078
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov dword [0x14004a850], r13d
divss xmm0, xmm1
movss dword [0x14004a854], xmm0
jmp 0x14003a080
movss xmm0, dword [0x14004a854]
cvtps2pd xmm3, xmm0
lea r8, str.FPS:__.2f
mov edx, 0x40
lea rcx, [rbp + 0x80]
movq r9, xmm3
call fcn.1400378c0
lea rax, [rbp + 0x80]
mov edx, 0x100
lea r9, str._Status:_detected_____skidder:_sykkov_
mov qword [rsp + 0x20], rax
lea r8, str._s___s
lea rcx, [rbp + 0xc0]
call fcn.1400378c0
mov rbx, qword [0x14004a750]
lea rax, [rbp + 0xc0]
movss xmm0, dword [0x140043728]
lea rdx, [rsp + 0x50]
movss xmm3, dword [0x14004371c]
mov qword [rsp + 0x30], r13
movss xmm2, dword [rbx + 0x3c10]
mov rcx, qword [rbx + 0x3c08]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm0
call fcn.1400290f0
mov rax, qword [rbx + 0x3ed8]
lea rdx, [rbp + 0xc0]
movss xmm0, dword [rsp + 0x54]
lea rcx, [0x14003e4f8]
addss xmm0, xmm6
mov byte [rax + 0xb8], 1
mov rax, qword [rbx + 0x3ed8]
movss xmm2, dword [rax + 0x20]
movss xmm1, dword [rax + 0x24]
subss xmm2, dword [rax + 0x84]
subss xmm1, dword [rax + 0x88]
mov byte [rax + 0x141], 1
addss xmm2, xmm6
addss xmm1, xmm0
movss dword [rax + 0x100], xmm2
movss dword [rax + 0x104], xmm1
call fcn.14002d7d0
mov rbx, qword [rsp + 0x3a0]
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.14003b6b0
movaps xmm6, xmmword [rsp + 0x360]
add rsp, 0x388
pop r13
pop rbp
ret