Function at 0x180031f10
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rax, qword [0x180068010]
xor rax, rsp
mov qword [rbp - 8], rax
movzx ebx, cl
lea rcx, [0x1800da250]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x180031f4d
mov ecx, eax
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
int3
test bl, bl
je 0x180032042
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x180031f73
imul rax, rax, 0x64
jmp 0x180031f91
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rcx, rcx, 0x3b9aca00
add rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
divss xmm0, dword [0x180060d3c]
divss xmm0, dword [0x180060d2c]
movss dword [0x1800da328], xmm0
xor edx, edx
mov r8d, 0xc0281
lea rcx, str.Render
call fcn.18000bc70
mov qword [rbp - 0x40], 0
mov r10, qword [0x1800da230]
xor r8d, r8d
lea rdx, [rbp - 0x40]
mov rcx, qword [r10 + 0x3ed0]
call fcn.18000e750
movss xmm4, dword [r10 + 0x10]
movss dword [rbp - 0x40], xmm4
movss xmm5, dword [r10 + 0x14]
movss dword [rbp - 0x3c], xmm5
xor r8d, r8d
lea rdx, [rbp - 0x40]
mov rcx, qword [r10 + 0x3ed0]
call fcn.18000e8a0
mov rax, qword [r10 + 0x3ed0]
mov byte [rax + 0xb8], 1
mov rax, qword [r10 + 0x3ed0]
mov rdx, qword [rax + 0x298]
mov qword [0x1800da358], rdx
call fcn.1800358f0
call fcn.18000def0
jmp 0x180032299
cmp byte [0x1800a9b5d], 0
je 0x180032299
mov rax, qword [0x1800da388]
mov rcx, qword [rax + 0x80]
test rcx, rcx
je 0x18003206b
mov qword [0x1800da368], rcx
jmp 0x180032085
mov rax, qword [0x1800da380]
mov rcx, qword [rax]
mov qword [0x1800da368], rcx
test rcx, rcx
je 0x180032299
mov qword [0x1800da340], rcx
mov qword [0x1800da330], rcx
xor edi, edi
mov qword [rbp - 0x34], rdi
mov dword [rbp - 0x2c], edi
mov qword [rbp - 0x40], rcx
mov dword [rbp - 0x38], edi
mov rax, qword [rcx]
mov r9, qword [rax + 0x1b8]
lea r8, [rbp - 0x40]
mov rdx, qword [0x1800da4c0]
call r9
mov rax, qword [rbp - 0x30]
mov qword [0x1800da370], rax
test rax, rax
je 0x180032299
mov rcx, qword [0x1800da340]
mov qword [rbp - 0x1c], rdi
mov dword [rbp - 0x14], edi
mov rax, qword [0x1800da368]
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x20], edi
mov rax, qword [rcx]
mov r9, qword [rax + 0x1b8]
lea r8, [rbp - 0x28]
mov rdx, qword [0x1800da520]
call r9
mov rax, qword [rbp - 0x18]
mov qword [0x1800da350], rax
mov ecx, dword [0x1800da338]
test rax, rax
cmove ecx, edi
mov dword [0x1800da338], ecx
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x18003213e
imul rax, rax, 0x64
jmp 0x180032159
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
divss xmm0, dword [0x180060d3c]
divss xmm0, dword [0x180060d2c]
movss dword [0x1800da328], xmm0
call fcn.180031d40
call qword [sym.imp.USER32.dll_GetActiveWindow]
cmp rax, qword [0x1800da360]
jne 0x18003224b
mov ecx, 0x72
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x1800321ee
mov ecx, 0x72
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x1800321ee
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x18], rdi
mov qword [rbp - 0x10], 0xf
mov r8d, 0x2a
lea rdx, str.Not_Supported_for_this_dll__check_discord_
lea rcx, [rbp - 0x28]
call fcn.18002cdc0
movss xmm2, dword [0x180060cc8]
lea rdx, [rbp - 0x28]
mov ecx, 2
call fcn.180036200
mov ecx, 0x73
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x18003224b
mov ecx, 0x73
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x18003224b
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x18], rdi
mov qword [rbp - 0x10], 0xf
mov r8d, 0x2a
lea rdx, str.Not_Supported_for_this_dll__check_discord_
lea rcx, [rbp - 0x28]
call fcn.18002cdc0
movss xmm2, dword [0x180060cc8]
lea rdx, [rbp - 0x28]
mov ecx, 2
call fcn.180036200
mov rcx, qword [0x1800da350]
test rcx, rcx
je 0x180032299
mov qword [rbp - 0x38], rdi
mov rax, qword [0x1800da318]
mov qword [rbp - 0x40], rax
mov rax, qword [rcx]
lea r8, [rbp - 0x40]
mov rdx, qword [0x1800da4a0]
call qword [rax + 0x1b8]
mov rax, qword [rbp - 0x38]
mov qword [0x1800da378], rax
test rax, rax
je 0x180032299
cmp qword [0x1800da350], 0
je 0x180032299
call fcn.1800322d0
lea rcx, [0x1800da250]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.180038820
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x60
pop rbp
ret