Function at 0x140001bf0
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x140068080]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov ebx, dword [rsp + 0xb0]
mov rdi, rcx
cmp ebx, 0x14
lea rcx, [rsp + 0x38]
mov r13d, 1
mov r15d, 0xa
cmova r13d, r15d
mov r14d, r9d
mov ebp, r8d
mov rsi, rdx
call qword [sym.imp.api_ms_win_core_profile_l1_1_0.dll_QueryPerformanceCounter]
mov rcx, qword [rdi + 0x280]
movabs rax, 0x20c49ba5e353f7cf
imul rcx, rbx
imul rcx
mov rbx, rdx
sar rbx, 7
mov rax, rbx
shr rax, 0x3f
add rbx, rax
add rbx, qword [rsp + 0x38]
cmp ebp, 3
jne 0x140001dfd
mov edx, ebp
mov rcx, qword [rdi + 0x278]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_WaitForSingleObject]
mov edx, r13d
mov rcx, qword [rdi + 0x278]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_WaitForSingleObject]
mov qword [rsp + 0xa0], r12
nop dword [rax]
test rsi, rsi
je 0x140001ecf
cmp r14d, 0x216
ja 0x140001ecf
mov dword [rsi + 0x10], SafeArrayGetDim
lea r15, [rsi + 0x28]
mov dword [rsi + 0x18], 0x223
mov eax, dword [rdi + 0x20]
mov dword [rsi + 0x1c], eax
mov byte [r15], bpl
mov dword [rsi + 0x20], r14d
test dword [0x14006a900], 0x2000000
je 0x140001cfb
mov r8d, dword [rdi + 0x20]
lea rdx, [0x14004a050]
mov rcx, qword [0x14006a910]
xor r9d, r9d
call fcn.140002320
lea eax, [rbp - 3]
test eax, 0xfffffffb
jne 0x140001d10
lea rcx, [rsp + 0x30]
call qword [sym.imp.api_ms_win_core_profile_l1_1_0.dll_QueryPerformanceCounter]
mov rcx, qword [rdi + 0x18]
xor r9d, r9d
mov r8d, 0x23f
mov dword [rsp + 0x20], 0
mov rdx, rsi
call fcn.140002940
lea ecx, [rbp - 3]
mov r12d, eax
test ecx, 0xfffffffb
je 0x140001d46
lea rcx, [rsp + 0x30]
call qword [sym.imp.api_ms_win_core_profile_l1_1_0.dll_QueryPerformanceCounter]
cmp ebp, 0xb
jle 0x140001d5b
mov rcx, rdi
call fcn.140001a60
test eax, eax
js 0x140001e96
test r12d, r12d
js 0x140001e33
test dword [0x14006a904], 0x20000
je 0x140001d99
movzx eax, word [rsi + 0x24]
lea rdx, [0x14004a020]
movzx r9d, byte [r15]
mov r8d, dword [rdi + 0x20]
mov rcx, qword [0x14006a910]
mov qword [rsp + 0x28], r15
mov word [rsp + 0x20], ax
call fcn.140002280
cmp ebp, 0xc
jne 0x140001dac
mov eax, dword [rsi + 0x24]
cmp eax, r14d
jae 0x140001dac
test eax, eax
cmovne r14d, eax
cmp dword [rsi + 0x24], r14d
jne 0x140001e5c
movzx eax, byte [r15]
cmp ebp, eax
jne 0x140001e5c
cmp qword [rsp + 0x30], rbx
jg 0x140001e8f
test dword [0x14006a900], 0x2000000
je 0x140001df5
movzx r9d, byte [rsi + 0x28]
lea rdx, [0x14004a040]
mov r8d, dword [rdi + 0x20]
mov rcx, qword [0x14006a910]
call fcn.140002320
mov eax, r12d
jmp 0x140001ed4
cmp ebp, 7
jne 0x140001e0a
mov edx, r15d
jmp 0x140001c78
cmp ebp, r15d
jne 0x140001c85
cmp dword [rdi + 0x24], 1
jne 0x140001e21
mov edx, r15d
jmp 0x140001c88
mov edx, 3
mov rcx, rdi
call fcn.1400017f0
jmp 0x140001c95
test dword [0x14006a900], 0x2000000
je 0x140001e5c
mov r8d, dword [rdi + 0x20]
lea rdx, [0x14004a060]
mov rcx, qword [0x14006a910]
mov r9d, 1
call fcn.140002320
cmp ebp, 0xa
jne 0x140001e74
cmp dword [rdi + 0x24], 2
jne 0x140001e74
mov edx, r13d
mov rcx, rdi
call fcn.1400017f0
jmp 0x140001e84
mov rcx, qword [rdi + 0x278]
mov edx, r13d
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_WaitForSingleObject]
cmp qword [rsp + 0x30], rbx
jle 0x140001ca0
mov eax, 0x8001011f
jmp 0x140001ed4
test dword [0x14006a904], 0x20000
je 0x140001ecf
mov r8d, dword [rdi + 0x20]
lea rdx, [0x14004a0c0]
mov rcx, qword [0x14006a910]
mov r9d, 1
mov dword [rsp + 0x28], eax
lea rax, str.LI_Failure_during_auth_:_Read
mov qword [rsp + 0x20], rax
call fcn.140002380
mov eax, 0x80004005
mov r12, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.140013c00
add rsp, 0x50
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret