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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x68]
sub rsp, 0x168
mov qword [rbp + 0x18], 0xfffffffffffffffe
mov rbx, r8
mov r14, rdx
lea rax, [0x140106190]
mov r13d, dword [rbp + 0xf0]
mov rcx, qword [0x140106190]
cmp rcx, rax
je 0x14005cd65
test byte [rcx + 0x1c], 1
je 0x14005cd65
mov r12d, dword [rbp + 0xf8]
cmp byte [rcx + 0x19], 5
jb 0x14005cd6c
mov rax, qword [rbp + 0x108]
mov rax, qword [rax]
mov qword [rsp + 0x48], rax
mov r8, qword [rbp + 0xe0]
mov qword [rsp + 0x40], r8
mov eax, dword [rbp + 0xe8]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r9
mov r9d, dword [rbx + 0x10]
mov rcx, qword [rcx + 0x10]
call fcn.14004fe7c
jmp 0x14005cd6c
mov r12d, dword [rbp + 0xf8]
xor edi, edi
xor eax, eax
mov dword [rsp + 0x5c], eax
xor r15d, r15d
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
mov dword [rsp + 0x58], eax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
and qword [rbp - 0x68], rdi
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x60], xmm1
mov dword [rbp - 0x50], 0xa
mov rbx, qword [rbx]
test rbx, rbx
je 0x14005d463
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, esi
cmp eax, 0x3a98
ja 0x14005d40f
and qword [rsp + 0x68], 0
mov rcx, qword [rbx + 0x10]
mov rbx, qword [rbx]
mov qword [rsp + 0x78], rbx
sub rcx, 0x18
call fcn.140004b34
lea rsi, [rax + 0x18]
mov qword [rsp + 0x70], rsi
and qword [rsp + 0x50], 0
xor ebx, ebx
cmp qword [r14 + 0x60], rbx
jbe 0x14005ce1b
cmp rbx, qword [r14 + 0x60]
jae 0x14005d55a
mov rax, qword [r14 + 0x58]
mov rdx, rsi
mov rcx, qword [rax + rbx*8]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x14005cffc
inc rbx
cmp rbx, qword [r14 + 0x60]
jb 0x14005cdf9
and qword [rsp + 0x50], 0
lea r8, [rsp + 0x68]
mov rdx, rsi
mov rcx, qword [rbp + 0xb0]
call fcn.14006db20
mov edi, eax
test eax, eax
js 0x14005d125
xor edx, edx
lea r8d, [rdx + 0x28]
lea rcx, [rbp - 0x28]
call sub.msvcrt.dll_memset
mov dword [rbp - 0x28], 1
mov rax, qword [rbp + 0x108]
mov r8, qword [rax]
mov rax, qword [rbp + 0x100]
mov rdx, qword [rax]
lea rcx, [rbp - 0x28]
call fcn.140056778
mov edi, eax
test eax, eax
js 0x14005d11b
mov rax, qword [str.Xr_r_]
lea rcx, str.Xr_r_
mov rax, qword [rax + 0x18]
call qword [case.0x14006d218.0]
add rax, 0x18
mov qword [rsp + 0x60], rax
mov rax, qword [str.Xr_r_]
lea rcx, str.Xr_r_
mov rax, qword [rax + 0x18]
call qword [case.0x14006d218.0]
add rax, 0x18
mov qword [rbp - 0x80], rax
lea rax, [rbp - 0x28]
mov qword [rsp + 0x38], rax
mov eax, dword [rbp + 0xe8]
mov dword [rsp + 0x30], eax
mov rax, qword [rbp + 0xe0]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp + 0xd8]
mov dword [rsp + 0x20], eax
mov r9, qword [rbp + 0xd0]
mov r8, qword [rbp + 0xc8]
mov rdi, qword [rsp + 0x68]
mov rdx, rdi
lea rcx, [rbp + 0x20]
call fcn.1400747bc
nop
lea r8, [rbp - 0x80]
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x20]
call fcn.140074828
test eax, eax
jns 0x14005d069
xor edi, edi
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x14005cf39
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
nop
mov rdx, qword [rbp - 0x80]
add rdx, 0xffffffffffffffe8
or ebx, 0xffffffff
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x14005cf62
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x14005cf89
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
nop
mov rcx, qword [rbp - 8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14005cfac
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x14005cfd3
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
mov rbx, qword [rsp + 0x78]
mov esi, dword [rsp + 0x58]
je 0x14005cda1
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
jmp 0x14005cda1
mov rcx, qword [0x140106190]
lea rax, [0x140106190]
cmp rcx, rax
je 0x14005d033
test byte [rcx + 0x1c], 2
je 0x14005d033
cmp byte [rcx + 0x19], 5
jb 0x14005d033
mov edx, reloc.WSOCK32.dll_WSAGetLastError
mov r9, rsi
lea r8, [0x1400dfa40]
mov rcx, qword [rcx + 0x10]
call fcn.140003558
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov qword [r14 + 0x50], rax
cmp rbx, qword [r14 + 0x80]
jae 0x14005d54f
mov rcx, qword [r14 + 0x78]
mov rcx, qword [rcx + rbx*8]
mov qword [rsp + 0x50], rcx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
jmp 0x14005d125
mov rax, qword [rdi]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rcx
mov byte [rsp + 0x20], 1
xor r9d, r9d
mov rbx, qword [rbp - 0x80]
mov r8, rbx
mov rdx, qword [rsp + 0x60]
mov rcx, rdi
mov rax, qword [rax + 0x80]
call qword [case.0x14006d218.0]
test eax, eax
js 0x14005d197
mov r8, qword [rsp + 0x50]
mov rdx, rsi
mov rcx, r14
call fcn.140056fc4
mov edi, eax
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x14005d0cb
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
nop
lea rdx, [rbx - 0x18]
or ebx, 0xffffffff
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x14005d0f0
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x14005d116
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
mov rsi, qword [rsp + 0x70]
mov rcx, qword [rbp - 8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
test edi, edi
js 0x14005d405
lea rax, [0x1400d67e8]
mov qword [rbp], rax
mov rax, qword [rbp + 0xc8]
mov qword [rbp + 8], rax
and dword [rbp + 0x10], 0
lea rdx, [rbp]
mov rcx, qword [rsp + 0x50]
call fcn.14006d260
mov edi, eax
test eax, eax
js 0x14005d405
mov rcx, qword [rsp + 0x50]
mov r14, qword [rcx + 0x48]
add r14, qword [rcx + 0x28]
add r15d, r14d
mov dword [rbp + 0xc0], r15d
cmp dword [rbp + 0xe8], 0
jne 0x14005d380
mov eax, r13d
cmp rax, r14
jbe 0x14005d26a
sub r13d, r14d
jmp 0x14005d319
mov dword [rsp + 0x5c], eax
xor edi, edi
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x14005d1b4
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
nop
lea rdx, [rbx - 0x18]
or ebx, 0xffffffff
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x14005d1d9
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x14005d200
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
nop
mov rcx, qword [rbp - 8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14005d223
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x14005d24a
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
nop
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
mov rbx, qword [rsp + 0x78]
mov esi, dword [rsp + 0x58]
jmp 0x14005cda1
xor r15d, r15d
test r14, r14
je 0x14005d312
test r12d, r12d
je 0x14005d312
test r13d, r13d
je 0x14005d289
dec r13d
jmp 0x14005d303
xor ebx, ebx
mov qword [rbp - 0x48], rbx
mov dword [rbp - 0x40], r15d
xor r12d, r12d
test rcx, rcx
je 0x14005d2b2
mov rbx, rcx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
mov qword [rbp - 0x48], rbx
mov r12, rbx
xor r9d, r9d
mov r8, qword [rbp - 0x70]
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x78]
call fcn.140063734
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x14005d2d4
mov qword [rcx], rax
jmp 0x14005d2d8
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], rax
dec dword [rbp + 0xf8]
test r12, r12
je 0x14005d2f7
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
mov r12d, dword [rbp + 0xf8]
mov rcx, qword [rsp + 0x50]
inc r15d
mov eax, r15d
cmp rax, r14
jb 0x14005d276
mov r15d, dword [rbp + 0xc0]
mov r14, qword [rbp + 0xb8]
test rcx, rcx
je 0x14005d333
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
nop
lea rdx, [rsi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14005d355
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x14005d36c
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
test edi, edi
js 0x14005d463
mov r12d, dword [rbp + 0xf8]
jmp 0x14005d25c
xor r15d, r15d
test r14, r14
je 0x14005d312
xor ebx, ebx
mov qword [rbp - 0x38], rbx
mov dword [rbp - 0x30], r15d
xor r12d, r12d
test rcx, rcx
je 0x14005d3b1
mov rbx, rcx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x14006d218.0]
mov qword [rbp - 0x38], rbx
mov r12, rbx
xor r9d, r9d
mov r8, qword [rbp - 0x70]
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x78]
call fcn.140063734
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x14005d3d3
mov qword [rcx], rax
jmp 0x14005d3d7
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], rax
test r12, r12
je 0x14005d3f0
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 0x10]
call qword [case.0x14006d218.0]
inc r15d
mov eax, r15d
mov rcx, qword [rsp + 0x50]
cmp rax, r14
jb 0x14005d388
jmp 0x14005d312
mov rcx, qword [rsp + 0x50]
jmp 0x14005d320
mov rcx, qword [0x140106190]
lea rax, [0x140106190]
cmp rcx, rax
je 0x14005d45e
test byte [rcx + 0x1c], 2
je 0x14005d45e
cmp byte [rcx + 0x19], 5
jb 0x14005d45e
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, VarDecRound
mov dword [rsp + 0x20], eax
mov r9d, esi
lea r8, [0x1400dfa40]
mov rcx, qword [0x140106190]
mov rcx, qword [rcx + 0x10]
call fcn.1400053dc
mov rcx, qword [0x140106190]
xor r15d, r15d
jmp 0x14005d46f
mov rcx, qword [0x140106190]
test r15d, r15d
jne 0x14005d478
mov esi, dword [rsp + 0x5c]
test esi, esi
cmovs edi, esi
mov rbx, qword [rbp + 0x118]
mov rsi, qword [rbp + 0x110]
test edi, edi
js 0x14005d4e4
mov eax, dword [rbp + 0xe8]
test eax, eax
je 0x14005d4c5
lea r9, [rbp - 0x78]
mov r8, qword [rbp + 0xe0]
mov edx, eax
mov rcx, qword [rbp + 0x108]
call fcn.14005d568
mov edi, eax
test eax, eax
js 0x14005d4dd
lea r8, [rbp - 0x78]
mov edx, dword [rbp + 0xf8]
mov ecx, r13d
call fcn.14005d9ec
mov r8, rbx
mov rdx, qword [rbp + 0x108]
lea rcx, [rbp - 0x78]
call fcn.14005505c
mov edi, eax
mov dword [rsi], r15d
mov rcx, qword [0x140106190]
lea rax, [0x140106190]
cmp rcx, rax
je 0x14005d530
test byte [rcx + 0x1c], 1
je 0x14005d530
mov edx, edi
sar edx, 0x1f
and edx, 0xfffffffd
add edx, 5
movzx eax, byte [rcx + 0x19]
cmp eax, edx
jl 0x14005d530
mov edx, VarDecRound
mov rax, qword [rbx]
mov qword [rsp + 0x28], rax
mov eax, dword [rsi]
mov dword [rsp + 0x20], eax
mov r9d, edi
lea r8, [0x1400dfa40]
mov rcx, qword [rcx + 0x10]
call fcn.14000a968
nop
lea rcx, [rbp - 0x78]
call fcn.1400430cc
mov eax, edi
add rsp, 0x168
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, 0x80070057
call fcn.140004f64
int3
mov ecx, 0x80070057
call fcn.140004f64
int3