Function at 0x180008180
Capabilities:
Log keystrokes via polling

Disassembly:
sub rsp, 0x68
cmp byte [0x1800cc105], 0
je 0x1800084a5
mov rax, qword [0x1800cc2f8]
lea rdx, [0x1800cab18]
mov rcx, qword [rax + 0x18]
mov rax, qword [0x1800cc248]
add rcx, qword [rax + 8]
call fcn.180008520
mov rcx, qword [0x1800cab18]
lea rdx, [0x1800cab24]
add rcx, 0x13b0
call fcn.1800085c0
mov r8d, dword [0x1800cab24]
cmp r8d, 0xffffffff
je 0x1800084a5
mov rax, qword [0x1800cc220]
mov edx, r8d
mov qword [rsp + 0x78], rbx
shr edx, 9
and edx, 0x3f
mov qword [rsp + 0x80], rsi
mov rbx, qword [rax + 0x108]
movabs rsi, 0x7ffd5d15ff558
add rbx, 0x10
shl edx, 3
mov qword [rsp + 0x60], rdi
add rbx, rdx
je 0x180008278
lea rax, [rbx - 0xaa70aa8]
cmp rax, rsi
ja 0x180008278
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x180008271
cmp dword [rsp + 0x50], 0x1000
jne 0x180008271
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x180008271
test al, 0x66
je 0x180008271
mov rax, qword [rsp + 0x30]
sub rax, rbx
add rax, qword [rsp + 0x48]
cmp rax, 8
jb 0x180008271
mov rbx, qword [rbx]
mov r8d, dword [0x1800cab24]
and r8d, 0x1ff
imul ecx, r8d, 0x78
add rbx, rcx
je 0x1800082dc
lea rax, [rbx - 0xaa70aa8]
cmp rax, rsi
ja 0x1800082dc
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x1800082dc
cmp dword [rsp + 0x50], 0x1000
jne 0x1800082dc
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x1800082dc
test al, 0x66
je 0x1800082dc
mov rax, qword [rsp + 0x30]
sub rax, rbx
add rax, qword [rsp + 0x48]
cmp rax, 8
jb 0x1800082dc
mov rbx, qword [rbx]
mov rax, qword [0x1800cc2f8]
mov edi, dword [rax + 0x38]
add rdi, rbx
je 0x180008340
lea rax, [rdi - 0xaa70aa8]
cmp rax, rsi
ja 0x180008340
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x180008340
cmp dword [rsp + 0x50], 0x1000
jne 0x180008340
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x180008340
test al, 0x66
je 0x180008340
mov rax, qword [rsp + 0x30]
sub rax, rdi
add rax, qword [rsp + 0x48]
cmp rax, 4
jb 0x180008340
mov edi, dword [rdi]
jmp 0x180008344
mov edi, dword [rsp + 0x70]
mov rax, qword [0x1800cc2f8]
mov ecx, dword [rax + 0x28]
add rbx, rcx
je 0x1800083a8
lea rax, [rbx - 0xaa70aa8]
cmp rax, rsi
ja 0x1800083a8
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x1800083a8
cmp dword [rsp + 0x50], 0x1000
jne 0x1800083a8
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x1800083a8
test al, 0x66
je 0x1800083a8
mov rax, qword [rsp + 0x30]
sub rax, rbx
add rax, qword [rsp + 0x48]
cmp rax, 4
jb 0x1800083a8
mov eax, dword [rbx]
jmp 0x1800083ac
mov eax, dword [rsp + 0x70]
cmp byte [0x180088a64], 0
mov rsi, qword [rsp + 0x80]
je 0x1800083c9
cmp dword [0x1800cab20], eax
je 0x18000849b
test edi, edi
jle 0x18000849b
mov rax, qword gs:[0x58]
mov ecx, dword [0x1800cb4f8]
mov r8d, 4
mov rdx, qword [rax + rcx*8]
mov eax, dword [r8 + rdx]
cmp dword [0x1800cc450], eax
jg 0x1800084c2
call fcn.18004455c
mov rbx, rax
call fcn.180044540
cmp rbx, 0x989680
jne 0x180008416
imul rbx, rax, 0x64
jmp 0x180008437
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
mov rbx, rax
imul rax, rcx, 0x3b9aca00
add rbx, rax
cvttss2si rcx, dword [0x180088a60]
mov rdx, rbx
sub rdx, qword [0x1800cc448]
imul rcx, rcx, 0xf4240
cmp rdx, rcx
jl 0x18000849b
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x180008494
xor edi, edi
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rdi
xor edx, edx
lea ecx, [rdi + 2]
call qword [sym.imp.USER32.dll_mouse_event]
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
lea ecx, [rdi + 4]
xor edx, edx
call qword [sym.imp.USER32.dll_mouse_event]
mov qword [0x1800cc448], rbx
mov rbx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x60]
add rsp, 0x68
ret
lea rcx, [0x1800cc450]
mov qword [0x1800cc448], rax
call fcn.180044f28
jmp 0x1800083fa
lea rcx, [0x1800cc450]
call fcn.180044f88
cmp dword [0x1800cc450], 0xffffffff
jne 0x1800083fa
call fcn.18004455c
mov rbx, rax
call fcn.180044540
cmp rbx, 0x989680
jne 0x1800084f7
imul rax, rax, 0x64
jmp 0x1800084aa
cqo
idiv rbx
mov r8, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rdx, r8, 0x3b9aca00
add rax, rdx
jmp 0x1800084aa