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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x6f0
mov rax, qword [0x18003acf8]
xor rax, rsp
mov qword [rsp + 0x6e0], rax
mov rdi, rdx
mov r13d, ecx
lea edx, [rcx - 0xe]
mov dword [rsp + 0x34], edx
cmp ecx, edx
jbe case.0x180008565.10
mov rbp, qword [rsp + 0x48]
lea r12d, [rcx - 0xeb]
mov r14, qword [rsp + 0x48]
mov esi, dword [rsp + 0x48]
mov r15d, dword [rsp + 0x48]
lea r8, [0x180000000]
cmp r12d, 0x30
ja case.0x180008565.14
movzx eax, byte [r8 + r12 + 0x8910]
mov ecx, dword [r8 + rax*4 + 0x88d4]
add rcx, r8
jmp rcx
mov r9d, 0x56
mov qword [rsp + 0x20], rdi
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.18000a260
cmp eax, 2
jne 0x18000887e
mov ebx, 0x2b
nop dword [rax]
mov eax, ebx
sub eax, 0x27
je 0x1800085cd
sub eax, 1
je 0x18000887e
sub eax, 3
je 0x1800085c5
cmp eax, 4
jne 0x1800085cd
mov rax, qword [0x18003ae08]
test rax, rax
je 0x1800085cd
mov rcx, qword [rdi]
xor edx, edx
mov r8d, 0x8000
call rax
jmp 0x1800085cd
mov eax, 1
xchg dword [rdi + 0xc], eax
inc ebx
cmp ebx, 0x2f
jb 0x180008590
jmp 0x18000887e
mov rbp, 0xffffffffffffffff
mov rcx, rdi
lea edx, [rbp + 0xd]
call fcn.180015ea0
test al, al
jne 0x18000887e
mov rcx, qword [0x18003add8]
xor edx, edx
mov r8d, 0xac
call fcn.1800159b0
xor eax, eax
jmp 0x180008895
mov ebx, 0x2b
mov eax, ebx
sub eax, 0x27
je 0x18000864d
sub eax, 1
je 0x18000887e
sub eax, 3
je 0x180008648
cmp eax, 4
jne 0x18000864d
mov rax, qword [0x18003ae08]
test rax, rax
je 0x18000864d
mov rcx, qword [rdi]
xor edx, edx
mov r8d, 0x8000
call rax
jmp 0x18000864d
xor eax, eax
xchg dword [rdi + 0xc], eax
inc ebx
cmp ebx, 0x2f
jb 0x180008613
jmp 0x18000887e
movzx eax, byte [rsp + 0x30]
xor ecx, ecx
cmp dword [rsp + 0x48], ecx
mov r8d, 0xac
cmovne ecx, eax
xor edx, edx
mov byte [rsp + 0x30], cl
mov rcx, qword [0x18003add8]
call fcn.1800159b0
cmp byte [rsp + 0x30], 0
je 0x18000887e
mov ebx, 0x6e
nop
mov eax, ebx
sub eax, 0x6c
je 0x1800086d7
sub eax, 1
je 0x1800086a6
cmp eax, 1
jne 0x1800086e0
xor r14d, r14d
jmp 0x1800086e0
xor edx, edx
lea rcx, [rsp + 0x54]
mov r8d, 0x68c
call sub.VCRUNTIME140.dll_memset
lea r8, [rsp + 0x50]
mov dword [rsp + 0x50], 0x690
mov rdx, r14
mov rcx, rbp
call qword [sym.imp.dbghelp.dll_SymGetModuleInfo64]
mov dword [rsp + 0x48], eax
jmp 0x1800086e0
mov rcx, rbp
call qword [sym.imp.dbghelp.dll_SymCleanup]
dec ebx
cmp ebx, 0x6b
ja 0x180008690
jmp 0x18000887e
xor r9d, r9d
mov r8, rdi
xor edx, edx
mov ecx, 0xd9
call fcn.1800216f0
jmp 0x18000887e
cmp byte [0x18003ca60], 0
je 0x1800088c6
mov rcx, rdi
call qword [0x18003ca30]
mov byte [0x18003ca61], al
jmp 0x18000887e
mov rcx, qword [0x18003add8]
lea r9, [rsp + 0x38]
xor r8d, r8d
mov byte [rsp + 0x38], 1
mov edx, 0xea
call fcn.180017af0
jmp 0x18000887e
mov r9d, 0x56
mov qword [rsp + 0x20], rdi
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.18000a260
test eax, eax
je case.0x180008565.10
mov ebx, 0x2b
nop dword [rax + rax]
mov eax, ebx
sub eax, 0x27
je 0x1800087a9
sub eax, 1
je 0x1800087b0
sub eax, 3
je 0x1800087a1
cmp eax, 4
jne 0x1800087a9
mov rax, qword [0x18003ae08]
test rax, rax
je 0x1800087a9
mov rcx, qword [rdi]
xor edx, edx
mov r8d, 0x8000
call rax
jmp 0x1800087a9
mov eax, 3
xchg dword [rdi + 0xc], eax
inc ebx
cmp ebx, 0x2f
jb 0x180008770
mov rcx, qword [rdi]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
jmp 0x18000887e
movzx eax, byte [0x18003ca61]
mov byte [rsp + 0x40], al
jmp case.0x180008565.14
xor esi, esi
xor r8d, r8d
xor edx, edx
mov rcx, rbp
call qword [sym.imp.dbghelp.dll_SymInitialize]
mov dword [rsp + 0x48], eax
jmp 0x18000887e
mov rcx, qword [rdi + 0x28]
call qword [rdi + 0x20]
test al, al
je 0x18000887e
mov ebx, 0xd4
cmp ebx, 0xd4
je 0x18000882c
cmp ebx, 0x22c8
jne 0x180008850
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov eax, 0x10624dd3
sub ecx, r15d
mul ecx
mov esi, edx
shr esi, 6
call qword [rdi + 0x50]
jmp 0x180008850
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r9, rdi
mov qword [rsp + 0x20], 0
xor r8d, r8d
xor edx, edx
mov ecx, 0x105
mov r15d, eax
call fcn.180012f90
add ebx, 0x21f4
cmp ebx, 0x43e8
jbe 0x180008800
jmp 0x18000887e
mov rdx, qword [0x18003add8]
mov ecx, 0x1c
call fcn.180017060
test al, al
je 0x180008607
mov byte [rsp + 0x30], 1
mov edx, dword [rsp + 0x34]
dec r13d
dec r12d
cmp r13d, edx
ja 0x180008540
mov eax, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x6e0]
xor rcx, rsp
call fcn.1800259a0
lea r11, [rsp + 0x6f0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov byte [rsp + 0x40], 0
jmp case.0x180008565.10
mov eax, esi
jmp 0x180008895