Function at 0x140001050
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
push rbp
lea rbp, [r11 - 0x78]
sub rsp, 0x170
mov rax, qword [0x140070040]
xor rax, rsp
mov qword [rbp - 8], rax
cmp byte [0x14009c28a], 0
je 0x140001977
mov qword [r11 + 8], rbx
xor ecx, ecx
mov qword [r11 - 0x18], r13
mov qword [r11 - 0x20], r14
mov qword [r11 - 0x28], r15
movaps xmmword [r11 - 0x58], xmm8
movaps xmmword [r11 - 0x68], xmm9
movaps xmmword [r11 - 0x78], xmm10
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movss xmm10, dword [0x140066b68]
mov ecx, 1
movd xmm8, eax
cvtdq2ps xmm8, xmm8
mulss xmm8, xmm10
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov rbx, qword [0x14009c2a0]
lea r8, [rbp - 0x80]
mov rcx, qword [0x14009c3b8]
xor r13d, r13d
mov qword [rsp + 0x38], r13
mov r9d, 0x20
movd xmm9, eax
mov edx, 0x220014
lea rax, [rbx + 0x17c17f0]
mov qword [rsp + 0x30], r13
mov qword [rbp - 0x78], rax
lea r14, [rbx + 0x19b64f0]
lea rax, [rsp + 0x68]
mov dword [rsp + 0x28], r13d
cvtdq2ps xmm9, xmm9
mov qword [rbp - 0x70], rax
mov eax, dword [rcx + 8]
mov rcx, qword [rcx]
mov qword [rsp + 0x68], r13
mov dword [rbp - 0x80], 0x5881311
mulss xmm9, xmm10
mov qword [rbp - 0x68], 8
mov dword [rbp - 0x7c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
lea r8, [rbp - 0x80]
mov r15, qword [rsp + 0x68]
mov r9d, 0x20
mov qword [rsp + 0x38], r13
mov edx, 0x220014
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
lea rax, [r15 + 0x3c3]
mov dword [rsp + 0x40], r13d
mov qword [rbp - 0x78], rax
lea rax, [rsp + 0x40]
mov qword [rbp - 0x70], rax
mov eax, dword [rcx + 8]
mov rcx, qword [rcx]
mov dword [rbp - 0x80], 0x5881311
mov qword [rbp - 0x68], 4
mov dword [rbp - 0x7c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
lea rax, [rbx + 0x1954568]
mov qword [rbp - 0x78], rax
lea r8, [rbp - 0x80]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x38], r13
mov qword [rbp - 0x70], rax
mov r9d, 0x20
mov eax, dword [rcx + 8]
mov edx, 0x220014
mov rcx, qword [rcx]
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x68], r13
mov dword [rbp - 0x80], 0x5881311
mov qword [rbp - 0x68], 8
mov dword [rbp - 0x7c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
mov dword [rbp - 0x60], r13d
mov qword [rsp + 0x38], r13
lea rax, [r15 + 0x324]
mov qword [rbp - 0x20], rax
lea r8, [rbp - 0x28]
lea rax, [rbp - 0x60]
mov qword [rsp + 0x30], r13
mov qword [rbp - 0x18], rax
mov r9d, 0x20
mov eax, dword [rcx + 8]
mov edx, 0x220014
mov rcx, qword [rcx]
mov dword [rsp + 0x28], r13d
mov dword [rbp - 0x28], 0x5881311
mov qword [rbp - 0x10], 4
mov dword [rbp - 0x24], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov eax, dword [rbp - 0x60]
dec eax
cmp eax, 0x63
ja 0x14000193c
mov qword [rsp + 0x188], rsi
mov esi, dword [rsp + 0x40]
mov qword [rsp + 0x190], rdi
mov edi, 1
mov qword [rsp + 0x168], r12
mov r12, qword [rsp + 0x68]
movaps xmmword [rsp + 0x140], xmm6
movaps xmmword [rsp + 0x130], xmm7
nop dword [rax]
mov rcx, qword [0x14009c3b8]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], r13
lea r8, [rsp + 0x48]
mov edx, edi
mov qword [rsp + 0x58], rax
and edx, 0x7fff
mov qword [rsp + 0x30], r13
mov eax, dword [rcx + 8]
mov r9d, 0x20
mov rcx, qword [rcx]
shl edx, 3
sar edx, 9
add rdx, 0x10
mov dword [rsp + 0x28], r13d
add rdx, r12
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x50], rdx
mov edx, 0x220014
mov dword [rsp + 0x48], 0x5881311
mov qword [rsp + 0x60], 8
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
lea r8, [rsp + 0x48]
mov qword [rsp + 0x38], r13
mov eax, edi
and eax, 0x1ff
mov qword [rsp + 0x30], r13
imul edx, eax, 0x78
mov r9d, 0x20
lea rax, [rsp + 0x78]
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x58], rax
mov eax, dword [rcx + 8]
mov rcx, qword [rcx]
add rdx, qword [rsp + 0x70]
mov qword [rsp + 0x50], rdx
mov edx, 0x220014
mov qword [rsp + 0x78], r13
mov dword [rsp + 0x48], 0x5881311
mov qword [rsp + 0x60], 8
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
lea r8, [rsp + 0x48]
mov rax, qword [rsp + 0x78]
mov r9d, 0x20
add rax, 0x7ec
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x50], rax
mov edx, 0x220014
lea rax, [rsp + 0x40]
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x58], rax
mov eax, dword [rcx + 8]
mov rcx, qword [rcx]
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x40], r13d
mov dword [rsp + 0x48], 0x5881311
mov qword [rsp + 0x60], 4
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov ebx, dword [rsp + 0x40]
lea rax, [rsp + 0x78]
mov rcx, qword [0x14009c3b8]
mov edx, ebx
shr edx, 9
and edx, 0x3f
mov qword [rsp + 0x58], rax
shl edx, 3
mov eax, dword [rcx + 8]
add rdx, 0x10
add rdx, r12
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x50], rdx
mov dword [rsp + 0x48], 0x5881311
mov qword [rsp + 0x60], 8
mov rcx, qword [rcx]
lea r8, [rsp + 0x48]
mov qword [rsp + 0x38], r13
mov r9d, 0x20
mov qword [rsp + 0x30], r13
mov edx, 0x220014
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
mov dword [rsp + 0x4c], eax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], r13
lea r8, [rsp + 0x48]
mov qword [rsp + 0x58], rax
and ebx, 0x1ff
mov qword [rsp + 0x30], r13
mov r9d, 0x20
mov eax, dword [rcx + 8]
mov rcx, qword [rcx]
imul edx, ebx, 0x78
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x70], r13
mov dword [rsp + 0x48], 0x5881311
mov qword [rsp + 0x60], 8
add rdx, qword [rsp + 0x78]
mov qword [rsp + 0x50], rdx
mov edx, 0x220014
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
lea r8, [rsp + 0x48]
mov rbx, qword [rsp + 0x70]
mov r9d, 0x20
mov qword [rsp + 0x38], r13
mov edx, 0x220014
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
lea rax, [rbx + 0x3c3]
mov dword [rsp + 0x40], r13d
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x58], rax
mov eax, dword [rcx + 8]
mov rcx, qword [rcx]
mov dword [rsp + 0x48], 0x5881311
mov qword [rsp + 0x60], 4
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
lea rax, [rbx + 0x324]
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x48]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x58], rax
mov r9d, 0x20
mov eax, dword [rcx + 8]
mov edx, 0x220014
mov rcx, qword [rcx]
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x70], r13d
mov dword [rsp + 0x48], 0x5881311
mov qword [rsp + 0x60], 4
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
lea rax, [rbx + 0x2290]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x44]
mov qword [rsp + 0x58], rax
mov byte [rsp + 0x44], r13b
mov eax, dword [rcx + 8]
mov dword [rsp + 0x4c], eax
mov dword [rsp + 0x48], 0x5881311
mov qword [rsp + 0x60], 1
mov qword [rsp + 0x38], r13
mov rcx, qword [rcx]
lea r8, [rsp + 0x48]
mov qword [rsp + 0x30], r13
mov r9d, 0x20
mov dword [rsp + 0x28], r13d
mov edx, 0x220014
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
lea rax, [rbx + 0x308]
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x48]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x58], rax
mov r9d, 0x20
mov eax, dword [rcx + 8]
mov edx, 0x220014
mov rcx, qword [rcx]
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x78], r13
mov dword [rsp + 0x48], 0x5881311
mov qword [rsp + 0x60], 8
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x14009c3b8]
lea r8, [rsp + 0x48]
mov rax, qword [rsp + 0x78]
mov r9d, 0x20
add rax, 0x1f0
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x50], rax
mov edx, 0x220014
lea rax, [rbp - 0x58]
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x58], rax
mov eax, dword [rcx + 8]
mov rcx, qword [rcx]
mov dword [rsp + 0x28], r13d
mov qword [rbp - 0x58], r13
mov dword [rsp + 0x48], 0x5881311
mov qword [rsp + 0x60], 8
mov dword [rsp + 0x4c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp rbx, r15
je 0x1400017ec
cmp dword [rsp + 0x40], esi
jne 0x140001709
cmp byte [0x1400700d9], r13b
jne 0x1400017ec
mov eax, dword [rsp + 0x70]
test eax, eax
je 0x1400017ec
cmp eax, 0x64
ja 0x1400017ec
mov rcx, qword [0x14009c3b8]
lea r8, [rbp - 0x50]
mov rax, qword [rbp - 0x58]
mov r9d, 0x20
add rax, 0xc0
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x48], rax
mov edx, 0x220014
lea rax, [rbp - 0x80]
mov dword [rbp - 0x78], r13d
mov qword [rsp + 0x38], r13
mov qword [rbp - 0x40], rax
mov eax, dword [rcx + 8]
mov rcx, qword [rcx]
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov dword [rbp - 0x50], 0x5881311
mov qword [rbp - 0x38], 0xc
mov dword [rbp - 0x4c], eax
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov r8, r14
mov qword [rsp + 0x68], r13
lea rdx, [rsp + 0x68]
lea rcx, [rbp - 0x80]
call fcn.140048300
test al, al
je 0x1400017ec
movss xmm6, dword [rsp + 0x68]
movss xmm7, dword [rsp + 0x6c]
subss xmm6, xmm8
subss xmm7, xmm9
movaps xmm0, xmm6
mulss xmm0, xmm6
movaps xmm1, xmm7
mulss xmm1, xmm7
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1400017d7
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400017df
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [0x1400700c4]
comiss xmm1, xmm0
jae 0x1400017f9
inc edi
cmp edi, 0x40
jl 0x1400012b0
jmp 0x14000185b
mov ecx, 6
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x14000185b
movss xmm1, dword [0x1400700c0]
lea rdx, [rbp - 0x50]
divss xmm1, dword [0x140066c14]
mov qword [rbp - 0x50], r13
mov r8d, 0x28
mov dword [rbp - 0x40], r13d
mov ecx, 1
mov dword [rbp - 0x3c], 1
xorps xmm0, xmm0
mulss xmm6, xmm1
mulss xmm7, xmm1
cvttss2si eax, xmm6
movdqu xmmword [rbp - 0x38], xmm0
mov dword [rbp - 0x48], eax
cvttss2si eax, xmm7
mov dword [rbp - 0x44], eax
call qword [sym.imp.USER32.dll_SendInput]
cmp byte [0x1400700d8], r13b
movaps xmm7, xmmword [rsp + 0x130]
movaps xmm6, xmmword [rsp + 0x140]
mov r12, qword [rsp + 0x168]
mov rsi, qword [rsp + 0x188]
je 0x140001934
mov rax, qword [0x14009c290]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax + 0x4ad0]
mov rcx, qword [rcx]
call fcn.140008b60
movups xmm0, xmmword [0x1400700c8]
lea rcx, [rbp - 0x80]
mov rbx, rax
movups xmmword [rbp - 0x80], xmm0
call fcn.140004b70
movss dword [rbp - 0x58], xmm8
mov edi, eax
movss dword [rbp - 0x54], xmm9
test eax, 0xff000000
je 0x140001934
movss xmm2, dword [0x1400700c4]
comiss xmm10, xmm2
ja 0x140001934
subss xmm2, xmm10
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
lea rdx, [rbp - 0x58]
mov rcx, rbx
call fcn.140028640
mov r8d, dword [rbx + 0x78]
mov r9d, edi
movss xmm0, dword [0x140066bc4]
dec r8d
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
movss dword [rsp + 0x28], xmm0
mov dword [rbx + 0x78], r8d
mov dword [rsp + 0x20], 1
call fcn.140027190
mov dword [rbx + 0x78], r13d
mov rdi, qword [rsp + 0x190]
movaps xmm8, xmmword [rsp + 0x120]
mov r15, qword [rsp + 0x150]
mov r14, qword [rsp + 0x158]
mov r13, qword [rsp + 0x160]
movaps xmm9, xmmword [rsp + 0x110]
mov rbx, qword [rsp + 0x180]
movaps xmm10, xmmword [rsp + 0x100]
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.14005cc40
add rsp, 0x170
pop rbp
ret