Function at 0x14003af90
Capabilities:
Log keystrokes via polling
Open clipboard
Write clipboard data

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
mov rax, qword [0x14008f010]
xor rax, rsp
mov qword [rbp + 0xc0], rax
xor r12d, r12d
mov ecx, dword [0x14008fc80]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x14003b2f2
mov ebx, 0xdc
mov r8d, ebx
xor edx, edx
lea rcx, [rbp - 0x20]
call fcn.140044040
mov word [rbp + 0x24], bx
lea r8, [rbp - 0x20]
mov edx, 0xffffffff
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplaySettingsW]
test eax, eax
jne 0x14003b02f
lea r9d, [r12 + 0x10]
lea r8, str.Error
lea rdx, str.Error_1
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x14003b2c1
movzx ecx, word [0x14008fcf0]
cmp byte [0x14008fc58], r12b
je 0x14003b48b
mov dword [rbp + 0x34], 2
call fcn.14003ad60
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
mov r8d, 0x1f
lea rdx, str.fov_245__SetMouseSensitivity
lea rcx, [rsp + 0x50]
call fcn.140039d30
nop
lea rdx, str.0.027
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdx + rbx], 0
jne 0x14003b091
mov r8, rbx
lea rcx, [rsp + 0x50]
call fcn.14003edb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x40], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x40], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8d, 3
lea rdx, [0x140083aa0]
lea rcx, [rsp + 0x30]
call fcn.14003edb0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x58], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x14003b14a
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003b145
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003b827
call fcn.14004107c
movdqa xmm0, xmmword [0x140084100]
movdqu xmmword [rsp + 0x40], xmm0
mov byte [rsp + 0x30], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x14003b19a
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003b195
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003b82d
call fcn.14004107c
xor ecx, ecx
call qword [sym.imp.USER32.dll_OpenClipboard]
call qword [sym.imp.USER32.dll_EmptyClipboard]
mov rbx, qword [rbp - 0x58]
lea rdx, [rbx + 1]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rdi, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
lea rdx, [rbp - 0x68]
mov rsi, qword [rbp - 0x68]
mov r14, qword [rbp - 0x50]
cmp r14, 0x10
cmovae rdx, rsi
lea r8, [rbx + 1]
mov rcx, rax
call fcn.1400444c0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rdx, rdi
mov ecx, 1
call qword [sym.imp.USER32.dll_SetClipboardData]
call qword [sym.imp.USER32.dll_CloseClipboard]
call fcn.14003ae70
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0xd
call fcn.14003ad60
cmp r14, 0x10
jb 0x14003b255
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14003b24d
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003b821
mov rcx, rsi
call fcn.14004107c
mov qword [rsp + 0x20], r12
mov r9d, 1
xor r8d, r8d
lea rdx, [rbp - 0x20]
xor ecx, ecx
call qword [sym.imp.USER32.dll_ChangeDisplaySettingsExW]
test eax, eax
je 0x14003b28f
mov r9d, 0x10
lea r8, str.Error
lea rdx, str.Error_2
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp byte [0x140091af8], 0
je 0x14003b2a8
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov cl, 0x57
call qword [sym.imp.USER32.dll_keybd_event]
cmp byte [0x14008fc58], 0
sete byte [0x14008fc58]
mov ecx, 0x28
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x14008fc80]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x14003b2f2
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x14008fc80]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jb 0x14003b2d4
mov ecx, dword [0x14008fc84]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x14003b34e
cmp byte [0x140091ae8], 0
sete byte [0x140091ae8]
mov ecx, dword [0x14008fc84]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x14003b34e
nop word [rax + rax]
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x14008fc84]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jb 0x14003b330
mov ecx, dword [0x14008fcf4]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x14003b3ec
mov ecx, 5
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0x46
call fcn.14003ad60
mov ecx, 0x96
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, 0xc8
mov ecx, 0x578
call qword [sym.imp.USER32.dll_SetCursorPos]
mov ecx, 5
call qword [sym.imp.KERNEL32.dll_Sleep]
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 2]
call qword [sym.imp.USER32.dll_mouse_event]
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 ecx, 5
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0x46
call fcn.14003ad60
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x14008fca8]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x14003b451
movzx ecx, word [0x14008fcf0]
call fcn.14003ad60
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rbx, str.reconnect
mov al, 0x72
nop
lea rbx, [rbx + 1]
movzx ecx, al
call qword [sym.imp.USER32.dll_VkKeyScanA]
movzx ecx, ax
call fcn.14003ad60
movzx eax, byte [rbx]
test al, al
jne 0x14003b420
mov ecx, 5
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0xd
call fcn.14003ad60
mov ecx, 0xa1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x14003b7eb
xor r9d, r9d
xor edx, edx
mov cl, 0x57
cmp byte [0x140091af8], dl
je 0x14003b7cf
lea r8d, [r9 + 2]
call qword [sym.imp.USER32.dll_keybd_event]
xor al, al
jmp 0x14003b7da
mov dword [rbp + 0x34], r12d
call fcn.14003ad60
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
mov r8d, 0x14
lea rdx, str.SetMouseSensitivity
lea rcx, [rsp + 0x78]
call fcn.140039d30
nop
lea rdx, str.0.07
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x14003b4e0
lea rcx, [rsp + 0x78]
call fcn.14003edb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x60], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8d, 8
lea rdx, str.__fov
lea rcx, [rsp + 0x50]
call fcn.14003edb0
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x58], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x58], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rdx, str.112.5
inc rbx
cmp byte [rdx + rbx], 0
jne 0x14003b570
mov r8, rbx
lea rcx, [rbp - 0x68]
call fcn.14003edb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x40], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x40], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r8d, 3
lea rdx, [0x140083aa0]
lea rcx, [rsp + 0x30]
call fcn.14003edb0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x38], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x14003b628
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003b623
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003b833
call fcn.14004107c
movdqa xmm0, xmmword [0x140084100]
movdqu xmmword [rsp + 0x40], xmm0
mov byte [rsp + 0x30], 0
mov rdx, qword [rbp - 0x50]
cmp rdx, 0x10
jb 0x14003b676
inc rdx
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003b671
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003b839
call fcn.14004107c
movdqa xmm0, xmmword [0x140084100]
movdqu xmmword [rbp - 0x58], xmm0
mov byte [rbp - 0x68], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x14003b6c4
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003b6bf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003b83f
call fcn.14004107c
movdqa xmm0, xmmword [0x140084100]
movdqu xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x50], 0
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x14003b713
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003b70e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003b81b
call fcn.14004107c
xor ecx, ecx
call qword [sym.imp.USER32.dll_OpenClipboard]
call qword [sym.imp.USER32.dll_EmptyClipboard]
mov rbx, qword [rbp - 0x38]
lea rdx, [rbx + 1]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rdi, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
lea rdx, [rbp - 0x48]
mov rsi, qword [rbp - 0x48]
mov r14, qword [rbp - 0x30]
cmp r14, 0x10
cmovae rdx, rsi
lea r8, [rbx + 1]
mov rcx, rax
call fcn.1400444c0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rdx, rdi
mov ecx, 1
call qword [sym.imp.USER32.dll_SetClipboardData]
call qword [sym.imp.USER32.dll_CloseClipboard]
call fcn.14003ae70
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0xd
call fcn.14003ad60
cmp r14, 0x10
jb 0x14003b255
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14003b24d
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003b821
jmp 0x14003b24d
xor r8d, r8d
call qword [sym.imp.USER32.dll_keybd_event]
mov al, 1
mov byte [0x140091af8], al
mov ecx, 0xc8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.140040dc0
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1400538cc
int3
call fcn.1400538cc
nop
call fcn.1400538cc
nop
call fcn.1400538cc
nop
call fcn.1400538cc
nop
call fcn.1400538cc
nop
call fcn.1400538cc
int3