Function at 0x1800082e0
Capabilities:
Log keystrokes via polling

Disassembly:
sub rsp, 0x68
cmp byte [0x1800cd006], 0
je 0x1800085d5
mov rax, qword [0x1800cd200]
lea rdx, [0x1800cbb88]
mov rcx, qword [rax + 0x18]
mov rax, qword [0x1800cd150]
add rcx, qword [rax + 8]
call fcn.180008610
mov rcx, qword [0x1800cbb88]
lea rdx, [0x1800cbb94]
add rcx, 0x13b0
call fcn.1800086b0
mov r8d, dword [0x1800cbb94]
cmp r8d, 0xffffffff
je 0x1800085d5
mov rax, qword [0x1800cd128]
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 0x1800083d8
lea rax, [rbx - 0xaa70aa8]
cmp rax, rsi
ja 0x1800083d8
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x1800083d1
cmp dword [rsp + 0x50], 0x1000
jne 0x1800083d1
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x1800083d1
test al, 0x66
je 0x1800083d1
mov rax, qword [rsp + 0x30]
sub rax, rbx
add rax, qword [rsp + 0x48]
cmp rax, 8
jb 0x1800083d1
mov rbx, qword [rbx]
mov r8d, dword [0x1800cbb94]
and r8d, 0x1ff
imul ecx, r8d, 0x78
add rbx, rcx
je 0x18000843c
lea rax, [rbx - 0xaa70aa8]
cmp rax, rsi
ja 0x18000843c
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x18000843c
cmp dword [rsp + 0x50], 0x1000
jne 0x18000843c
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x18000843c
test al, 0x66
je 0x18000843c
mov rax, qword [rsp + 0x30]
sub rax, rbx
add rax, qword [rsp + 0x48]
cmp rax, 8
jb 0x18000843c
mov rbx, qword [rbx]
mov rax, qword [0x1800cd200]
mov edi, dword [rax + 0x38]
add rdi, rbx
je 0x1800084a0
lea rax, [rdi - 0xaa70aa8]
cmp rax, rsi
ja 0x1800084a0
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x1800084a0
cmp dword [rsp + 0x50], 0x1000
jne 0x1800084a0
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x1800084a0
test al, 0x66
je 0x1800084a0
mov rax, qword [rsp + 0x30]
sub rax, rdi
add rax, qword [rsp + 0x48]
cmp rax, 4
jb 0x1800084a0
mov edi, dword [rdi]
jmp 0x1800084a4
mov edi, dword [rsp + 0x70]
mov rax, qword [0x1800cd200]
mov ecx, dword [rax + 0x28]
add rbx, rcx
je 0x180008508
lea rax, [rbx - 0xaa70aa8]
cmp rax, rsi
ja 0x180008508
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x180008508
cmp dword [rsp + 0x50], 0x1000
jne 0x180008508
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x180008508
test al, 0x66
je 0x180008508
mov rax, qword [rsp + 0x30]
sub rax, rbx
add rax, qword [rsp + 0x48]
cmp rax, 4
jb 0x180008508
mov eax, dword [rbx]
jmp 0x18000850c
mov eax, dword [rsp + 0x70]
cmp byte [0x180089ad8], 0
mov rsi, qword [rsp + 0x80]
je 0x180008529
cmp dword [0x1800cbb90], eax
je 0x1800085cb
test edi, edi
jle 0x1800085cb
mov ecx, dword [0x1800cc3fc]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov eax, dword [rdx + rax]
cmp dword [0x1800cd358], eax
jg 0x1800085da
lea rcx, [rsp + 0x70]
call fcn.180008200
cvttss2si rax, dword [0x180089ad4]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
sub rcx, qword [0x1800cd350]
imul rax, rax, 0xf4240
cmp rcx, rax
jl 0x1800085cb
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1800085c4
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 [0x1800cd350], rbx
mov rbx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x60]
add rsp, 0x68
ret
lea rcx, [0x1800cd358]
call fcn.1800455ac
cmp dword [0x1800cd358], 0xffffffff
jne 0x180008558
lea rcx, [0x1800cd350]
call fcn.180008200
lea rcx, [0x1800cd358]
call fcn.180045540
jmp 0x180008558