Function at 0x140016fa0
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 [0x140125e08], 0
mov r13d, 1
movzx esi, al
cmovne esi, r13d
movzx ebx, cl
cmp qword [0x140125e00], 0
je 0x140016fd5
or sil, 2
cmp bl, sil
je 0x1400172af
mov qword [rsp + 0xa0], r12
xor r12d, r12d
test sil, sil
jne 0x140017038
test dl, dl
jne 0x140017038
lea rax, [0x140125f60]
xor r9d, r9d
mov qword [rsp + 0x28], rax
lea r8, [0x140017330]
mov edx, 0x2000
mov dword [rsp + 0x20], r12d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x140128028], rax
test rax, rax
je 0x140017125
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 [0x140125f60]
mov r9, r14
mov r8, rbx
mov edx, 0x417
call qword [sym.imp.USER32.dll_PostThreadMessageW]
test eax, eax
jne 0x14001708b
lea ecx, [rax + 0xa]
call qword [sym.imp.KERNEL32.dll_Sleep]
inc edi
cmp edi, 0x32
jl 0x140017060
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 0x14001712f
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 0x140017108
cmp qword [rsp + 0x40], r12
je 0x140017143
movzx edi, r13b
call fcn.140017750
test al, al
jne 0x140017143
test bpl, bpl
jne 0x14001726d
xor bl, bl
mov rcx, qword [0x140128028]
lea rdx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
cmp dword [rsp + 0x90], 0x103
jne 0x140017151
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, r14d
cmp eax, 0x1f4
ja 0x140017143
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400170a0
call fcn.140017780
jmp 0x1400172a7
test bpl, bpl
je 0x1400170e6
call fcn.140017750
test al, al
je 0x140017268
jmp 0x140017108
test bpl, bpl
jne 0x140017268
jmp 0x1400171dd
mov rcx, qword [0x140128028]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [0x140128048]
mov qword [0x140128028], r12
test rcx, rcx
je 0x14001717d
call fcn.1400b9c5c
mov qword [0x140128048], r12
mov rcx, qword [0x140128050]
test rcx, rcx
je 0x140017195
call fcn.1400b9c5c
mov qword [0x140128050], r12
mov rcx, qword [0x140128030]
test rcx, rcx
je 0x1400171ad
call fcn.1400b9c5c
mov qword [0x140128030], r12
mov rcx, qword [0x140128038]
test rcx, rcx
je 0x1400171c5
call fcn.1400b9c5c
mov qword [0x140128038], r12
mov rcx, qword [0x140128040]
test rcx, rcx
je 0x1400171dd
call fcn.1400c0480
mov qword [0x140128040], r12
movzx eax, sil
and al, r13b
cmp qword [0x140125e08], r12
je 0x14001720b
test al, al
jne 0x140017223
lea r8, [0x140100918]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x140128018], rax
jmp 0x140017223
test al, al
je 0x140017223
mov rcx, qword [0x140128018]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x140128018], r12
and sil, 2
cmp qword [0x140125e00], r12
je 0x14001724f
test sil, sil
jne 0x140017268
lea r8, [0x140100930]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x140128020], rax
jmp 0x140017268
test sil, sil
je 0x140017268
mov rcx, qword [0x140128020]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x140128020], r12
test dil, dil
je 0x140017297
xorps xmm3, xmm3
mov dword [0x14011f180], r12d
xor r8d, r8d
mov qword [rsp + 0x20], r12
mov edx, 0x10000
lea rcx, [0x140100950]
call fcn.1400a34f0
mov dword [0x14011f180], 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