Function at 0x14002b780
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xb0
mov qword [rbp - 0x49], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rbx, rcx
xor edx, edx
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rcx, rbx
sub rax, rbx
nop
movzx r8d, word [rcx]
movzx edx, word [rcx + rax]
sub r8d, edx
jne 0x14002b7e5
add rcx, 2
test edx, edx
jne 0x14002b7d0
test r8d, r8d
je 0x14002baec
mov edx, 0x62
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rbx
sub rax, rbx
nop dword [rax]
movzx r9d, word [rdx]
movzx r8d, word [rdx + rax]
sub r9d, r8d
jne 0x14002b827
add rdx, 2
test r8d, r8d
jne 0x14002b810
test r9d, r9d
jne 0x14002b869
lea edx, [r9 + 0x62]
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
mov r8, 0xffffffffffffffff
lea rcx, [0x14008eb28]
call fcn.140016450
xor r14d, r14d
mov dword [0x1400761a0], r14d
jmp 0x14002baec
mov rdx, 0xffffffffffffffff
inc rdx
cmp word [rbx + rdx*2], 0
jne 0x14002b870
mov rcx, rbx
call fcn.140014530
mov rdx, rbx
lea rcx, [rbp - 9]
call fcn.14000a680
nop
xor r8d, r8d
lea rdx, str._HIDE:ICO
lea rcx, [rbp - 9]
call fcn.140009ea0
xor r14d, r14d
cmp rax, 0xffffffffffffffff
je 0x14002b8dd
lea edx, [r14 + 0x62]
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea r8, [r14 - 1]
lea rcx, [0x14008eb28]
call fcn.140016450
mov dword [0x1400761a0], r14d
xor r8d, r8d
lea rdx, str._NUMK
lea rcx, [rbp - 9]
call fcn.140009ea0
cmp rax, 0xffffffffffffffff
je 0x14002b93a
xor eax, eax
mov qword [rbp - 0x19], rax
mov dword [rbp - 0x11], eax
lea rcx, [rbp - 0x19]
call qword [sym.imp.KERNEL32.dll_GetSystemPowerStatus]
cmp byte [rbp - 0x19], 0x7f
jae 0x14002b93a
cmp byte [rbp - 0x17], 0x7f
jae 0x14002b93a
mov ecx, 0x90
call qword [sym.imp.USER32.dll_GetKeyState]
xor r9d, r9d
mov dl, 0x45
mov cl, 0x90
test ax, ax
lea r8d, [r9 + 3]
je 0x14002b934
lea r8d, [r9 + 1]
call qword [sym.imp.USER32.dll_keybd_event]
xor r8d, r8d
lea rdx, str._DPI:
lea rcx, [rbp - 9]
call fcn.140009ea0
cmp rax, 0xffffffffffffffff
je 0x14002ba8a
lea r8, [rax + 5]
mov r9d, 3
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 9]
call fcn.14000e7f0
nop
mov ebx, r14d
mov edi, ebx
mov edx, ebx
lea rcx, [rbp + 0x17]
call fcn.14000e060
cmp word [rax], 0x30
jb 0x14002ba81
mov edx, edi
lea rcx, [rbp + 0x17]
call fcn.14000e060
cmp word [rax], 0x39
ja 0x14002ba81
inc ebx
cmp ebx, 3
jb 0x14002b972
lea rcx, [rbp + 0x17]
call fcn.140009de0
mov rdx, rax
lea rcx, [rbp - 0x41]
call fcn.14000a680
nop
xor edx, edx
lea r8d, [rdx + 0xa]
lea rcx, [rbp - 0x41]
call fcn.14003b110
mov ebx, eax
lea rcx, [rbp - 0x41]
call fcn.140002990
mov dword [rbp - 0x21], r14d
mov r9d, 1
lea r8, [rbp - 0x21]
xor edx, edx
mov ecx, 0x9e
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
mov r8d, dword [rbp - 0x21]
cmp ebx, 0x63
jle 0x14002ba21
lea ecx, [rbx - 0x64]
mov eax, 0x51eb851f
mul ecx
mov r14d, edx
shr r14d, 3
test r8d, r8d
js 0x14002ba14
add r14d, r8d
jmp 0x14002ba21
not r8d
inc r8d
mov dword [rbp - 0x21], r8d
sub r14d, r8d
lea eax, [r8 + 4]
add eax, r14d
imul esi, eax, 0x19
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
mov edx, 0x58
mov rcx, rax
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
imul ecx, eax, 0x64
mov eax, 0x2aaaaaab
imul ecx
mov ebx, edx
sar ebx, 4
mov ecx, ebx
shr ecx, 0x1f
add ebx, ecx
mov rdx, rdi
xor ecx, ecx
call qword [sym.imp.USER32.dll_ReleaseDC]
cmp esi, ebx
je 0x14002ba81
mov r9d, 1
xor r8d, r8d
mov edx, r14d
mov ecx, 0x9f
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
nop
lea rcx, [rbp + 0x17]
call fcn.140002990
xor r8d, r8d
lea rdx, [0x140063a04]
lea rcx, [rbp - 9]
call fcn.140009ea0
xor r8d, r8d
lea rdx, [0x140063a0c]
lea rcx, [rbp - 9]
cmp rax, 0xffffffffffffffff
je 0x14002bad2
mov dword [0x14008e3dc], 1
call fcn.140009ea0
cmp rax, 0xffffffffffffffff
jne 0x14002bae3
mov dword [0x14008e3dc], 2
jmp 0x14002bae3
call fcn.140009ea0
cmp rax, 0xffffffffffffffff
jne 0x14002bae3
call fcn.14002fa70
nop
lea rcx, [rbp - 9]
call fcn.140002990
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.14003da20
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret