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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xf0
xor r14d, r14d
mov r13, rdx
movzx esi, r8b
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
lea rdx, [0x100031fb0]
lea rcx, [0x100088c10]
xor r9d, r9d
mov r8d, 0xea60
mov qword [rsp + 0x28], r14
mov edi, r14d
mov dword [rsp + 0x20], r14d
call fcn.100074b9c
lea r15, [0x1000871c0]
mov rcx, r15
mov r12d, eax
call fcn.10007b398
lea rdx, [0x100087208]
mov r8, r13
mov rcx, r15
call fcn.10007b8a8
lea ebx, [r14 + 1]
mov ebp, eax
cmp eax, 0xffffffff
je 0x10007b5e4
lea rcx, [0x100087208]
mov edx, eax
call fcn.10007bad8
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [rbx + 0x208]
cmp eax, r12d
jae 0x10007b5db
lea rcx, [0x100087208]
mov edx, ebp
call fcn.10007bad8
lea ebx, [r14 + 1]
mov edi, dword [rax + 0x20c]
jmp 0x10007b625
mov ebx, 1
mov esi, ebx
jmp 0x10007b625
lea rdx, [0x1000871f0]
mov r8, r13
mov rcx, r15
call fcn.10007b8a8
mov ebp, eax
cmp eax, 0xffffffff
je 0x10007b625
lea rcx, [0x1000871f0]
mov edx, eax
call fcn.10007bad8
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [rbx + 0x208]
mov ebx, 1
cmp eax, r12d
cmovae esi, ebx
cmp byte [0x10008895c], r14b
je 0x10007b63d
sub dword [0x1000871e8], ebx
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp esi, r14d
je 0x10007b822
cmp edi, r14d
jl 0x10007b822
lea rcx, [rsp + 0x40]
call fcn.10007d40c
lea rcx, [rsp + 0x60]
call fcn.1000750dc
lea rcx, [rsp + 0x50]
call fcn.10007d40c
lea rdx, [rsp + 0x60]
mov rcx, r13
call fcn.100075160
lea rdx, [0x1000062c0]
lea rcx, [rsp + 0x60]
call fcn.100075804
cmp eax, r14d
mov edi, eax
jl 0x10007b7b9
lea r8, [rsp + 0x40]
lea rcx, [rsp + 0x60]
mov edx, 0xa
call fcn.100075298
cmp eax, r14d
mov edi, eax
jl 0x10007b7b9
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x60]
call fcn.100075d58
cmp eax, r14d
mov edi, eax
jl 0x10007b7b9
mov rdi, qword [rsp + 0x40]
mov eax, r14d
cmp rdi, r14
je 0x10007b6e3
cmp word [rdi], r14w
setne al
cmp al, r14b
je 0x10007b73c
cmp rdi, r14
je 0x10007b6fd
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rdi, qword [rsp + 0x40]
jmp 0x10007b700
mov eax, r14d
mov rcx, qword [rsp + 0x50]
dec eax
movsxd rbx, eax
call fcn.10007e90c
cmp word [rdi + rbx*2], ax
jne 0x10007b737
mov rcx, qword [rsp + 0x40]
cmp rcx, r14
je 0x10007b72c
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rcx, qword [rsp + 0x40]
jmp 0x10007b72f
mov eax, r14d
cdqe
mov word [rcx + rax*2 - 2], r14w
mov rdi, qword [rsp + 0x40]
mov rcx, rdi
call fcn.10007a13c
cmp eax, r14d
mov edi, eax
jge 0x10007b7b9
cmp ebp, 0xffffffff
je 0x10007b7b9
mov rcx, r15
call fcn.10007b398
lea rdx, [0x100087208]
mov r8, r13
mov rcx, r15
call fcn.10007b8a8
mov esi, eax
cmp eax, 0xffffffff
je 0x10007b7a1
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea rcx, [0x100087208]
mov edx, esi
mov ebx, eax
call fcn.10007bad8
lea rcx, [0x100087208]
mov edx, esi
mov dword [rax + 0x208], ebx
call fcn.10007bad8
mov edi, dword [rax + 0x20c]
cmp byte [0x10008895c], r14b
je 0x10007b7b9
dec dword [0x1000871e8]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rsp + 0x50]
call fcn.10007d970
lea rcx, [rsp + 0xc8]
call fcn.1000783b0
lea rcx, [rsp + 0xb8]
call fcn.10007d970
lea rcx, [rsp + 0xa8]
call fcn.10007d970
lea rcx, [rsp + 0x98]
call fcn.10007d970
lea rcx, [rsp + 0x88]
call fcn.10007d970
lea rcx, [rsp + 0x70]
call fcn.10007d970
lea rcx, [rsp + 0x60]
call fcn.10007d970
lea rcx, [rsp + 0x40]
call fcn.10007d970
lea r11, [rsp + 0xf0]
mov eax, edi
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret