Function at 0x140016500
Capabilities:
Check for time delay via gettickcount

Disassembly:
push rbx
push rbp
push rsi
push r13
sub rsp, 0x68
xor al, al
movzx ebp, dl
cmp qword [0x140160790], 0
mov r13d, 1
movzx esi, al
cmovne esi, r13d
movzx ebx, cl
cmp qword [0x140160788], 0
je 0x140016535
or sil, 2
cmp bl, sil
je 0x14001680f
mov qword [rsp + 0xa0], r12
xor r12d, r12d
test sil, sil
jne 0x140016598
test dl, dl
jne 0x140016598
lea rax, [0x140161704]
xor r9d, r9d
mov qword [rsp + 0x28], rax
lea r8, [0x140016890]
mov edx, 0x2000
mov dword [rsp + 0x20], r12d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x140164b30], rax
test rax, rax
je 0x140016685
lea edx, [r12 + 0xf]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov qword [rsp + 0x98], rdi
mov edi, r12d
mov qword [rsp + 0xa8], r14
mov r14, rbp
xor r14, r13
mov qword [rsp + 0x60], r15
nop word [rax + rax]
mov ecx, dword [0x140161704]
mov r9, r14
mov r8, rbx
mov edx, 0x417
call qword [sym.imp.USER32.dll_PostThreadMessageW]
test eax, eax
jne 0x1400165eb
lea ecx, [rax + 0xa]
call qword [sym.imp.KERNEL32.dll_Sleep]
inc edi
cmp edi, 0x32
jl 0x1400165c0
xor dil, dil
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r15, qword [rsp + 0x60]
mov r14d, eax
nop dword [rax]
test bl, bl
je 0x14001668f
mov r9d, 0x417
mov dword [rsp + 0x20], r13d
mov r8d, r9d
lea rcx, [rsp + 0x30]
xor edx, edx
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x140016668
cmp qword [rsp + 0x40], r12
je 0x1400166a3
movzx edi, r13b
call fcn.140016c20
test al, al
jne 0x1400166a3
test bpl, bpl
jne 0x1400167cd
xor bl, bl
mov rcx, qword [0x140164b30]
lea rdx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
cmp dword [rsp + 0x90], 0x103
jne 0x1400166b1
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, r14d
cmp eax, 0x1f4
ja 0x1400166a3
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140016600
call fcn.140016c50
jmp 0x140016807
test bpl, bpl
je 0x140016646
call fcn.140016c20
test al, al
je 0x1400167c8
jmp 0x140016668
test bpl, bpl
jne 0x1400167c8
jmp 0x14001673d
mov rcx, qword [0x140164b30]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [0x140164b50]
mov qword [0x140164b30], r12
test rcx, rcx
je 0x1400166dd
call fcn.1400eec30
mov qword [0x140164b50], r12
mov rcx, qword [0x140164b58]
test rcx, rcx
je 0x1400166f5
call fcn.1400eec30
mov qword [0x140164b58], r12
mov rcx, qword [0x140164b38]
test rcx, rcx
je 0x14001670d
call fcn.1400eec30
mov qword [0x140164b38], r12
mov rcx, qword [0x140164b40]
test rcx, rcx
je 0x140016725
call fcn.1400eec30
mov qword [0x140164b40], r12
mov rcx, qword [0x140164b48]
test rcx, rcx
je 0x14001673d
call fcn.1400f75c8
mov qword [0x140164b48], r12
movzx eax, sil
and al, r13b
cmp qword [0x140160790], r12
je 0x14001676b
test al, al
jne 0x140016783
lea r8, str.AHK_Keybd
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x140164b20], rax
jmp 0x140016783
test al, al
je 0x140016783
mov rcx, qword [0x140164b20]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x140164b20], r12
and sil, 2
cmp qword [0x140160788], r12
je 0x1400167af
test sil, sil
jne 0x1400167c8
lea r8, str.AHK_Mouse
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x140164b28], rax
jmp 0x1400167c8
test sil, sil
je 0x1400167c8
mov rcx, qword [0x140164b28]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x140164b28], r12
test dil, dil
je 0x1400167f7
xorps xmm3, xmm3
mov dword [0x14015bc04], r12d
xor r8d, r8d
mov qword [rsp + 0x20], r12
mov edx, 0x10000
lea rcx, str.Warning:_The_keyboard_and_or_mouse_hook_could_not_be_activated__some_parts_of_the_script_will_not_function.
call fcn.1400d8410
mov dword [0x14015bc04], r13d
mov rdi, qword [rsp + 0x98]
mov r14, qword [rsp + 0xa8]
mov r12, qword [rsp + 0xa0]
add rsp, 0x68
pop r13
pop rsi
pop rbp
pop rbx
ret