Function at 0x18007bd00
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
push rbp
push rdi
push r13
push r14
push r15
lea rbp, [rax - 0x38]
sub rsp, 0x110
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm10
mov rax, qword [0x1801300c0]
xor rax, rsp
mov qword [rbp - 0x30], rax
mov r14, rdx
mov r15, rcx
lock inc dword [rcx + 0x10]
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x18007bd9d
cmp byte [0x18022f914], 0
je 0x18007c427
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov ecx, dword [0x18022f910]
cmp rcx, rax
ja 0x18007c427
xor r9d, r9d
mov edx, 0x205
mov r8d, 2
mov rcx, qword [0x18022bd40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov byte [0x18022f914], 0
jmp 0x18007c427
cmp byte [r15 + 0xc], 0
je 0x18007bd54
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x70], xmm1
movdqu xmmword [rbp - 0x80], xmm0
lea rdx, [rsp + 0x60]
mov rcx, r14
call fcn.1800af350
mov esi, 0xffffffff
test al, al
jne 0x18007be19
cmp byte [0x18022f914], al
je 0x18007c37e
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov ecx, dword [0x18022f910]
cmp rcx, rax
ja 0x18007c37e
xor r9d, r9d
mov edx, 0x205
mov r8d, 2
mov rcx, qword [0x18022bd40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov byte [0x18022f914], 0
jmp 0x18007c37e
mov r8, r14
lea rdx, [rbp - 0x40]
mov rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.1800b11e0
nop
mov r8, r14
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.1800b1070
nop
mov r8, r14
lea rdx, [rbp - 0x60]
mov rcx, rbx
call fcn.1800b0f00
nop
mov r8, r14
lea rdx, [rbp - 0x70]
mov rcx, qword [rsp + 0x70]
call fcn.1800abec0
nop
mov rdx, r14
mov rcx, qword [rbp - 0x70]
call fcn.1800a3dd0
test al, al
je 0x18007c262
cmp qword [r15 + 0x18], 0
je 0x18007c262
mov eax, dword [r15 + 0x10]
cmp eax, 1
jne 0x18007c259
mov r13, qword [rsp + 0x70]
movsd xmm10, qword [0x180114308]
xorps xmm8, xmm8
cmp dword [0x180227d34], 0
jne 0x18007bff9
mov r8, r14
lea rdx, [rsp + 0x30]
mov rcx, qword [r15 + 0x18]
call fcn.1800ac400
mov rdi, rax
mov r8, r14
lea rdx, [rsp + 0x48]
mov rcx, r13
call fcn.1800ac400
mov rbx, rax
movsd xmm0, qword [rdi + 8]
subsd xmm0, qword [rax + 8]
movaps xmm1, xmm10
call fcn.1800ed8f0
movaps xmm6, xmm0
movsd xmm0, qword [rdi]
subsd xmm0, qword [rbx]
movaps xmm1, xmm10
call fcn.1800ed8f0
addsd xmm6, xmm0
movsd xmm0, qword [rdi + 0x10]
subsd xmm0, qword [rbx + 0x10]
movaps xmm1, xmm10
call fcn.1800ed8f0
addsd xmm6, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x18007bf29
sqrtss xmm0, xmm0
jmp 0x18007bf2e
call fcn.1800f0ac8
cvtss2sd xmm0, xmm0
mov dword [rsp + 0x28], 0x3f800000
mov dword [rsp + 0x20], 0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
divss xmm1, dword [0x180114354]
movss dword [rsp + 0x24], xmm1
lea rcx, [rsp + 0x20]
lea rax, [rsp + 0x24]
comiss xmm8, xmm1
cmovbe rcx, rax
lea rax, [rsp + 0x28]
comiss xmm1, dword [0x180114250]
cmovbe rax, rcx
movss xmm6, dword [0x180227d08]
subss xmm6, dword [0x180227c20]
mulss xmm6, dword [rax]
addss xmm6, dword [0x180227c20]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rcx, rax
xorps xmm0, xmm0
test rax, rax
js 0x18007bfad
cvtsi2ss xmm0, rax
jmp 0x18007bfbf
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
addss xmm0, xmm6
cvttss2si rax, xmm0
cmp byte [0x18022f914], 0
jne 0x18007bff9
mov dword [0x18022f910], eax
xor r9d, r9d
mov edx, 0x204
mov r8d, 2
mov rcx, qword [0x18022bd40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov byte [0x18022f914], 1
cmp dword [0x180227d34], 1
jne 0x18007c259
mov rdi, qword [r15 + 0x18]
mov rax, qword [r14]
mov r9, qword [rax + 0xc0]
xor r8d, r8d
mov rdx, qword [rdi + 8]
mov rcx, r14
call r9
xor ebx, ebx
test al, al
je 0x18007c02b
mov edi, ebx
jmp 0x18007c047
lea r9, str.entityId
mov r8, qword [rdi + 8]
mov rdx, r14
mov rcx, qword [0x180227e90]
call fcn.1800b5820
mov edi, eax
mov rcx, qword [r14]
mov r9, qword [rcx + 0xc0]
xor r8d, r8d
mov rdx, qword [r13 + 8]
mov rcx, r14
call r9
test al, al
jne 0x18007c07e
lea r9, str.entityId
mov r8, qword [r13 + 8]
mov rdx, r14
mov rcx, qword [0x180227e90]
call fcn.1800b5820
mov ebx, eax
cmp edi, ebx
jne 0x18007c10b
movss xmm6, dword [0x180227d08]
subss xmm6, dword [0x180227c20]
addss xmm6, dword [0x180227c20]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rcx, rax
xorps xmm0, xmm0
test rax, rax
js 0x18007c0b6
cvtsi2ss xmm0, rax
jmp 0x18007c0c8
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
addss xmm0, xmm6
cvttss2si rax, xmm0
cmp byte [0x18022f914], 0
jne 0x18007c29e
mov dword [0x18022f910], eax
xor r9d, r9d
mov edx, 0x204
mov r8d, 2
mov rcx, qword [0x18022bd40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov byte [0x18022f914], 1
jmp 0x18007c29e
mov r8, r14
lea rdx, [rsp + 0x48]
mov rcx, qword [r15 + 0x18]
call fcn.1800ac400
mov rdi, rax
mov r8, r14
lea rdx, [rsp + 0x30]
mov rcx, r13
call fcn.1800ac400
mov rbx, rax
movsd xmm0, qword [rdi + 8]
subsd xmm0, qword [rax + 8]
movaps xmm1, xmm10
call fcn.1800ed8f0
movaps xmm6, xmm0
movsd xmm0, qword [rdi]
subsd xmm0, qword [rbx]
movaps xmm1, xmm10
call fcn.1800ed8f0
addsd xmm6, xmm0
movsd xmm0, qword [rdi + 0x10]
subsd xmm0, qword [rbx + 0x10]
movaps xmm1, xmm10
call fcn.1800ed8f0
addsd xmm6, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x18007c189
sqrtss xmm0, xmm0
jmp 0x18007c18e
call fcn.1800f0ac8
cvtss2sd xmm0, xmm0
mov dword [rsp + 0x20], 0x3f800000
mov dword [rsp + 0x28], 0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
divss xmm1, dword [0x180114354]
movss dword [rsp + 0x24], xmm1
lea rcx, [rsp + 0x28]
lea rax, [rsp + 0x24]
comiss xmm8, xmm1
cmovbe rcx, rax
lea rax, [rsp + 0x20]
comiss xmm1, dword [0x180114250]
cmovbe rax, rcx
movss xmm6, dword [0x180227d08]
subss xmm6, dword [0x180227c20]
mulss xmm6, dword [rax]
addss xmm6, dword [0x180227c20]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rcx, rax
xorps xmm0, xmm0
test rax, rax
js 0x18007c20d
cvtsi2ss xmm0, rax
jmp 0x18007c21f
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
addss xmm0, xmm6
cvttss2si rax, xmm0
cmp byte [0x18022f914], 0
jne 0x18007c259
mov dword [0x18022f910], eax
xor r9d, r9d
mov edx, 0x204
mov r8d, 2
mov rcx, qword [0x18022bd40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov byte [0x18022f914], 1
mov eax, dword [r15 + 0x10]
cmp eax, 1
jle 0x18007c29e
cmp byte [0x18022f914], 0
je 0x18007c29e
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov ecx, dword [0x18022f910]
cmp rcx, rax
ja 0x18007c29e
xor r9d, r9d
mov r8d, 2
mov edx, 0x205
mov rcx, qword [0x18022bd40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov byte [0x18022f914], 0
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x18007c2d6
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18007c2d6
mov rbx, qword [rbp - 0x68]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18007c2d6
mov rcx, qword [rbp - 0x68]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp - 0x58]
test rcx, rcx
je 0x18007c30e
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18007c30e
mov rbx, qword [rbp - 0x58]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18007c30e
mov rcx, qword [rbp - 0x58]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x18007c346
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18007c346
mov rbx, qword [rbp - 0x48]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18007c346
mov rcx, qword [rbp - 0x48]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x18007c37e
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18007c37e
mov rbx, qword [rbp - 0x38]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18007c37e
mov rcx, qword [rbp - 0x38]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x18007c3b5
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18007c3b5
mov rbx, qword [rbp - 0x78]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18007c3b5
mov rcx, qword [rbp - 0x78]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x18007c3ef
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18007c3ef
mov rbx, qword [rsp + 0x78]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18007c3ef
mov rcx, qword [rsp + 0x78]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x18007c427
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18007c427
mov rbx, qword [rsp + 0x68]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], esi
cmp esi, 1
jne 0x18007c427
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rbp - 0x30]
xor rcx, rsp
call fcn.1800c0060
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm8, xmmword [r11 - 0x20]
movaps xmm10, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rbp
ret