Function at 0x7ff74b060c8
Capabilities:
Check for time delay via gettickcount
Create thread

Disassembly:
mov rcx, qword [0x7ff74b58418]
call fcn.7ff74ae3060
mov rcx, qword [0x7ff74b58470]
call fcn.7ff74b05ee0
mov rcx, qword [0x7ff74b58418]
mov rbx, rax
test rax, rax
jne 0x7ff74b07713
lock add dword [rcx + 0x38], 0xffffffff
jne 0x7ff74b05fbe
cmp dword [rcx + 0x3c], 0
jne 0x7ff74b0e4c3
mov rcx, qword [0x7ff74b58448]
lea rdx, [rsp + 0xb0]
call fcn.7ff74ae34d0
mov ebx, dword [rsp + 0xa8]
test eax, eax
je 0x7ff74b05ff1
mov eax, dword [rsp + 0xb0]
cmp eax, ebx
js 0x7ff74b0636d
cmp eax, esi
cmovs esi, eax
mov rcx, qword [0x7ff74b58488]
lea rdx, [rsp + 0xb0]
xor ebp, ebp
call fcn.7ff74ae34d0
test eax, eax
jne 0x7ff74b0e4f6
mov rcx, qword [0x7ff74b58458]
lea rdx, [rsp + 0xb0]
call fcn.7ff74ae34d0
mov ecx, dword [0x7ff74b58248]
test eax, eax
je 0x7ff74b06058
mov eax, ecx
imul eax, eax, 0x2710
sub eax, ebx
add eax, dword [rsp + 0xb0]
js 0x7ff74b07a44
mov eax, ecx
imul eax, eax, 0x4e20
add eax, dword [rsp + 0xb0]
cmp eax, esi
cmovs esi, eax
test ebp, ebp
jne 0x7ff74b07a44
cmp dword [0x7ff74b582c8], 0
je 0x7ff74b06080
mov r10, qword [0x7ff74b58350]
cmp r10, r12
je 0x7ff74b06080
test byte [r10 + 0x1c], 0x10
jne 0x7ff74b0e594
add esi, 0x3e8
mov eax, 0x10624dd3
mov ecx, esi
sub ecx, edi
mul ecx
shr edx, 6
cmp edx, 0x1e
ja 0x7ff74b06200
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub esi, eax
movzx eax, word [0x7ff74b58600]
imul eax, eax, 0x7d0
cmp esi, eax
ja 0x7ff74b060f9
xor edx, edx
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SleepEx]
jmp 0x7ff74b060f9
mov rax, rsp
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x60
and dword [rax + 0x18], 0
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea r12, [0x7ff74b58350]
mov edi, eax
lea r14, [0x7ff74b48c50]
mov r13d, 1
call qword [sym.imp.KERNEL32.dll_GetTickCount]
movzx esi, word [0x7ff74b58370]
mov dword [rsp + 0xa8], eax
imul esi, esi, 0x3e8
add esi, eax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
jmp 0x7ff74b0611d
mov rcx, qword [0x7ff74b58480]
lea rdx, [rsp + 0xa8]
call fcn.7ff74b06170
test rax, rax
je 0x7ff74b05f82
cmp dword [0x7ff74b582c8], 0
lea rbx, [rax - 0x60]
je 0x7ff74b0615d
mov rcx, qword [0x7ff74b58350]
cmp rcx, r12
je 0x7ff74b0615d
test byte [rcx + 0x1c], 0x10
jne 0x7ff74b0e497
mov rcx, rbx
call fcn.7ff74b07be0
nop
jmp 0x7ff74b0611d
mov r12, qword [0x7ff74b58538]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebp, dword [0x7ff74b5827c]
imul ebp, ebp, 0xea60
mov edi, dword [0x7ff74b5831c]
mov r14d, eax
imul edi, edi, 0xea60
test ebp, ebp
je 0x7ff74b0e624
mov rcx, qword [0x7ff74b58540]
call fcn.7ff74ae3010
mov rbx, qword [r12]
test rbx, rbx
jne 0x7ff74b0e631
mov rcx, qword [0x7ff74b58540]
lock add dword [rcx + 0x3c], 0xffffffff
and dword [rcx + 0x40], 0
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea r12, [0x7ff74b58350]
lea r14, [0x7ff74b48c50]
mov edi, eax
jmp 0x7ff74b0609d
mov rcx, qword [0x7ff74b58420]
call fcn.7ff74ae3010
jmp 0x7ff74b0637b
mov rcx, qword [0x7ff74b58448]
lea rdx, [rsp + 0xa8]
call fcn.7ff74b06170
test rax, rax
je 0x7ff74b063ca
cmp dword [0x7ff74b582c8], 0
lea rbx, [rax - 0x28]
je 0x7ff74b063b7
mov rcx, qword [0x7ff74b58350]
cmp rcx, r12
je 0x7ff74b063b7
test byte [rcx + 0x1c], 0x10
jne 0x7ff74b0e4d3
test rbx, rbx
je 0x7ff74b0637b
mov rax, qword [rbx]
mov edx, r13d
mov rcx, rbx
call qword [rax]
nop
jmp 0x7ff74b0637b
mov rcx, qword [0x7ff74b58420]
lock add dword [rcx + 0x3c], 0xffffffff
and dword [rcx + 0x40], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, dword [rsp + 0xa8]
mov esi, eax
jmp 0x7ff74b05ff1
call fcn.7ff74ae447c
mov rcx, qword [0x7ff74b58470]
mov rdx, rbx
call fcn.7ff74b075f4
test eax, eax
je 0x7ff74b07733
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
mov rcx, qword [0x7ff74b58418]
lock add dword [rcx + 0x3c], 0xffffffff
and dword [rcx + 0x40], 0
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x7ff74b05fbe
cmp dword [0x7ff74b582c8], 0
je 0x7ff74b07a63
mov rcx, qword [0x7ff74b58350]
cmp rcx, r12
je 0x7ff74b07a63
test byte [rcx + 0x1c], 0x10
jne 0x7ff74b0e535
lock add dword [0x7ff74b58248], r13d
mov eax, dword [0x7ff74b594a4]
lea r8, [0x7ff74b06af4]
xor r9d, r9d
lea edx, [rax + rax*2]
lea rax, [rsp + 0xb8]
xor ecx, ecx
mov qword [rsp + 0x28], rax
and dword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
je 0x7ff74b0e54c
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x7ff74b07aac
mov ecx, dword [0x7ff74b58248]
jmp 0x7ff74b06060
mov rax, qword [rbx + 0x20]
mov rcx, qword [rcx + 0x10]
mov edx, 0xa
mov qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x18]
mov r9, rbx
mov r8, r14
mov qword [rsp + 0x20], rax
call fcn.7ff74b262a8
nop
jmp 0x7ff74b0615d
mov rcx, qword [rcx + 0x30]
call qword [sym.imp.KERNEL32.dll_SetEvent]
nop
jmp 0x7ff74b05fbe
mov rax, qword [rbx + 0x18]
mov rcx, qword [rcx + 0x10]
mov edx, 0xb
mov r9, rbx
mov r8, r14
mov qword [rsp + 0x20], rax
call fcn.7ff74b26260
nop
jmp 0x7ff74b063b7
mov eax, dword [0x7ff74b58248]
movzx ecx, word [0x7ff74b58370]
lea edx, [rax + rax*4]
lea ecx, [rcx + rdx*2]
imul ecx, ecx, 0x3e8
add ecx, ebx
test eax, eax
je 0x7ff74b0e52d
cmp ecx, dword [rsp + 0xb0]
js 0x7ff74b0e52d
cmp ecx, esi
jns 0x7ff74b0600f
mov esi, ecx
jmp 0x7ff74b0600f
mov ebp, r13d
jmp 0x7ff74b0600f
mov rcx, qword [rcx + 0x10]
mov edx, 0xc
mov r8, r14
call fcn.7ff74b25da0
nop
jmp 0x7ff74b07a63
cmp dword [0x7ff74b582c8], 0
je 0x7ff74b0e587
mov rax, qword [0x7ff74b58350]
cmp rax, r12
je 0x7ff74b0e587
test byte [rax + 0x1c], r13b
je 0x7ff74b0e587
call sub.KERNEL32.dll_GetLastError
mov rcx, qword [0x7ff74b58350]
mov edx, 0xd
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r14
call fcn.7ff74b25ec4
lock add dword [0x7ff74b58248], 0xffffffff
jmp 0x7ff74b07aac
mov rax, qword [0x7ff74b584b0]
mov dword [rsp + 0x58], ecx
mov edx, 0xe
mov ecx, dword [rax + 4]
mov rax, qword [0x7ff74b58490]
mov dword [rsp + 0x50], ecx
mov ecx, dword [rax + 4]
mov rax, qword [0x7ff74b58478]
mov dword [rsp + 0x48], ecx
mov ecx, dword [rax + 4]
mov rax, qword [0x7ff74b58468]
mov r8d, dword [rax + 4]
mov rax, qword [0x7ff74b58440]
mov dword [rsp + 0x40], ecx
mov rcx, qword [r10 + 0x10]
mov dword [rsp + 0x38], r8d
mov r8d, dword [rax + 4]
mov rax, qword [0x7ff74b58470]
mov dword [rsp + 0x30], r8d
mov r8d, dword [rax + 0xc]
mov rax, qword [0x7ff74b58450]
mov dword [rsp + 0x28], r8d
mov r8d, dword [rax + 4]
mov rax, qword [0x7ff74b58438]
mov r9d, dword [rax + 4]
mov dword [rsp + 0x20], r8d
mov r8, r14
call fcn.7ff74b261ac
nop
jmp 0x7ff74b06080
test edi, edi
jne 0x7ff74b06230
jmp 0x7ff74b0625f
xor edx, edx
test ebp, ebp
je 0x7ff74b0e643
mov eax, r14d
sub eax, dword [rbx + 0x40]
cmp eax, ebp
cmova edx, r13d
test edi, edi
je 0x7ff74b0e653
mov eax, r14d
sub eax, dword [rbx + 0x44]
cmp eax, edi
cmova edx, r13d
mov r13, qword [rbx]
test edx, edx
je 0x7ff74b0e672
mov rdx, rbx
mov rcx, r12
call fcn.7ff74ae30dc
mov rcx, rbx
call fcn.7ff74b34840
dec dword [r12 + 0x10]
mov rbx, r13
test r13, r13
mov r13d, 1
je 0x7ff74b06249
jmp 0x7ff74b0e631