Function at 0x140008ca0
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, 0x20
xor ebx, ebx
lea rbp, [0x140000000]
cmp byte [0x1401071ea], bl
movzx r15d, r9b
movzx r12d, r8w
movzx edi, dl
mov r13, rcx
je 0x140008d91
movzx eax, byte [0x1401071e8]
cmp al, 0xa0
je 0x140008cf2
cmp al, 0x10
jne 0x140008d91
call qword [sym.imp.KERNEL32.DLL_GetTickCount]
sub eax, dword [0x1401071f0]
cmp eax, 0x16
jae 0x140008d91
mov eax, 0x100
test ax, r12w
jne 0x140008d30
cmp dil, 0x2e
ja 0x140008d30
movzx eax, dil
movabs rcx, 0x61fe00001000
bt rcx, rax
jae 0x140008d30
mov al, 1
jmp 0x140008d32
xor al, al
cmp byte [0x1401071e9], bl
jne 0x140008d54
mov rax, rbx
nop dword [rax]
cmp byte [rax + rbp + 0x1071f8], bl
jne 0x140008d5d
inc rax
cmp rax, 0x16
jl 0x140008d40
jmp 0x140008d91
test r15b, r15b
je 0x140008d66
test al, al
je 0x140008d91
mov byte [0x14010719f], 1
jmp 0x140008d6a
test al, al
je 0x140008d91
movzx eax, byte [0x1401071eb]
mov byte [0x140102cbd], al
movzx eax, byte [0x1401071ee]
mov byte [0x140102cd0], al
movzx eax, byte [0x1401071ef]
mov byte [0x140102d60], al
movzx eax, byte [0x140102cbd]
mov byte [0x1401071eb], al
movzx eax, byte [0x140102cd0]
mov byte [0x1401071ee], al
movzx eax, byte [0x140102d60]
movzx r14d, dil
imul rcx, r14, 0x128
mov byte [0x1401071ef], al
mov rax, qword [0x140102df8]
movzx esi, byte [rcx + rax + 8]
test sil, sil
je case.default.0x140008f12
mov ecx, dword [r13 + 8]
movzx r8d, r15b
mov rbp, qword [r13 + 0x10]
movzx edx, dil
call fcn.140009000
test r15b, r15b
je 0x140008ebf
cmp byte [rsp + 0x70], bl
jne 0x140008e18
movzx ecx, sil
mov edx, 0xffc3d44f
not cl
and byte [0x140102cbf], cl
cmp rbp, rdx
je 0x140008e18
and byte [0x140102cbe], cl
lea rbp, [0x140000000]
test al, al
je case.default.0x140008f12
not sil
movzx eax, dil
and byte [0x140102cbd], sil
add eax, 0xffffff60
mov byte [r14 + rbp + 0x102cc0], bl
cmp eax, 5
ja case.default.0x140008f12
cdqe
mov ecx, dword [rbp + rax*4 + 0x8fc4]
add rcx, rbp
jmp rcx
movzx eax, byte [0x140102d61]
mov byte [0x140102cd0], al
jmp case.default.0x140008f12
movzx eax, byte [0x140102d60]
mov byte [0x140102cd0], al
jmp case.default.0x140008f12
movzx eax, byte [0x140102d63]
mov byte [0x140102cd1], al
jmp case.default.0x140008f12
movzx eax, byte [0x140102d62]
mov byte [0x140102cd1], al
jmp case.default.0x140008f12
movzx eax, byte [0x140102d65]
mov byte [0x140102cd2], al
jmp case.default.0x140008f12
movzx eax, byte [0x140102d64]
mov byte [0x140102cd2], al
jmp case.default.0x140008f12
cmp byte [rsp + 0x70], bl
jne 0x140008edd
or byte [0x140102cbf], sil
mov edx, 0xffc3d44f
cmp rbp, rdx
je 0x140008edd
or byte [0x140102cbe], sil
lea rbp, [0x140000000]
test al, al
je case.default.0x140008f12
or byte [0x140102cbd], sil
movzx eax, dil
add eax, 0xffffff60
mov byte [r14 + rbp + 0x102cc0], 0x80
cmp eax, 5
ja case.default.0x140008f12
cdqe
mov ecx, dword [rbp + rax*4 + 0x8fdc]
add rcx, rbp
jmp rcx
mov byte [0x140102cd0], 0x80
jmp case.default.0x140008f12
mov byte [0x140102cd1], 0x80
jmp case.default.0x140008f12
mov byte [0x140102cd2], 0x80
test byte [r13 + 8], 0x10
mov byte [0x1401071e8], dil
mov word [0x1401071ec], r12w
mov byte [0x1401071e9], r15b
jne 0x140008f7d
cmp dil, 0xa0
je 0x140008f56
cmp dil, 0x10
jne 0x140008f81
test r15b, r15b
jne 0x140008f81
cmp byte [0x14010719f], bl
je 0x140008f81
cmp byte [rbx + rbp + 0x1071f8], 0
jne 0x140008f81
inc rbx
cmp rbx, 0x16
jl 0x140008f63
mov byte [0x14010719f], 0
xor al, al
jmp 0x140008f95
call qword [sym.imp.KERNEL32.DLL_GetTickCount]
mov dword [0x140107178], eax
mov dword [0x14010634c], eax
mov al, 1
mov byte [0x1401071ea], al
call qword [sym.imp.KERNEL32.DLL_GetTickCount]
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov dword [0x1401071f0], eax
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret