Function at 0x180008270
Capabilities:
Log keystrokes via polling

Disassembly:
sub rsp, 0x68
cmp byte [0x1800ceffc], 0
je 0x180008567
mov rax, qword [0x1800cf210]
lea rdx, [0x1800cdb78]
mov rcx, qword [rax + 0x18]
mov rax, qword [0x1800cf150]
add rcx, qword [rax + 8]
call fcn.1800085b0
mov rcx, qword [0x1800cdb78]
lea rdx, [0x1800cdb84]
add rcx, 0x13b0
call fcn.180008650
mov r8d, dword [0x1800cdb84]
cmp r8d, 0xffffffff
je 0x180008567
mov rax, qword [0x1800cf120]
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 0x180008368
lea rax, [rbx - 0xaa70aa8]
cmp rax, rsi
ja 0x180008368
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x180008361
cmp dword [rsp + 0x50], 0x1000
jne 0x180008361
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x180008361
test al, 0x66
je 0x180008361
mov rax, qword [rsp + 0x30]
sub rax, rbx
add rax, qword [rsp + 0x48]
cmp rax, 8
jb 0x180008361
mov rbx, qword [rbx]
mov r8d, dword [0x1800cdb84]
and r8d, 0x1ff
imul ecx, r8d, 0x78
add rbx, rcx
je 0x1800083cc
lea rax, [rbx - 0xaa70aa8]
cmp rax, rsi
ja 0x1800083cc
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x1800083cc
cmp dword [rsp + 0x50], 0x1000
jne 0x1800083cc
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x1800083cc
test al, 0x66
je 0x1800083cc
mov rax, qword [rsp + 0x30]
sub rax, rbx
add rax, qword [rsp + 0x48]
cmp rax, 8
jb 0x1800083cc
mov rbx, qword [rbx]
mov rax, qword [0x1800cf210]
mov edi, dword [rax + 0x38]
add rdi, rbx
je 0x180008430
lea rax, [rdi - 0xaa70aa8]
cmp rax, rsi
ja 0x180008430
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x180008430
cmp dword [rsp + 0x50], 0x1000
jne 0x180008430
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x180008430
test al, 0x66
je 0x180008430
mov rax, qword [rsp + 0x30]
sub rax, rdi
add rax, qword [rsp + 0x48]
cmp rax, 4
jb 0x180008430
mov edi, dword [rdi]
jmp 0x180008434
mov edi, dword [rsp + 0x70]
mov rax, qword [0x1800cf210]
mov ecx, dword [rax + 0x28]
add rbx, rcx
je 0x180008498
lea rax, [rbx - 0xaa70aa8]
cmp rax, rsi
ja 0x180008498
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x180008498
cmp dword [rsp + 0x50], 0x1000
jne 0x180008498
mov eax, dword [rsp + 0x54]
test eax, 0x101
jne 0x180008498
test al, 0x66
je 0x180008498
mov rax, qword [rsp + 0x30]
sub rax, rbx
add rax, qword [rsp + 0x48]
cmp rax, 4
jb 0x180008498
mov eax, dword [rbx]
jmp 0x18000849c
mov eax, dword [rsp + 0x70]
cmp byte [0x18008bac8], 0
mov rsi, qword [rsp + 0x80]
je 0x1800084b9
cmp dword [0x1800cdb80], eax
je 0x18000855d
test edi, edi
jle 0x18000855d
mov ecx, dword [0x1800ce3ec]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov eax, dword [rdx + rax]
cmp dword [0x1800cf370], eax
jg 0x18000856c
lea rcx, [rsp + 0x70]
call fcn.180008190
cvttss2si rax, dword [0x18008bac4]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
sub rcx, qword [0x1800cf368]
imul rdx, rax, 0xf4240
cmp rcx, rdx
je 0x180008518
jl 0x18000855d
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x180008556
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 [0x1800cf368], rbx
mov rbx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x60]
add rsp, 0x68
ret
lea rcx, [0x1800cf370]
call fcn.180045c5c
cmp dword [0x1800cf370], 0xffffffff
jne 0x1800084e8
lea rcx, [0x1800cf368]
call fcn.180008190
lea rcx, [0x1800cf370]
call fcn.180045bf0
jmp 0x1800084e8