Function at 0x180011590
Capabilities:
Check for time delay via gettickcount
Check for time delay via queryperformancecounter
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xb8
mov r15, rcx
lea r13, [rcx + 0x10]
mov qword [rbp - 0x31], r13
mov edx, 0xffffffff
mov rcx, qword [r13]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov dword [rbp + 0x6f], eax
mov dword [rbp - 0x29], eax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x79], xmm0
mov qword [rbp - 0x69], 0
movdqu xmmword [rbp - 0x61], xmm0
xor r12d, r12d
mov qword [rbp - 0x51], r12
mov rax, qword [r15]
mov rdi, qword [rax]
cmp rdi, rax
je 0x180011b78
movabs r13, 0x555555555555555
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdi + 0x28]
mov rcx, qword [rax + 0x38]
movzx eax, byte [rcx + 0x6d]
test al, al
je 0x18001163f
mov r9, qword [rdi + 0x28]
cmp dword [r9], 3
jne 0x18001164c
call fcn.1800187c0
mov rcx, qword [rdi + 0x28]
sub rax, qword [rcx + 8]
cmp rax, 0x2dc6c0
jae 0x180011683
mov rdx, qword [rbp - 0x71]
mov qword [rbp + 0x77], rdx
jmp 0x180011b10
mov r9, qword [r9 + 0x38]
mov r8, qword [r9 + 0x158]
test r8, r8
je 0x180011683
mov ecx, dword [r8 + 0x1c]
mov edx, ecx
sub edx, dword [r8 + 0x18]
cmp ecx, dword [r8 + 0x18]
jge 0x180011670
add edx, dword [r8 + 8]
test edx, edx
jle 0x180011683
mov ecx, dword [r9 + 0x70]
lea eax, [rcx - 1]
mov dword [r9 + 0x70], eax
test ecx, ecx
jg 0x18001163f
mov rax, qword [rdi + 0x28]
mov dword [rax], 8
call fcn.1800187c0
mov rcx, qword [rdi + 0x28]
mov qword [rcx + 8], rax
mov r12, qword [rbp - 0x71]
cmp r12, qword [rbp - 0x69]
je 0x1800116b5
mov eax, dword [rdi + 0x20]
mov dword [r12], eax
add r12, 4
mov qword [rbp - 0x71], r12
jmp 0x1800116c9
lea r8, [rdi + 0x20]
mov rdx, r12
lea rcx, [rbp - 0x79]
call fcn.180016640
mov r12, qword [rbp - 0x71]
mov qword [rbp + 0x77], r12
mov r14, qword [rdi + 0x28]
add r15, 0xa8
mov rsi, qword [r15]
mov rax, qword [rsi + 8]
mov qword [rbp - 0x21], rax
xor r12d, r12d
mov dword [rbp - 0x19], r12d
mov rcx, rsi
cmp byte [rax + 0x19], r12b
jne 0x18001171c
mov edx, dword [rdi + 0x20]
mov qword [rbp - 0x21], rax
cmp dword [rax + 0x20], edx
jge 0x180011709
mov dword [rbp - 0x19], r12d
mov rax, qword [rax + 0x10]
jmp 0x180011716
mov dword [rbp - 0x19], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], r12b
je 0x1800116f6
cmp byte [rcx + 0x19], r12b
jne 0x18001172a
mov eax, dword [rcx + 0x20]
cmp dword [rdi + 0x20], eax
jge 0x180011781
cmp qword [r15 + 8], r13
je 0x180011fed
mov qword [rbp - 9], r15
mov qword [rbp - 1], r12
mov ecx, gethostbyname
call fcn.18008a528
mov r8, rax
mov eax, dword [rdi + 0x20]
mov dword [r8 + 0x20], eax
mov qword [r8 + 0x28], r12
mov qword [r8], rsi
mov qword [r8 + 8], rsi
mov qword [r8 + 0x10], rsi
mov word [r8 + 0x18], 0
mov qword [rbp - 1], r12
movups xmm0, xmmword [rbp - 0x21]
movaps xmmword [rbp + 7], xmm0
lea rdx, [rbp + 7]
mov rcx, r15
call fcn.180016b50
mov rcx, rax
mov qword [rcx + 0x28], r14
mov r8, qword [rdi + 0x28]
mov rsi, qword [rbp + 0x67]
mov rdx, qword [rsi]
mov rax, qword [rdx + 8]
mov rsi, rdx
cmp byte [rax + 0x19], 0
jne 0x1800117b8
mov ecx, dword [r8 + 0x2c]
cmp dword [rax + 0x20], ecx
jge 0x1800117ac
mov rax, qword [rax + 0x10]
jmp 0x1800117b2
mov rsi, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1800117a1
cmp byte [rsi + 0x19], 0
jne 0x1800117cc
mov eax, dword [rsi + 0x20]
cmp dword [r8 + 0x2c], eax
jl 0x1800117cc
cmp rsi, rdx
jne 0x180011817
mov rdx, qword [r15]
mov rax, qword [rdx + 8]
mov rsi, rdx
cmp byte [rax + 0x19], 0
jne 0x1800117f7
mov ecx, dword [r8 + 0x2c]
cmp dword [rax + 0x20], ecx
jge 0x1800117eb
mov rax, qword [rax + 0x10]
jmp 0x1800117f1
mov rsi, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1800117e0
cmp byte [rsi + 0x19], 0
jne 0x180011b08
mov eax, dword [rsi + 0x20]
cmp dword [r8 + 0x2c], eax
jl 0x180011b08
cmp rsi, rdx
je 0x180011b08
mov rcx, qword [rsi + 0x28]
mov edx, 0xffffffff
mov rcx, qword [rcx + 0x58]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rax, qword [rsi + 0x28]
mov r15, qword [rax + 0x40]
mov r9, qword [rdi + 0x28]
mov r10, qword [r15]
mov rcx, qword [r10 + 8]
mov rax, rcx
mov rbx, r10
mov r14, r10
cmp byte [rcx + 0x19], 0
jne 0x180011878
mov r8d, dword [r9 + 0x28]
mov edx, dword [rax + 0x1c]
cmp edx, r8d
jge 0x18001185e
mov rax, qword [rax + 0x10]
jmp 0x180011872
cmp byte [r14 + 0x19], 0
je 0x18001186c
cmp r8d, edx
cmovl r14, rax
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180011850
cmp byte [r14 + 0x19], 0
jne 0x180011882
mov rcx, qword [r14]
cmp byte [rcx + 0x19], 0
jne 0x1800118a7
mov eax, dword [r9 + 0x28]
nop dword [rax]
cmp eax, dword [rcx + 0x1c]
jge 0x18001189d
mov r14, rcx
mov rcx, qword [rcx]
jmp 0x1800118a1
mov rcx, qword [rcx + 0x10]
cmp byte [rcx + 0x19], 0
je 0x180011890
cmp rbx, qword [r10]
jne 0x1800118c0
cmp byte [r14 + 0x19], 0
je 0x1800118c0
mov rcx, r15
call fcn.180016140
jmp 0x18001198a
cmp rbx, r14
je 0x18001198a
nop dword [rax]
mov rdx, rbx
lea r8, [rbx + 0x10]
mov rax, qword [r8]
cmp byte [rax + 0x19], 0
je 0x180011928
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x180011903
nop word [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x180011903
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1800118f0
mov rbx, rax
mov rcx, qword [rdx + 8]
cmp byte [rcx + 0x19], 0
jne 0x18001196c
mov rax, rdx
cmp rax, qword [rcx + 0x10]
jne 0x18001196c
mov rax, rcx
mov rcx, qword [rcx + 8]
cmp byte [rcx + 0x19], 0
je 0x180011913
jmp 0x18001196c
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x18001194f
nop dword [rax]
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180011940
mov rax, qword [r8]
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x18001196c
nop dword [rax + rax]
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180011960
mov rcx, r15
call fcn.180015dc0
mov edx, 0x20
mov rcx, rax
call fcn.18008a564
cmp rbx, r14
jne 0x1800118d0
mov rax, qword [rsi + 0x28]
mov r15, qword [rax + 0x48]
mov r9, qword [rdi + 0x28]
mov r10, qword [r15]
mov rcx, qword [r10 + 8]
mov rax, rcx
mov rbx, r10
mov r14, r10
cmp byte [rcx + 0x19], 0
jne 0x1800119d8
mov r8d, dword [r9 + 0x28]
mov edx, dword [rax + 0x1c]
cmp edx, r8d
jge 0x1800119be
mov rax, qword [rax + 0x10]
jmp 0x1800119d2
cmp byte [r14 + 0x19], 0
je 0x1800119cc
cmp r8d, edx
cmovl r14, rax
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1800119b0
cmp byte [r14 + 0x19], 0
jne 0x1800119e2
mov rcx, qword [r14]
cmp byte [rcx + 0x19], 0
jne 0x180011a07
mov eax, dword [r9 + 0x28]
nop dword [rax]
cmp eax, dword [rcx + 0x1c]
jge 0x1800119fd
mov r14, rcx
mov rcx, qword [rcx]
jmp 0x180011a01
mov rcx, qword [rcx + 0x10]
cmp byte [rcx + 0x19], 0
je 0x1800119f0
cmp rbx, qword [r10]
jne 0x180011a2e
cmp byte [r14 + 0x19], 0
je 0x180011a2e
mov rcx, r15
call fcn.180016140
mov rcx, qword [rsi + 0x28]
mov rcx, qword [rcx + 0x58]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
jmp 0x180011b08
cmp rbx, r14
je 0x180011afa
nop word [rax + rax]
mov rdx, rbx
lea r8, [rbx + 0x10]
mov rax, qword [r8]
cmp byte [rax + 0x19], 0
je 0x180011a98
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x180011a73
nop word [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x180011a73
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180011a60
mov rbx, rax
mov rcx, qword [rdx + 8]
cmp byte [rcx + 0x19], 0
jne 0x180011adc
mov rax, rdx
cmp rax, qword [rcx + 0x10]
jne 0x180011adc
mov rax, rcx
mov rcx, qword [rcx + 8]
cmp byte [rcx + 0x19], 0
je 0x180011a83
jmp 0x180011adc
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x180011abf
nop dword [rax]
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180011ab0
mov rax, qword [r8]
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x180011adc
nop dword [rax + rax]
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180011ad0
mov rcx, r15
call fcn.180015dc0
mov edx, 0x20
mov rcx, rax
call fcn.18008a564
cmp rbx, r14
jne 0x180011a40
mov rcx, qword [rsi + 0x28]
mov rcx, qword [rcx + 0x58]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov rdx, qword [rbp + 0x77]
mov r15, qword [rbp + 0x67]
mov rax, qword [rdi + 0x10]
cmp byte [rax + 0x19], 0
je 0x180011b3c
mov rax, qword [rdi + 8]
cmp byte [rax + 0x19], 0
jne 0x180011b37
cmp rdi, qword [rax + 0x10]
jne 0x180011b37
mov rdi, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180011b24
mov rdi, rax
jmp 0x180011b5f
mov rdi, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x180011b5f
nop dword [rax + rax]
mov rdi, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180011b50
cmp rdi, qword [r15]
jne 0x180011610
mov eax, dword [rbp - 0x29]
mov dword [rbp + 0x6f], eax
mov r13, qword [rbp - 0x31]
mov r12, qword [rbp - 0x51]
jmp 0x180011b80
mov rdx, qword [rbp - 0x71]
mov qword [rbp + 0x77], rdx
mov rax, qword [r15 + 0xa8]
mov rbx, qword [rax]
mov r14, qword [rbp - 0x59]
cmp rbx, rax
je 0x180011d90
nop word [rax + rax]
mov rdi, qword [rbx + 0x28]
mov rax, qword [rdi + 0x38]
cmp qword [rax + 0x88], 0
jbe 0x180011c71
mov rcx, qword [rax + 0xf8]
test rcx, rcx
je 0x180011bde
cmp dword [rcx + 0x3c], 0
je 0x180011bde
call fcn.1800187c0
mov rcx, qword [rdi + 0x38]
cmp qword [rcx + 0x88], rax
ja 0x180011c71
mov rax, qword [rdi + 0x38]
mov qword [rax + 0x88], 0
mov rax, qword [rbx + 0x28]
mov rcx, qword [rax + 0x38]
mov byte [rcx + 0x6b], 1
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rdi, rax
mov edx, 1
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
mov rsi, rax
lea rcx, [rbp - 0x49]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x180011c4e
lea rcx, [rbp + 0x7f]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x180011c4e
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
imul rax, qword [rbp + 0x7f], 0xf4240
xor edx, edx
div qword [rbp - 0x49]
mov rcx, rax
jmp 0x180011c69
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov eax, eax
imul rcx, rax, 0x3e8
mov rax, qword [rbx + 0x28]
mov qword [rax + 8], rcx
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rdi, rax
mov edx, 1
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
mov rsi, rax
lea rcx, [rbp - 0x39]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x180011cc3
lea rcx, [rbp - 0x41]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x180011cc3
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
imul rax, qword [rbp - 0x41], 0xf4240
xor edx, edx
div qword [rbp - 0x39]
jmp 0x180011cde
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov eax, eax
imul rax, rax, 0x3e8
mov rcx, qword [rbx + 0x28]
sub rax, qword [rcx + 8]
cmp rax, 0xf4240
jbe 0x180011d31
mov rax, qword [rcx + 0x38]
mov rcx, qword [rax + 0x2f8]
test rcx, rcx
je 0x180011d04
cmp byte [rcx + 0x20], 0
jne 0x180011d31
lea r8, [rbx + 0x20]
cmp r14, r12
je 0x180011d1d
mov eax, dword [r8]
mov dword [r14], eax
add r14, 4
mov qword [rbp - 0x59], r14
jmp 0x180011d31
mov rdx, r14
lea rcx, [rbp - 0x61]
call fcn.180016640
mov r12, qword [rbp - 0x51]
mov r14, qword [rbp - 0x59]
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x180011d5d
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x180011d58
cmp rbx, qword [rax + 0x10]
jne 0x180011d58
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180011d45
mov rbx, rax
jmp 0x180011d7f
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x180011d7f
nop dword [rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180011d70
cmp rbx, qword [r15 + 0xa8]
jne 0x180011ba0
mov rdx, qword [rbp + 0x77]
mov r15, qword [rbp - 0x79]
mov rdi, r15
cmp r15, rdx
je 0x180011f1f
mov r15, qword [rbp + 0x67]
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [r15]
mov rcx, qword [r9 + 8]
mov rax, rcx
mov rbx, r9
mov rsi, r9
cmp byte [rcx + 0x19], 0
jne 0x180011dfb
mov r8d, dword [rdi]
nop dword [rax]
mov edx, dword [rax + 0x20]
cmp edx, r8d
jge 0x180011dde
mov rax, qword [rax + 0x10]
jmp 0x180011df1
cmp byte [rsi + 0x19], 0
je 0x180011deb
cmp r8d, edx
cmovl rsi, rax
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180011dd0
mov rdx, qword [rbp + 0x77]
cmp byte [rsi + 0x19], 0
jne 0x180011e04
mov rcx, qword [rsi]
cmp byte [rcx + 0x19], 0
jne 0x180011e27
mov eax, dword [rdi]
nop dword [rax]
cmp eax, dword [rcx + 0x20]
jge 0x180011e1d
mov rsi, rcx
mov rcx, qword [rcx]
jmp 0x180011e21
mov rcx, qword [rcx + 0x10]
cmp byte [rcx + 0x19], 0
je 0x180011e10
cmp rbx, qword [r9]
jne 0x180011e3f
cmp byte [rsi + 0x19], 0
je 0x180011e3f
mov rcx, r15
call fcn.180015090
jmp 0x180011f0a
cmp rbx, rsi
je 0x180011f0e
nop dword [rax + rax]
mov rdx, rbx
lea r8, [rbx + 0x10]
mov rax, qword [r8]
cmp byte [rax + 0x19], 0
je 0x180011ea8
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x180011e83
nop word [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x180011e83
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180011e70
mov rbx, rax
mov rcx, qword [rdx + 8]
cmp byte [rcx + 0x19], 0
jne 0x180011eec
mov rax, rdx
cmp rax, qword [rcx + 0x10]
jne 0x180011eec
mov rax, rcx
mov rcx, qword [rcx + 8]
cmp byte [rcx + 0x19], 0
je 0x180011e93
jmp 0x180011eec
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x180011ecf
nop dword [rax]
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180011ec0
mov rax, qword [r8]
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x180011eec
nop dword [rax + rax]
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180011ee0
mov rcx, r15
call fcn.180015dc0
mov edx, gethostbyname
mov rcx, rax
call fcn.18008a564
cmp rbx, rsi
jne 0x180011e50
mov rdx, qword [rbp + 0x77]
add rdi, 4
cmp rdi, rdx
jne 0x180011db0
mov r15, qword [rbp - 0x79]
mov rdi, qword [rbp - 0x61]
mov rbx, rdi
cmp rdi, r14
je 0x180011f43
mov rsi, qword [rbp + 0x67]
nop
mov edx, dword [rbx]
mov rcx, rsi
call fcn.180012000
add rbx, 4
cmp rbx, r14
jne 0x180011f30
test rdi, rdi
je 0x180011f81
sub r12, rdi
sar r12, 2
lea rdx, [r12*4]
mov rax, rdi
cmp rdx, 0x1000
jb 0x180011f78
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180011ff3
mov rcx, rdi
call fcn.18008a564
nop
test r15, r15
je 0x180011fc3
mov rax, qword [rbp - 0x69]
sub rax, r15
sar rax, 2
lea rdx, [rax*4]
mov rax, r15
cmp rdx, 0x1000
jb 0x180011fba
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180011fe7
mov rcx, r15
call fcn.18008a564
nop
cmp dword [rbp + 0x6f], 0xffffffff
je 0x180011fd3
mov rcx, qword [r13]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.180090f98
nop
call fcn.18000f910
nop
call fcn.180090f98
int3