Function at 0x180243c85
Capabilities:
Log keystrokes via polling

Disassembly:
jmp 0x1804d9c10
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x428
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0xa2
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x448]
mov rax, qword [0x180ad8300]
xor rax, rbp
mov qword [rbp + 0x3f0], rax
mov dword [rbp + 0x384], 0
lea rcx, [0x180b2ed47]
call fcn.18024a9d1
nop
mov eax, 0x104
mov eax, eax
mov ecx, dword [0x180ae757c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov eax, dword [rax + rcx]
cmp dword [0x180ae5fd8], eax
jle 0x1804d9ce4
lea rcx, [0x180ae5fd8]
call fcn.180249360
cmp dword [0x180ae5fd8], 0xffffffff
jne 0x1804d9ce4
mov eax, 0x3e8
cdq
mov rcx, qword [rbp + 0x420]
idiv dword [rcx + 0x20]
mov dword [rbp + 0x1e4], eax
lea rdx, [rbp + 0x1e4]
lea rcx, [rbp + 0x1c8]
call fcn.1802473f8
mov rdx, qword [rax]
lea rcx, [0x180ae5fc8]
call fcn.18023e195
nop
lea rcx, [0x180ae5fd8]
call fcn.180249987
nop
mov rax, qword [rbp + 0x420]
movzx eax, byte [rax + 8]
test eax, eax
je 0x1804d9d7b
movzx eax, byte [0x180ae5dd0]
test eax, eax
jne 0x1804d9d7b
mov ecx, 1
call qword [sym.imp.USER32.dll_GetKeyState]
cwde
and eax, 0x8000
test eax, eax
je 0x1804d9d7b
mov rax, qword [0x180ae5c70]
mov qword [rbp + 0x398], rax
lea rdx, [rbp + 0x228]
mov rcx, qword [rbp + 0x398]
call fcn.18024928e
mov qword [rbp + 0x3a0], rax
mov rax, qword [rbp + 0x3a0]
mov qword [rbp + 0x3a8], rax
mov eax, dword [rbp + 0x384]
or eax, 1
mov dword [rbp + 0x384], eax
mov rcx, qword [rbp + 0x3a8]
call fcn.180242a24
movzx eax, al
test eax, eax
jne 0x1804d9d7b
mov dword [rbp + 0x3b0], 0
jmp 0x1804d9d85
mov dword [rbp + 0x3b0], 1
movzx eax, byte [rbp + 0x3b0]
mov byte [rbp + 0x204], al
mov eax, dword [rbp + 0x384]
and eax, 1
test eax, eax
je 0x1804d9db3
and dword [rbp + 0x384], 0xfffffffe
lea rcx, [rbp + 0x228]
call fcn.18024ac33
nop
movzx eax, byte [rbp + 0x204]
test eax, eax
je 0x1804d9dc3
jmp 0x1804da013
lea rcx, [0x180ae5fc8]
call fcn.1802487f3
movzx eax, al
test eax, eax
jne 0x1804d9ddb
jmp 0x1804da013
mov rax, qword [0x180ae5c70]
mov qword [rbp + 0x398], rax
lea rdx, [rbp + 0x278]
mov rcx, qword [rbp + 0x398]
call fcn.1802472ae
mov qword [rbp + 0x3a0], rax
mov rax, qword [rbp + 0x3a0]
mov qword [rbp + 0x3a8], rax
mov rax, qword [rbp + 0x3a8]
mov qword [rbp + 0x3b0], rax
lea rdx, [rbp + 0x2a8]
mov rcx, qword [rbp + 0x3b0]
call fcn.180241557
mov qword [rbp + 0x3b8], rax
mov rax, qword [rbp + 0x3b8]
mov qword [rbp + 0x3c0], rax
mov rax, qword [rbp + 0x3c0]
mov qword [rbp + 0x3c8], rax
mov rax, qword [0x180adb6d8]
mov qword [rbp + 0x3d0], rax
lea rdx, str.BLOCK
lea rcx, [rbp + 0x2d8]
call fcn.180243b95
nop
mov r8, qword [rbp + 0x3d0]
lea rdx, [rbp + 0x2d8]
lea rcx, [rbp + 0x318]
call fcn.180248ab4
mov qword [rbp + 0x3d8], rax
mov rax, qword [rbp + 0x3d8]
mov qword [rbp + 0x3e0], rax
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x3e8], rax
mov rdx, qword [rbp + 0x3e8]
mov rcx, qword [rbp + 0x3c8]
call fcn.18024742f
mov byte [rbp + 0x254], al
lea rcx, [rbp + 0x318]
call fcn.180245198
nop
lea rcx, [rbp + 0x2d8]
call fcn.180240526
nop
lea rcx, [rbp + 0x2a8]
call fcn.180245198
nop
lea rcx, [rbp + 0x278]
call fcn.18024575b
movzx eax, byte [rbp + 0x254]
test eax, eax
je 0x1804d9f10
jmp 0x1804da013
lea rax, [rbp + 8]
mov rdi, rax
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
lea rcx, [rbp + 8]
call qword [sym.imp.USER32.dll_GetCursorPos]
nop
movsxd rax, dword [rbp + 8]
and rax, 0xffff
movzx eax, ax
movsxd rcx, dword [rbp + 0xc]
and rcx, 0xffff
movzx ecx, cx
shl ecx, 0x10
or eax, ecx
mov eax, eax
mov r9d, eax
mov r8d, 1
mov edx, 0x201
mov rcx, qword [0x180ae5dd8]
call qword [sym.imp.USER32.dll_PostMessageA]
nop
movsxd rax, dword [rbp + 8]
and rax, 0xffff
movzx eax, ax
movsxd rcx, dword [rbp + 0xc]
and rcx, 0xffff
movzx ecx, cx
shl ecx, 0x10
or eax, ecx
mov eax, eax
mov r9d, eax
mov r8d, 1
mov edx, 0x202
mov rcx, qword [0x180ae5dd8]
call qword [sym.imp.USER32.dll_PostMessageA]
nop
mov rax, qword [rbp + 0x420]
mov r8d, dword [rax + 0x24]
mov rax, qword [rbp + 0x420]
mov edx, dword [rax + 0x20]
lea rcx, [rbp + 0x28]
call fcn.1802406f2
nop
lea rdx, [0x180adbca0]
lea rcx, [rbp + 0x28]
call fcn.18024361d
mov dword [rbp + 0x394], eax
mov eax, 0x3e8
cdq
mov ecx, dword [rbp + 0x394]
idiv ecx
mov dword [rbp + 0x364], eax
lea rdx, [rbp + 0x364]
lea rcx, [rbp + 0x348]
call fcn.1802473f8
mov rdx, qword [rax]
lea rcx, [0x180ae5fc8]
call fcn.180240463
nop
lea rcx, [rbp - 0x20]
lea rdx, [0x180789c60]
call fcn.18024867c
mov rcx, qword [rbp + 0x3f0]
xor rcx, rbp
call fcn.180244135
lea rsp, [rbp + 0x408]
pop rdi
pop rbp
ret