Function at 0x18000e7e0
Capabilities:
Link many functions at runtime
Print debug messages

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x840
mov rax, qword [0x1800bd650]
xor rax, rsp
mov qword [rsp + 0x830], rax
xor esi, esi
lea rax, vtable.CThooks.0
lea rdi, str.thooksv364.dll
mov rcx, rdi
mov qword [0x1800d69e0], rax
mov qword [0x1800d6a88], rsi
mov qword [0x1800d69e8], rsi
mov qword [0x1800d69f8], rsi
mov qword [0x1800d6a00], rsi
mov qword [0x1800d6a08], rsi
mov qword [0x1800d6a10], rsi
mov qword [0x1800d6a18], rsi
mov qword [0x1800d6a20], rsi
mov qword [0x1800d6a28], rsi
mov qword [0x1800d6a30], rsi
mov qword [0x1800d6a38], rsi
mov qword [0x1800d6a40], rsi
mov qword [0x1800d6a48], rsi
mov qword [0x1800d6a50], rsi
mov qword [0x1800d6a58], rsi
mov qword [0x1800d6a60], rsi
mov qword [0x1800d6a68], rsi
mov qword [0x1800d6a70], rsi
mov qword [0x1800d6a78], rsi
mov qword [0x1800d6a80], rsi
mov dword [0x1800d69f0], esi
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x1800d69e8], rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rsp + 0x32]
xor edx, edx
mov r8d, 0x7fe
mov word [rsp + 0x30], si
mov ebx, eax
call fcn.180031f40
mov r8, qword [0x1800d69e8]
lea rdx, str._AgengU64__CThooks::CThooks___1__h:__08x___e:__08x___n:__s_
lea rcx, [rsp + 0x30]
mov r9d, ebx
mov qword [rsp + 0x20], rdi
call fcn.18000e7b0
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov rcx, qword [0x1800d69e8]
test rcx, rcx
je 0x18000ec48
lea rdx, str.SetHook
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.UnSetHook
mov qword [0x1800d69f8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.SetKeyboardFilterHook
mov qword [0x1800d6a00], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.IsKeyboardHookSet
mov qword [0x1800d6a08], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.SetMouseFilterHook
mov qword [0x1800d6a10], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.GetLastActiveTick
mov qword [0x1800d6a18], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.LockDesktop
mov qword [0x1800d6a20], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.UnlockDesktop
mov qword [0x1800d6a28], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.IsLocked
mov qword [0x1800d6a30], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.AddHotkey
mov qword [0x1800d6a38], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.DelHotkey
mov qword [0x1800d6a40], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.DelHotkeyAll
mov qword [0x1800d6a48], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.DisablePrintScreen
mov qword [0x1800d6a50], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.EnablePrintScreen
mov qword [0x1800d6a58], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.IsDisablePrintScreen
mov qword [0x1800d6a60], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.RefreshPassthruProcess
mov qword [0x1800d6a68], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.SetCallWndProcHook
mov qword [0x1800d6a70], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x1800d69e8]
lea rdx, str.ScanCodeLoginPid
mov qword [0x1800d6a78], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1800d69f8], rsi
mov qword [0x1800d6a80], rax
je 0x18000ec13
cmp qword [0x1800d6a00], rsi
je 0x18000ec13
cmp qword [0x1800d6a08], rsi
je 0x18000ec13
cmp qword [0x1800d6a10], rsi
je 0x18000ec13
cmp qword [0x1800d6a18], rsi
je 0x18000ec13
cmp qword [0x1800d6a20], rsi
je 0x18000ec13
cmp qword [0x1800d6a28], rsi
je 0x18000ec13
cmp qword [0x1800d6a30], rsi
je 0x18000ec13
cmp qword [0x1800d6a38], rsi
je 0x18000ec13
cmp qword [0x1800d6a40], rsi
je 0x18000ec13
cmp qword [0x1800d6a48], rsi
je 0x18000ec13
cmp qword [0x1800d6a50], rsi
je 0x18000ec13
cmp qword [0x1800d6a58], rsi
je 0x18000ec13
cmp qword [0x1800d6a60], rsi
je 0x18000ec13
cmp qword [0x1800d6a68], rsi
je 0x18000ec13
cmp qword [0x1800d6a70], rsi
je 0x18000ec13
cmp qword [0x1800d6a78], rsi
je 0x18000ec13
test rax, rax
je 0x18000ec13
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, 0x800
call fcn.180031f40
mov r8, qword [0x1800d69e8]
lea rdx, str._AgengU64__CThooks::CThooks___3__h:__08x_
lea rcx, [rsp + 0x30]
call fcn.18000e7b0
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
cmp dword [0x1800d69f0], esi
je 0x18000ec07
call qword [0x1800d6a50]
mov dword [0x1800d69f0], 1
jmp 0x18000ec4e
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, 0x800
call fcn.180031f40
mov r8, qword [0x1800d69e8]
lea rdx, str._AgengU64__CThooks::CThooks___2__h:__08x_
lea rcx, [rsp + 0x30]
call fcn.18000e7b0
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov dword [0x1800d69f0], esi
lea rax, [0x1800d69e0]
mov rcx, qword [rsp + 0x830]
xor rcx, rsp
call fcn.1800300f0
lea r11, [rsp + 0x840]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret