Function at 0x1400115a0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xa0
mov rax, qword [0x140082010]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rdi, r9
movsx esi, r8w
mov rbx, rdx
test edx, edx
jne 0x1400115ec
mov rax, rdx
shr rax, 0x20
test eax, eax
je 0x140011a26
cmp dword [r9], 0
je 0x1400115fd
mov ecx, 0x1e
call qword [sym.imp.KERNEL32.dll_Sleep]
imul r15d, esi, 0x1e
add r15d, dword [rbp + 0x73]
lea r14d, [r15 - 5]
lea r13d, [rbx + 0xa]
mov edx, dword [0x140082fb8]
mov eax, dword [0x140082fc0]
xor r12d, r12d
cmp edx, eax
jl 0x140011666
cmp edx, dword [0x140082fc8]
jg 0x140011666
mov ecx, dword [0x140082fbc]
mov r8d, dword [0x140082fc4]
cmp ecx, r8d
jl 0x140011666
cmp ecx, dword [0x140082fcc]
jg 0x140011666
sub edx, eax
cmp edx, r13d
jl 0x140011666
lea eax, [r13 + 0xd]
cmp edx, eax
jg 0x140011666
sub ecx, r8d
cmp ecx, r14d
jl 0x140011666
lea eax, [r14 + 0x12]
cmp ecx, eax
lea esi, [r12 + 1]
jle 0x140011669
mov esi, r12d
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [0x140082f98]
jne 0x1400116be
cmp dword [0x140082fd8], r12d
jne 0x1400116be
cmp dword [rdi], r12d
jne 0x1400116b9
test esi, esi
je 0x1400116b9
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x1400116b9
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
mov eax, 1
jmp 0x1400116bc
mov eax, r12d
mov dword [rdi], eax
mov qword [rbp - 0x49], r12
lea edx, [r15 - 7]
lea ecx, [rbx + 8]
mov word [rbp - 0x1b], r12w
mov word [rbp - 0xb], r12w
mov dword [rbp - 0x39], r12d
mov dword [rbp - 0x35], 1
mov rax, r12
shr rax, 0x20
movzx r8d, al
shl r8d, 8
mov dword [rbp - 0x29], ecx
mov dword [rbp - 0x25], edx
lea eax, [rcx + 0x11]
mov dword [rbp - 0x19], eax
lea eax, [rdx + 0x16]
mov dword [rbp - 0x15], eax
movzx ecx, r8b
shl cx, 8
mov word [rbp - 0x21], cx
mov word [rbp - 0x1f], r8w
mov eax, r8d
shr eax, 0x10
shl ax, 8
mov word [rbp - 0x1d], ax
mov word [rbp - 0x11], cx
mov word [rbp - 0xf], r8w
mov word [rbp - 0xd], ax
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 1
lea r9, [rbp - 0x39]
mov r8d, 2
lea rdx, [rbp - 0x29]
mov rcx, qword [0x140082fb0]
call qword [sym.imp.MSIMG32.dll_GradientFill]
mov dword [rbp - 0x49], 0x3c
mov dword [rbp - 0x45], 0x3c
lea edx, [r15 - 6]
lea ecx, [rbx + 9]
mov word [rbp - 0x1b], r12w
mov word [rbp - 0xb], r12w
mov dword [rbp - 0x39], r12d
mov dword [rbp - 0x35], 1
mov rax, qword [rbp - 0x49]
shr rax, 0x20
movzx r8d, al
shl r8d, 8
or r8d, 0x3c003c
mov dword [rbp - 0x29], ecx
mov dword [rbp - 0x25], edx
lea eax, [rcx + 0xf]
mov dword [rbp - 0x19], eax
lea eax, [rdx + 0x14]
mov dword [rbp - 0x15], eax
movzx ecx, r8b
shl cx, 8
mov word [rbp - 0x21], cx
mov edx, 0xff00
movzx eax, r8w
and ax, dx
mov word [rbp - 0x1f], ax
shr r8d, 0x10
shl r8w, 8
mov word [rbp - 0x1d], r8w
mov word [rbp - 0x11], cx
mov word [rbp - 0xf], ax
mov word [rbp - 0xd], r8w
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 1
lea r9, [rbp - 0x39]
mov r8d, 2
lea rdx, [rbp - 0x29]
mov rcx, qword [0x140082fb0]
call qword [sym.imp.MSIMG32.dll_GradientFill]
test esi, esi
je 0x14001189c
cmp dword [rdi], r12d
jne 0x14001189c
mov dword [rbp - 0x29], 0x14
mov dword [rbp - 0x25], 0x14
mov eax, 0x66666667
imul dword [0x140082f84]
mov r9d, edx
sar r9d, 1
mov eax, r9d
shr eax, 0x1f
add r9d, eax
mov dword [rbp - 0x49], r9d
mov eax, 0x66666667
imul dword [0x140082f88]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp - 0x45], edx
mov rcx, qword [rbp - 0x49]
shr rcx, 0x20
movzx r8d, cl
shl r8d, 8
mov eax, 0x66666667
imul dword [0x140082f8c]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dl
shl eax, 0x10
or r8d, eax
movzx eax, r9b
or r8d, eax
mov rax, qword [rbp - 0x29]
jmp 0x140011929
mov dword [rbp - 0x49], 0x14
mov dword [rbp - 0x45], 0x14
mov ecx, dword [0x140082f84]
mov eax, 0x92492493
imul ecx
lea r9d, [rcx + rdx]
sar r9d, 2
mov eax, r9d
shr eax, 0x1f
add r9d, eax
mov dword [rbp - 0x29], r9d
mov eax, 0x92492493
imul dword [0x140082f88]
add edx, dword [0x140082f88]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp - 0x25], edx
mov rcx, qword [rbp - 0x29]
shr rcx, 0x20
movzx r8d, cl
shl r8d, 8
mov eax, 0x92492493
imul dword [0x140082f8c]
add edx, dword [0x140082f8c]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dl
shl eax, 0x10
or r8d, eax
movzx eax, r9b
or r8d, eax
mov rax, qword [rbp - 0x49]
shr rax, 0x20
movzx ecx, al
shl ecx, 8
mov dword [rbp - 5], r14d
mov dword [rbp - 9], r13d
or ecx, 0x140014
mov dword [rbp - 0x35], 1
mov dword [rbp - 0x39], r12d
mov word [rbp + 0x15], r12w
mov word [rbp + 5], r12w
lea eax, [r13 + 0xd]
mov dword [rbp + 7], eax
lea eax, [r14 + 0x12]
mov dword [rbp + 0xb], eax
movzx eax, r8b
shl ax, 8
mov word [rbp - 1], ax
mov edx, 0xff00
movzx eax, r8w
and ax, dx
mov word [rbp + 1], ax
movzx eax, cl
shl ax, 8
mov word [rbp + 0xf], ax
movzx eax, cx
shr r8d, 0x10
shr ecx, 0x10
shl r8w, 8
shl cx, 8
mov dword [rsp + 0x28], 1
and ax, dx
mov word [rbp + 3], r8w
mov word [rbp + 0x13], cx
mov dword [rsp + 0x20], 1
mov word [rbp + 0x11], ax
lea r9, [rbp - 0x39]
mov r8d, 2
lea rdx, [rbp - 9]
mov rcx, qword [0x140082fb0]
call qword [sym.imp.MSIMG32.dll_GradientFill]
movdqa xmm0, xmmword [0x14007bad0]
movdqa xmmword [rbp - 0x29], xmm0
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 7], xmm1
mov r8d, 3
lea rdx, [0x140079198]
lea rcx, [rbp - 9]
call fcn.140074f70
lea r8d, [r15 - 1]
lea edx, [rbx + 0xc]
lea rax, [rbp - 0x29]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 9]
call fcn.14000d680
mov eax, dword [rdi]
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.140076100
mov rbx, qword [rsp + 0xe0]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret