Function at 0x1400750f0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xe0
mov rax, qword [0x14012c040]
xor rax, rsp
mov qword [rbp + 0x47], rax
mov rbx, qword [0x140197f30]
mov ecx, 0x63b8
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r9, rax
mov r8, qword [0x140197f30]
xor edi, edi
test r8, r8
je 0x140075197
mov r10d, dword [r8 + 0x3fc0]
movsx rax, word [r8 + 0x6228]
lea rdx, [r8 + 0x622c]
lea rdx, [rdx + rax*8]
cmp dword [rdx], r10d
je 0x14007518c
lea ecx, [rax + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x6228], cx
movsx rax, cx
lea rdx, [r8 + 0x622c]
lea rdx, [rdx + rax*8]
mov dword [rdx], r10d
mov dword [rdx + 4], edi
inc word [rdx + 4]
inc dword [r8 + 0x6220]
mov qword [rbp - 0x41], r9
lea rax, [rbp - 0x49]
mov qword [rbp - 0x39], rax
mov qword [rbp + 0x37], r9
test r9, r9
je 0x1400751b8
xor edx, edx
mov rcx, r9
call fcn.140001830
jmp 0x1400751bb
mov rax, rdi
mov qword [0x140197f30], rax
call fcn.140006a70
test rbx, rbx
je 0x1400751d5
mov qword [0x140197f30], rbx
jmp 0x1400751dc
mov rbx, qword [0x140197f30]
cmp byte [0x140197f9d], 0
jne 0x1400751ed
mov qword [rbx + 0x20], rdi
mov qword [rbx + 0x28], rdi
call fcn.14005d610
mov qword [rbp - 0x31], 0xffffffffffffffff
mov qword [rbp - 0x29], 0xffffffffffffffff
mov qword [rbp - 0x21], 0xffffffffffffffff
mov qword [rbp - 0x19], 0xffffffffffffffff
mov dword [rbp - 0x11], 0xffffffff
mov qword [rbp - 0xd], 0xfffffffffffffffd
mov dword [rbp - 5], 0xffffffff
mov qword [rbp - 1], rdi
mov qword [rsp + 0x30], rdi
lea rax, [0x140196578]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x31]
mov r8d, 0xbc8
lea rdx, [0x140144d30]
mov rcx, qword [0x140196458]
call qword [sym.imp.d3dx11_43.dll_D3DX11CreateShaderResourceViewFromMemory]
mov rcx, qword [0x1401963f0]
call fcn.14002ffc0
mov rdx, qword [0x140196460]
mov rcx, qword [0x140196458]
call fcn.14002fe00
mov ebx, 0x80
nop dword [rax]
nop dword [rax + rax]
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 7]
call qword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
je 0x1400752e2
nop
lea rcx, [rbp + 7]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp + 7]
call qword [sym.imp.USER32.dll_DispatchMessageA]
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 7]
call qword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
jne 0x1400752b0
mov ecx, 0x2d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x140075336
cmp byte [0x140130996], 0
sete cl
mov byte [0x140130996], cl
mov rax, qword [0x140197f30]
mov byte [rax + 0x58], cl
mov r8d, 0x800a0
test cl, cl
cmovne r8d, ebx
mov edx, 0xffffffec
mov rcx, qword [0x1401963f0]
call qword [sym.imp.USER32.dll_SetWindowLongA]
mov rcx, qword [0x1401963f0]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov ecx, 0x75
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
jne 0x140075413
mov rax, qword [0x140197f30]
test rax, rax
je 0x14007535e
mov rcx, qword [rax + 0xa0]
jmp 0x140075361
mov rcx, rdi
cmp qword [rcx + 0x48], 0
jne 0x14007536d
call fcn.14002f7a0
call fcn.1400309d0
call fcn.140008680
call fcn.14006dc50
call fcn.14006fa80
cmp byte [0x140130996], 0
je 0x14007538f
call fcn.140068310
call fcn.14000a4d0
xorps xmm0, xmm0
movups xmmword [rbp + 0x37], xmm0
mov rcx, qword [0x140196460]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [0x140196470]
mov edx, 1
call qword [rax + 0x108]
mov rcx, qword [0x140196460]
mov rax, qword [rcx]
lea r8, [rbp + 0x37]
mov rdx, qword [0x140196470]
call qword [rax + 0x190]
mov rax, qword [0x140197f30]
mov rcx, qword [rax + 0x4ba0]
mov rax, qword [rcx]
add rax, 0x50
mov rcx, rdi
cmp byte [rax], dil
cmovne rcx, rax
call fcn.14002ed30
mov rcx, qword [0x140196468]
mov rax, qword [rcx]
xor r8d, r8d
mov edx, 1
call qword [rax + 0x40]
jmp 0x140075290
call fcn.14005bb50
int3