Function at 0x140055ca8
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, [0x1400f3190]
mov r13d, dword [rbp + 0xf0]
mov rcx, qword [0x1400f3190]
cmp rcx, rax
je 0x140055d4d
test byte [rcx + 0x1c], 1
je 0x140055d4d
mov r12d, dword [rbp + 0xf8]
cmp byte [rcx + 0x19], 5
jb 0x140055d54
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.140048ad0
jmp 0x140055d54
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 0x14005644b
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, esi
cmp eax, 0x3a98
ja 0x1400563f7
and qword [rsp + 0x68], 0
mov rcx, qword [rbx + 0x10]
mov rbx, qword [rbx]
mov qword [rsp + 0x78], rbx
sub rcx, 0x18
call fcn.140004c9c
lea rsi, [rax + 0x18]
mov qword [rsp + 0x70], rsi
and qword [rsp + 0x50], 0
xor ebx, ebx
cmp qword [r14 + 0x60], rbx
jbe 0x140055e03
cmp rbx, qword [r14 + 0x60]
jae 0x140056537
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 0x140055fe4
inc rbx
cmp rbx, qword [r14 + 0x60]
jb 0x140055de1
and qword [rsp + 0x50], 0
lea r8, [rsp + 0x68]
mov rdx, rsi
mov rcx, qword [rbp + 0xb0]
call fcn.140067284
mov edi, eax
test eax, eax
js 0x14005610d
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.14004f5dc
mov edi, eax
test eax, eax
js 0x140056103
mov rax, qword [0x1400f6030]
lea rcx, [0x1400f6030]
mov rax, qword [rax + 0x18]
call qword [str.__f_]
add rax, 0x18
mov qword [rsp + 0x60], rax
mov rax, qword [0x1400f6030]
lea rcx, [0x1400f6030]
mov rax, qword [rax + 0x18]
call qword [str.__f_]
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.14006dcc4
nop
lea r8, [rbp - 0x80]
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x20]
call fcn.14006dd38
test eax, eax
jns 0x140056051
xor edi, edi
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x140055f21
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [str.__f_]
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 0x140055f4a
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
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 0x140055f71
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
nop
mov rcx, qword [rbp - 8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x140055f94
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [str.__f_]
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 0x140055fbb
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
mov rbx, qword [rsp + 0x78]
mov esi, dword [rsp + 0x58]
je 0x140055d89
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [str.__f_]
jmp 0x140055d89
mov rcx, qword [0x1400f3190]
lea rax, [0x1400f3190]
cmp rcx, rax
je 0x14005601b
test byte [rcx + 0x1c], 2
je 0x14005601b
cmp byte [rcx + 0x19], 5
jb 0x14005601b
mov edx, reloc.WSOCK32.dll_WSAGetLastError
mov r9, rsi
lea r8, [0x1400d1780]
mov rcx, qword [rcx + 0x10]
call fcn.140003608
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov qword [r14 + 0x50], rax
cmp rbx, qword [r14 + 0x80]
jae 0x140056542
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 [str.__f_]
jmp 0x14005610d
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 [str.__f_]
test eax, eax
js 0x14005617f
mov r8, qword [rsp + 0x50]
mov rdx, rsi
mov rcx, r14
call fcn.14004fe28
mov edi, eax
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x1400560b3
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [str.__f_]
nop
lea rdx, [rbx - 0x18]
or ebx, 0xffffffff
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x1400560d8
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
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 0x1400560fe
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
mov rsi, qword [rsp + 0x70]
mov rcx, qword [rbp - 8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
test edi, edi
js 0x1400563ed
lea rax, [0x1400c87b8]
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.1400666c8
mov edi, eax
test eax, eax
js 0x1400563ed
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 0x140056368
mov eax, r13d
cmp rax, r14
jbe 0x140056252
sub r13d, r14d
jmp 0x140056301
mov dword [rsp + 0x5c], eax
xor edi, edi
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x14005619c
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [str.__f_]
nop
lea rdx, [rbx - 0x18]
or ebx, 0xffffffff
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x1400561c1
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
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 0x1400561e8
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
nop
mov rcx, qword [rbp - 8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
nop
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14005620b
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [str.__f_]
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 0x140056232
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
nop
mov rcx, qword [rsp + 0x68]
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [str.__f_]
mov rbx, qword [rsp + 0x78]
mov esi, dword [rsp + 0x58]
jmp 0x140055d89
xor r15d, r15d
test r14, r14
je 0x1400562fa
test r12d, r12d
je 0x1400562fa
test r13d, r13d
je 0x140056271
dec r13d
jmp 0x1400562eb
xor ebx, ebx
mov qword [rbp - 0x48], rbx
mov dword [rbp - 0x40], r15d
xor r12d, r12d
test rcx, rcx
je 0x14005629a
mov rbx, rcx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
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.14005c938
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x1400562bc
mov qword [rcx], rax
jmp 0x1400562c0
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], rax
dec dword [rbp + 0xf8]
test r12, r12
je 0x1400562df
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 0x10]
call qword [str.__f_]
mov r12d, dword [rbp + 0xf8]
mov rcx, qword [rsp + 0x50]
inc r15d
mov eax, r15d
cmp rax, r14
jb 0x14005625e
mov r15d, dword [rbp + 0xc0]
mov r14, qword [rbp + 0xb8]
test rcx, rcx
je 0x14005631b
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [str.__f_]
nop
lea rdx, [rsi - 0x18]
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14005633d
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140056354
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [str.__f_]
test edi, edi
js 0x14005644b
mov r12d, dword [rbp + 0xf8]
jmp 0x140056244
xor r15d, r15d
test r14, r14
je 0x1400562fa
xor ebx, ebx
mov qword [rbp - 0x38], rbx
mov dword [rbp - 0x30], r15d
xor r12d, r12d
test rcx, rcx
je 0x140056399
mov rbx, rcx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [str.__f_]
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.14005c938
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x1400563bb
mov qword [rcx], rax
jmp 0x1400563bf
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], rax
test r12, r12
je 0x1400563d8
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 0x10]
call qword [str.__f_]
inc r15d
mov eax, r15d
mov rcx, qword [rsp + 0x50]
cmp rax, r14
jb 0x140056370
jmp 0x1400562fa
mov rcx, qword [rsp + 0x50]
jmp 0x140056308
mov rcx, qword [0x1400f3190]
lea rax, [0x1400f3190]
cmp rcx, rax
je 0x140056446
test byte [rcx + 0x1c], 2
je 0x140056446
cmp byte [rcx + 0x19], 5
jb 0x140056446
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, CreateErrorInfo
mov dword [rsp + 0x20], eax
mov r9d, esi
lea r8, [0x1400d1780]
mov rcx, qword [0x1400f3190]
mov rcx, qword [rcx + 0x10]
call fcn.1400056d8
mov rcx, qword [0x1400f3190]
xor r15d, r15d
jmp 0x140056457
mov rcx, qword [0x1400f3190]
test r15d, r15d
jne 0x140056460
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 0x1400564cc
mov eax, dword [rbp + 0xe8]
test eax, eax
je 0x1400564ad
lea r9, [rbp - 0x78]
mov r8, qword [rbp + 0xe0]
mov edx, eax
mov rcx, qword [rbp + 0x108]
call fcn.140056554
mov edi, eax
test eax, eax
js 0x1400564c5
lea r8, [rbp - 0x78]
mov edx, dword [rbp + 0xf8]
mov ecx, r13d
call fcn.1400569e4
mov r8, rbx
mov rdx, qword [rbp + 0x108]
lea rcx, [rbp - 0x78]
call fcn.14004de9c
mov edi, eax
mov dword [rsi], r15d
mov rcx, qword [0x1400f3190]
lea rax, [0x1400f3190]
cmp rcx, rax
je 0x140056518
test byte [rcx + 0x1c], 1
je 0x140056518
mov edx, edi
sar edx, 0x1f
and edx, 0xfffffffd
add edx, 5
movzx eax, byte [rcx + 0x19]
cmp eax, edx
jl 0x140056518
mov edx, CreateErrorInfo
mov rax, qword [rbx]
mov qword [rsp + 0x28], rax
mov eax, dword [rsi]
mov dword [rsp + 0x20], eax
mov r9d, edi
lea r8, [0x1400d1780]
mov rcx, qword [rcx + 0x10]
call fcn.14000aa40
nop
lea rcx, [rbp - 0x78]
call fcn.140015a14
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.1400051a4
int3
mov ecx, 0x80070057
call fcn.1400051a4
int3