Function at 0x180085790
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0x90
mov rax, qword [0x1800ea010]
xor rax, rsp
mov qword [rbp + 0x3f], rax
mov r15, rcx
xor r12d, r12d
mov edx, dword [0x1800eb32c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov eax, dword [rcx + rax]
cmp dword [0x1800ecf48], eax
jle 0x18008582d
lea rcx, [0x1800ecf48]
call fcn.18008f99c
cmp dword [0x1800ecf48], 0xffffffff
jne 0x18008582d
mov eax, 0x3e8
cdq
idiv dword [r15 + 0x10]
movsxd rdx, eax
mov qword [0x1800ecf50], r12
lea rcx, [0x1800ecf50]
call fcn.18008f880
lea rcx, [0x1800ecf48]
call fcn.18008f930
cmp byte [r15 + 8], r12b
je 0x180085c89
cmp byte [0x1800eb709], r12b
jne 0x180085c89
mov ecx, 1
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x180085c89
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x180085876
imul rcx, rax, 0x64
jmp 0x180085891
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rcx, rax
mov rdx, rcx
sub rdx, qword [0x1800ecf50]
movabs rax, 0x431bde82d7b634db
imul rdx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, qword [0x1800ecf58]
je 0x1800858d8
mov r8d, 1
mov r9d, 0xff
cmovl r8d, r9d
test r8b, r8b
js 0x180085c89
mov qword [0x1800ecf50], rcx
mov rdi, qword [0x1800ebad8]
mov rbx, qword [rdi]
cmp qword [rdi + 8], r12
jne 0x1800858fc
mov qword [rbp + 0x37], r12
mov qword [rbp + 0x2f], rbx
jmp 0x1800859ec
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x19], xmm1
mov r8d, 0xf
lea rdx, str.objectMouseOver
lea rcx, [rbp - 0x29]
call fcn.1800634a0
nop
lea rdx, [rbp - 0x29]
lea rcx, [0x1800eb978]
call fcn.18006cda0
mov rcx, qword [rbx]
mov r9, qword [rcx + 0x2f8]
mov r8, rax
mov rdx, qword [rdi + 8]
mov rcx, rbx
call r9
mov rdi, rax
test rax, rax
je 0x180085995
mov rcx, qword [rbx]
mov r8, qword [rcx + 0xa8]
mov rdx, rax
mov rcx, rbx
call r8
mov qword [rbp + 0x37], rax
mov rcx, qword [rbx]
mov r8, qword [rcx + 0x740]
mov rdx, rdi
mov rcx, rbx
call r8
cmp eax, 1
jne 0x180085999
mov rax, qword [rbx]
mov r8, qword [rax + 0xb8]
mov rdx, rdi
mov rcx, rbx
call r8
jmp 0x180085999
mov qword [rbp + 0x37], r12
mov qword [rbp + 0x2f], rbx
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x1800859db
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800859d6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800859d6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18008ffe0
movdqa xmm0, xmmword [0x1800db170]
movdqu xmmword [rbp - 0x19], xmm0
mov byte [rbp - 0x29], 0
lea rdx, [rbp - 9]
lea rcx, [rbp + 0x2f]
call fcn.1800667d0
mov r14, rax
mov rdi, qword [0x1800eb6e8]
xorps xmm0, xmm0
movups xmmword [rbp + 7], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x17], xmm1
mov r8d, 5
lea rdx, str.BLOCK
lea rcx, [rbp + 7]
call fcn.1800634a0
nop
lea rdx, [rbp + 7]
lea rcx, [0x1800ebab8]
call fcn.18006cda0
mov rbx, rax
mov rdx, qword [0x1800eb6e8]
lea rcx, [0x1800ebab8]
call fcn.18006cca0
mov rcx, qword [rdi]
mov r9, qword [rcx + 0x488]
mov r8, rbx
mov rdx, qword [rax]
mov rcx, rdi
call r9
mov rsi, rax
test rax, rax
je 0x180085ab4
mov rcx, qword [rdi]
mov r8, qword [rcx + 0xa8]
mov rdx, rax
mov rcx, rdi
call r8
mov rbx, rax
mov qword [rbp - 0x21], rax
mov rcx, qword [rdi]
mov r8, qword [rcx + 0x740]
mov rdx, rsi
mov rcx, rdi
call r8
cmp eax, 1
jne 0x180085abb
mov rcx, qword [rdi]
mov r8, qword [rcx + 0xb8]
mov rdx, rsi
mov rcx, rdi
call r8
jmp 0x180085abb
mov rbx, r12
mov qword [rbp - 0x21], rbx
mov qword [rbp - 0x29], rdi
mov rdx, qword [r14 + 8]
cmp rdx, rbx
jne 0x180085acd
mov sil, 1
jmp 0x180085af5
test rdx, rdx
je 0x180085af2
test rbx, rbx
je 0x180085af2
mov rcx, qword [r14]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
mov r8, rbx
call r9
cmp al, 1
sete sil
jmp 0x180085af5
xor sil, sil
cmp qword [0x1800eb6e8], 0
je 0x180085b18
test rbx, rbx
je 0x180085b18
mov rax, qword [rdi]
mov r8, qword [rax + 0xb0]
mov rdx, rbx
mov rcx, rdi
call r8
nop
mov rdx, qword [rbp + 0x1f]
cmp rdx, 0x10
jb 0x180085b56
inc rdx
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180085b51
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180085b51
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18008ffe0
movdqa xmm0, xmmword [0x1800db170]
movdqu xmmword [rbp + 0x17], xmm0
mov byte [rbp + 7], 0
cmp qword [0x1800eb6e8], 0
je 0x180085b8f
mov rdx, qword [rbp - 1]
test rdx, rdx
je 0x180085b8f
mov rcx, qword [rbp - 9]
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
mov qword [rbp - 1], r12
cmp qword [0x1800eb6e8], 0
je 0x180085bb4
mov rdx, qword [rbp + 0x37]
test rdx, rdx
je 0x180085bb4
mov rcx, qword [rbp + 0x2f]
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
nop
test sil, sil
jne 0x180085c89
mov qword [rbp + 0x27], r12
lea rcx, [rbp + 0x27]
call qword [sym.imp.USER32.dll_GetCursorPos]
movzx r9d, word [rbp + 0x2b]
shl r9d, 0x10
movzx eax, word [rbp + 0x27]
or r9, rax
mov edx, 0x201
mov r8d, 1
mov rcx, qword [0x1800eb700]
call qword [sym.imp.USER32.dll_SendMessageA]
movzx r9d, word [rbp + 0x2b]
shl r9d, 0x10
movzx ecx, word [rbp + 0x27]
or r9, rcx
mov edx, 0x202
mov r8d, 1
mov rcx, qword [0x1800eb700]
call qword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [r15 + 0x10]
mov dword [rbp + 0x2f], ecx
mov ecx, dword [r15 + 0x14]
mov dword [rbp + 0x33], ecx
lea rcx, [rbp + 0x2f]
call fcn.180083c20
mov ecx, eax
mov eax, 0x3e8
cdq
idiv ecx
movsxd rbx, eax
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x180085c5d
imul rax, rax, 0x64
jmp 0x180085c7b
cqo
idiv rdi
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
imul rcx, rcx, 0x3b9aca00
add rax, rcx
mov qword [0x1800ecf50], rax
mov qword [0x1800ecf58], rbx
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.18008f910
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret