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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x10], rdx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2f0
mov r15, r9
mov rbx, r8
mov rsi, rdx
mov rdi, rcx
xor r14d, r14d
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x58], r14
cmp dword [0x18007b9f0], r14d
jne 0x18001f31a
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x18007b9f0], eax
inc dword [0x18007b910]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
sub ecx, dword [0x18007b9f0]
cmp ecx, 0x3e8
jbe 0x18001f34f
mov ecx, dword [0x18007b910]
mov dword [0x18007b914], ecx
mov dword [0x18007b910], r14d
mov dword [0x18007b9f0], eax
call fcn.18001bbb0
test rbx, rbx
je 0x18001fa3d
mov rax, qword [rdi]
lea r8, [rsp + 0x78]
lea rdx, [0x18003f170]
mov rcx, rdi
call qword [rax]
mov rax, qword [rbx]
lea r8, [rsp + 0x58]
lea rdx, [0x18003f170]
mov rcx, rbx
call qword [rax]
cmp qword [rsp + 0x58], r14
je 0x18001fa3d
mov rbx, qword [rsp + 0x78]
test rbx, rbx
je 0x18001fa3d
xor edx, edx
mov r8d, 0x88
lea rcx, [rsp + 0x260]
call fcn.180008040
xor edx, edx
mov r8d, 0x88
lea rcx, [rsp + 0x140]
call fcn.180008040
mov dword [rsp + 0x260], 0x88
mov dword [rsp + 0x140], 0x88
mov rax, qword [rbx]
lea rdx, [rsp + 0x260]
mov rcx, rbx
call qword [rax + 0xb0]
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
lea rdx, [rsp + 0x140]
call qword [rax + 0xb0]
test dword [rsp + 0x2d0], 0x200
je 0x18001fa3d
test rsi, rsi
jne 0x18001f427
mov edi, dword [rsp + 0x26c]
jmp 0x18001f42c
mov edi, dword [rsi + 8]
sub edi, dword [rsi]
mov dword [rsp + 0x40], edi
test rsi, rsi
jne 0x18001f43e
mov ebx, dword [rsp + 0x268]
jmp 0x18001f444
mov ebx, dword [rsi + 0xc]
sub ebx, dword [rsi + 4]
mov dword [rsp + 0x34], ebx
test r15, r15
jne 0x18001f457
mov r13d, dword [rsp + 0x14c]
jmp 0x18001f45e
mov r13d, dword [r15 + 8]
sub r13d, dword [r15]
mov dword [rsp + 0x38], r13d
test r15, r15
jne 0x18001f471
mov eax, dword [rsp + 0x148]
jmp 0x18001f479
mov eax, dword [r15 + 0xc]
sub eax, dword [r15 + 4]
mov dword [rsp + 0x3c], eax
cmp edi, r13d
jne 0x18001fa3d
cmp ebx, eax
jne 0x18001fa3d
test byte [rsp + 0x194], 0x40
je 0x18001fa3d
mov eax, dword [rsp + 0x19c]
add eax, 0xfffffff0
test eax, 0xffffffef
jne 0x18001fa3d
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov r12d, r14d
mov dword [rsp + 0x30], r12d
cmp r12d, dword [0x18007b9f4]
jg 0x18001fa3d
test rsi, rsi
mov r15d, r14d
je 0x18001f4d9
mov r15d, dword [rsi]
jmp 0x18001f4de
mov esi, r14d
jmp 0x18001f4e1
mov esi, dword [rsi + 4]
mov ecx, r12d
call fcn.180013430
mov r13, rax
mov qword [rsp + 0x60], rax
test rax, rax
je 0x18001fa2d
mov rcx, rax
call fcn.180013ac0
mov rbx, rax
mov qword [rsp + 0x340], rax
test rax, rax
je 0x18001fa24
mov qword [rsp + 0x70], 0
mov edi, dword [rax + 0xc]
lea rdx, [rsp + 0x70]
mov ecx, edi
call qword [sym.imp.USER32.dll_ClientToScreen]
lea rdx, [rsp + 0x90]
mov ecx, edi
call qword [sym.imp.USER32.dll_GetClientRect]
mov ecx, edi
call fcn.1800133a0
mov rcx, rax
call qword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x18001f5a0
mov ecx, dword [rsp + 0x98]
cmp ecx, dword [rbx + 0x14]
jne 0x18001f56b
mov eax, dword [rbx + 0x18]
cmp dword [rsp + 0x9c], eax
je 0x18001f5a0
mov r10, qword [0x18007bb48]
test r10, r10
je 0x18001f591
mov rax, qword [r10]
mov rcx, r10
call qword [rax + 0x10]
mov r10, r14
mov qword [0x18007bb48], r14
mov ecx, dword [rsp + 0x98]
mov dword [rbx + 0x14], ecx
mov eax, dword [rsp + 0x9c]
mov dword [rbx + 0x18], eax
jmp 0x18001f5a7
mov r10, qword [0x18007bb48]
test r10, r10
jne 0x18001f6df
xor edx, edx
mov r8d, 0x88
lea rcx, [rsp + 0xb0]
call fcn.180008040
mov dword [rsp + 0xb0], 0x88
mov dword [rsp + 0xb4], 7
mov eax, dword [rbx + 0x14]
cmp dword [rsp + 0x40], eax
jbe 0x18001f5e6
add eax, eax
mov dword [rsp + 0xbc], eax
mov eax, dword [rbx + 0x18]
cmp dword [rsp + 0x34], eax
jbe 0x18001f5f8
add eax, eax
mov dword [rsp + 0xb8], eax
mov dword [rsp + 0x120], 0x840
cmp dword [0x18007badc], 0
je 0x18001f632
test dword [rsp + 0x1b0], 0x4000
mov eax, 0x840
mov ecx, 0x4040
cmovne eax, ecx
mov dword [rsp + 0x120], eax
mov qword [rsp + 0x340], r14
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], r14
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
lea rdx, [rsp + 0x340]
call qword [rax + 0x120]
test eax, eax
jns 0x18001f674
mov rcx, rbx
call fcn.180013a10
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x18001fa3d
mov rcx, qword [rsp + 0x340]
mov rax, qword [rcx]
lea r8, [rsp + 0x48]
lea rdx, [0x18003f160]
call qword [rax]
mov rcx, qword [rsp + 0x340]
test eax, eax
mov rax, qword [rcx]
jns 0x18001f6a1
call qword [rax + 0x10]
jmp 0x18001f65e
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx]
xor r9d, r9d
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0xb0]
call qword [rax + 0x30]
mov rcx, qword [rsp + 0x48]
test eax, eax
mov rax, qword [rcx]
jns 0x18001f6d0
call qword [rax + 0x10]
jmp 0x18001f65e
call qword [rax + 0x10]
mov r10, qword [rsp + 0x50]
mov qword [0x18007bb48], r10
test r15d, r15d
cmove r15d, dword [rsp + 0x70]
test esi, esi
cmove esi, dword [rsp + 0x74]
sub r15d, dword [rsp + 0x70]
mov dword [rsp + 0xa0], r15d
sub esi, dword [rsp + 0x74]
mov dword [rsp + 0xa4], esi
mov eax, dword [rsp + 0x38]
add eax, r15d
mov dword [rsp + 0xa8], eax
mov eax, dword [rsp + 0x3c]
add eax, esi
mov dword [rsp + 0xac], eax
mov rax, qword [r10]
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], 0x1000000
mov r9, qword [rsp + 0x348]
mov r8, qword [rsp + 0x58]
lea rdx, [rsp + 0xa0]
mov rcx, r10
call qword [rax + 0x28]
test eax, eax
js 0x18001f65e
mov edi, dword [0x18007b0e4]
mov dword [rsp + 0x48], edi
mov edx, edi
mov ecx, r12d
call fcn.18001ade0
mov rsi, rax
mov qword [rsp + 0x88], rax
test rax, rax
je 0x18001f9f8
mov r15, qword [0x18007bb48]
mov qword [rsp + 0x60], r15
xor edx, edx
mov r8d, 0x88
lea rcx, [rsp + 0x1d0]
call fcn.180008040
mov dword [rsp + 0x1d0], 0x88
mov r10, qword [r15]
mov qword [rsp + 0x20], r14
mov r9d, 1
lea r8, [rsp + 0x1d0]
xor edx, edx
mov rcx, r15
call qword [r10 + 0xc8]
test eax, eax
jne 0x18001f9ef
test edi, edi
je 0x18001f7ed
mov edx, 0xbb8
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x18001f9e1
mov rdi, qword [rsp + 0x1f8]
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x340], eax
lea rsi, [rbx + 0x24]
mov r15d, dword [rbx + 0x14]
shl r15d, 2
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov eax, dword [rbx + 0x18]
mov r12d, dword [rbx + 0x14]
lea ecx, [r12*4]
mov dword [rbx + 0x20], r14d
cmp dword [rsp + 0x22c], 0x10
jne 0x18001f839
mov dword [rbx + 0x20], 1
movsxd rdx, dword [rsp + 0x48]
test edx, edx
jne 0x18001f846
mov dword [rbx + 0x20], r14d
mov r8, rdx
mov qword [rsp + 0x50], rdx
test eax, eax
je 0x18001f9aa
movsxd r15, r15d
mov qword [rsp + 0x68], r15
mov r15, rax
mov qword [rsp + 0x80], rax
movsxd rax, dword [rsp + 0x340]
mov rdx, qword [rsp + 0x68]
nop word [rax + rax]
cmp dword [rsp + 0x22c], 0x10
jne 0x18001f96b
test r8, r8
jne 0x18001f963
test r12d, r12d
je 0x18001f993
mov r10, rsi
mov r11, rdi
mov r15, r12
nop dword [rax]
movzx r9d, word [r11]
mov r8d, r9d
shr r8d, 8
and r8d, 0xf8
mov ecx, r9d
shr ecx, 3
and ecx, 0xfc
and r9d, 0x1f
shl r9d, 3
mov eax, 0x8421085
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 4
add r8d, eax
mov eax, 0x4104105
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
add ecx, eax
mov eax, 0x8421085
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 4
add r9d, eax
mov eax, 0xff
cmp r8d, eax
cmova r8d, eax
cmp ecx, eax
cmova ecx, eax
cmp r9d, eax
cmova r9d, eax
movzx ecx, cl
shl ecx, 8
movzx eax, r8b
shl eax, 0x10
or ecx, eax
movzx eax, r9b
or ecx, eax
mov dword [r10], ecx
lea r11, [r11 + 2]
lea r10, [r10 + 4]
dec r15
jne 0x18001f8b0
mov r15, qword [rsp + 0x80]
jmp 0x18001f979
mov r8d, ecx
shr r8, 1
jmp 0x18001f96e
mov r8d, ecx
mov rdx, rdi
mov rcx, rsi
call fcn.1800029a0
lea ecx, [r12*4]
movsxd rax, dword [rsp + 0x340]
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x50]
add rdi, rax
add rsi, rdx
dec r15
mov qword [rsp + 0x80], r15
jne 0x18001f880
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbx + 0x1c], 1
mov rsi, qword [rsp + 0x88]
mov rcx, rsi
cmp dword [rsp + 0x48], 0
je 0x18001f9d1
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
jmp 0x18001f9d7
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov r15, qword [rsp + 0x60]
mov r12d, dword [rsp + 0x30]
mov rax, qword [r15]
xor edx, edx
mov rcx, r15
call qword [rax + pe_nt_image_headers64]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rbx
call fcn.180013a10
jmp 0x18001fa24
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
inc r12d
mov rsi, qword [rsp + 0x338]
jmp 0x18001f4ba
mov rbx, qword [rsp + 0x78]
test rbx, rbx
je 0x18001fa50
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x18001fa60
mov rax, qword [rcx]
call qword [rax + 0x10]
add rsp, 0x2f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret