Function at 0x14005bd20
Capabilities:
Check for time delay via queryperformancecounter
Encode data using base64

Disassembly:
push rsi
sub rsp, 0x20
mov rcx, qword [rcx]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov esi, eax
test eax, eax
je 0x140052df5
cmp esi, 0x102
je 0x140052df5
mov ecx, esi
call fcn.140001130
test esi, esi
sete al
add rsp, 0x20
pop rsi
ret
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe8
movapd xmmword [rsp + 0xd0], xmm6
mov rsi, rcx
mov rax, qword [0x14013a028]
xor rax, rsp
mov qword [rsp + 0xc8], rax
test rdx, rdx
jle 0x14005ccc5
movapd xmm0, xmmword [0x140119af0]
movapd xmmword [rsp + 0x60], xmm0
movabs r15, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xa0], r15
movapd xmmword [rsp + 0x90], xmm0
movapd xmmword [rsp + 0x80], xmm0
movapd xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], 0
mov byte [rsp + 0xa0], 0
cmp byte [rsi + 8], 0
je 0x14005c1d5
movabs r12, 0x7fffffffffffffff
cmp rdx, r12
je 0x14005be31
mov rdi, rdx
mov rax, qword [0x14013c540]
lea rcx, [0x140080280]
cmp rax, rcx
jne 0x14005cae2
lea rbx, [rsp + 0x40]
mov qword [rbx], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rbx]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14005ccf8
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014bb88]
mov rbx, rax
mov qword [rsp + 0xc0], rbx
mov rdx, rdi
lea rax, [rbx + rdi]
sar rax, 0x3f
btc rax, 0x3f
add rbx, rdi
cmovo rbx, rax
jmp 0x14005be34
mov rbx, r12
mov r15, qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea r14, [rsp + 0x40]
mov r13, qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
movabs rdi, 0x20c49ba5e353f7cf
mov rbp, rdx
mov rcx, rdx
jmp 0x14005bed0
mov ecx, eax
call fcn.140001130
mov rax, qword [0x14013c540]
lea rcx, [0x140080280]
cmp rax, rcx
jne 0x14005c880
mov qword [rsp + 0x40], 0
mov rcx, r14
call r13
mov rax, qword [rsp + 0x40]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14005cc87
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014bb88]
xor edx, edx
cmp rbx, rax
setns dl
add rdx, r12
mov rcx, rbx
sub rcx, rax
cmovo rcx, rdx
jle 0x14005bf82
mov edx, 0xffffffff
cmp rcx, r12
je 0x14005bf03
mov rax, rcx
shr rax, 3
mul rdi
shr rdx, 4
imul rax, rdx, 0x3e8
cmp rax, rcx
adc rdx, 0
mov rax, rdx
shr rax, 0x20
jne 0x14005c71d
mov rcx, qword [rsi]
call r15
cmp eax, 0x102
je 0x14005be67
test eax, eax
je 0x14005bf41
cmp rbp, r12
jne 0x14005be67
jmp 0x14005be60
mov qword [rsp + 0xb8], 0x164
mov al, byte [0x14014b974]
test al, al
je 0x14005bf4a
jmp 0x14005ce02
mov dil, 1
cmp byte [rsi + 8], 0
je 0x14005bf26
cmp byte [rsp + 0xa0], 0
jne 0x14005bf8e
mov rcx, qword [rsp + 0xc8]
xor rcx, rsp
call fcn.1400a77a0
mov eax, edi
movaps xmm6, xmmword [rsp + 0xd0]
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor edi, edi
cmp byte [rsp + 0xa0], 0
je 0x14005bf54
mov qword [rsp + 0xc0], 0xa
mov al, byte [0x14014b81a]
test al, al
jne 0x14005c727
call fcn.1400a5674
mov r14d, dword [rax]
call fcn.1400a5674
mov dword [rax], 0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov r15, qword [rsp + 0x60]
test r15, r15
je 0x14005c05c
cmp qword [rsp + 0x68], 0
jne 0x14005c05c
cmp byte [r15 + 0x19], 0
je 0x14005c05c
mov rbx, qword [r15 + 0x28]
add rbx, 0x68
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14005c955
mov qword [r15 + 0x20], 0
cmp byte [r15 + 0x3b], 0
jne 0x14005c04c
cmp byte [r15 + 0x39], 0
mov rax, qword [r15 + 0x28]
jne 0x14005c898
dec dword [rax + 0x130]
cmp byte [r15 + 0x19], 0
je 0x14005cd49
cmp byte [r15 + 0x18], 0
jne 0x14005c04c
cmp byte [r15 + 0x3a], 0
mov rcx, qword [r15 + 0x28]
jne 0x14005cd7e
dec dword [rcx + 0x134]
mov word [r15 + 0x39], 0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
call fcn.1400a5674
mov dword [rax], r14d
cmp byte [rsp + 0x98], 0
je 0x14005c083
mov rbx, qword [rsp + 0x90]
test rbx, rbx
jne 0x14005c0df
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x14005c095
mov rcx, qword [rsp + 0x78]
mov qword [rax], rcx
movabs rsi, 0xfffffffc00000000
mov rcx, qword [rsp + 0x68]
mov rax, rcx
and rax, rsi
cmp rax, qword [0x14013c508]
je 0x14005ccae
mov qword [rsp + 0x68], 0
mov rcx, qword [rsp + 0x60]
and rsi, rcx
cmp rsi, qword [0x14013c508]
jne 0x14005bf54
call fcn.14005dfe0
jmp 0x14005bf54
mov rax, qword [fcn.1400801d0]
lea rcx, [0x140080280]
cmp rax, rcx
jne 0x14005cc6e
lea rsi, [rsp + 0x40]
mov qword [rsi], 0
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsi]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14005ce52
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014bb88]
mov qword [rsp + 0xc0], rax
mov r15, qword [rsp + 0x88]
xor ecx, ecx
cmp rax, r15
setns cl
movabs r13, 0x7fffffffffffffff
add rcx, r13
mov r14, rax
sub r14, r15
cmovo r14, rcx
cmp r14, 0xf4240
jge 0x14005cb1c
mov rsi, qword [rsp + 0x90]
test rsi, rsi
je 0x14005c083
lock dec dword [rsi]
jne 0x14005c083
jmp 0x14005cded
mov cl, byte [rax + 0x20]
jmp 0x14005c297
mov eax, dword [0x140151a6c]
mov ecx, dword [0x140148908]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14005ca8f
cmp byte [0x140151a68], 0
jne 0x14005c2d6
jmp 0x14005cad8
mov rcx, r14
call fcn.14005de80
jmp 0x14005c23c
mov qword [rsp + 0x38], rdx
lea rdx, str.TimedWait
lea r8, str....._base_synchronizationwaitable_event.cc
lea r13, [rsp + 0x40]
mov rcx, r13
mov r9d, 0x24
call fcn.1400824a0
cmp byte [rsp + 0xa0], 0
jne 0x14005cd4c
movabs rbx, 0xfffffffc00000000
mov eax, dword [0x140148908]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov r14, qword [rax + 0x168]
mov rax, r14
and rax, rbx
cmp rax, qword [0x14013c508]
je 0x14005c1cb
mov qword [rsp + 0x60], r14
mov eax, dword [0x140148908]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rdi, [rax + 0x170]
mov r14, qword [rdi]
mov rax, r14
and rax, rbx
cmp rax, qword [0x14013c508]
je 0x14005ccb8
lea rax, [rsp + 0x60]
mov qword [rax + 8], r14
mov qword [rax + 0x10], rdi
mov rcx, qword [rdi]
mov qword [rdi], rax
mov qword [rax + 0x18], rcx
mov rax, qword [rax + 8]
test rax, rax
jne 0x14005c18c
xor ecx, ecx
mov byte [rsp + 0x80], cl
xor ecx, ecx
mov byte [rsp + 0x88], cl
mov byte [rsp + 0x98], cl
mov edx, dword [0x140148908]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
cmp byte [rdx + 0x180], cl
je 0x14005c194
test rax, rax
jne 0x14005c99d
mov r12, qword [rsp + 0x60]
test r12, r12
mov rdx, qword [rsp + 0x38]
je 0x14005c63d
cmp qword [rsp + 0x68], 0
jne 0x14005c63d
cmp byte [r12 + 0x19], 0
je 0x14005c63d
mov rdi, qword [r12 + 8]
mov rax, qword [rdi + 0x38]
mov rax, qword [rax + 0x10]
mov eax, dword [rax]
test al, 1
jne 0x14005c9db
mov ebp, dword [rdi + 0x50]
cmp dword [rdi + 0x54], ebp
jne 0x14005cd88
mov qword [rsp + 0xa8], r15
mov r14, qword [r12 + 0x28]
mov rax, qword [r14]
mov rax, qword [rax + 0x48]
lea rcx, [0x1400a3660]
cmp rax, rcx
jne 0x14005cd97
mov ecx, 0x60
call fcn.1400a5638
mov r15, rax
mov rax, r14
and rax, rbx
cmp rax, qword [0x14013c508]
je 0x14005cd63
mov qword [r15 + 8], r14
mov byte [r15 + 0x40], 0
xorpd xmm0, xmm0
movupd xmmword [r15 + 0x10], xmm0
movupd xmmword [r15 + 0x20], xmm0
lea rax, fcn.14008ecd0
mov qword [r15], rax
mov qword [r15 + 0x48], 0
mov qword [rsp + 0xa8], r15
mov r14, qword [r12 + 0x28]
add r14, 0x68
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14005c947
mov rax, qword [0x14013c540]
lea rcx, [0x140080280]
lea r15, [rsp + 0xc0]
cmp rax, rcx
jne 0x14005cc3c
mov qword [r15], 0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [r15]
movabs rcx, 0x8637bd05af7
cmp rax, rcx
jge 0x14005cdc3
imul rax, rax, 0xf4240
cqo
idiv qword [0x14014bb88]
mov qword [r12 + 0x20], rax
cmp byte [r12 + 0x3b], 0
jne 0x14005c533
cmp byte [r12 + 0x19], 0
je 0x14005cd22
cmp byte [r12 + 0x18], 0
jne 0x14005c43a
mov rax, qword [r12 + 0x28]
inc dword [rax + 0x134]
mov rax, qword [r12 + 0x28]
inc dword [rax + 0x130]
mov r15, qword [r12 + 0x28]
cmp byte [r15 + 0x140], 0
jne 0x14005c533
mov r12, qword [rsp + 0xa8]
mov r13, qword [r15 + 0x98]
mov rdi, qword [r15 + 0x128]
test r13, r13
jne 0x14005c74e
xor r13d, r13d
add r13, rdi
cmp r13, qword [r15 + 0x118]
ja 0x14005cafb
mov r13, qword [r15 + 0x98]
mov rdi, qword [r15 + 0x120]
test r13, r13
jne 0x14005c7b1
xor r13d, r13d
mov rbp, qword [r15 + 0xa8]
add rbp, qword [r15 + 0xa0]
je 0x14005c664
mov rax, qword [r15 + 8]
mov eax, dword [rax + 0x1c]
cmp eax, 1
ja 0x14005c664
mov rax, qword [r15 + 0x80]
cmp rax, qword [r15 + 0x88]
je 0x14005cdc0
mov cl, byte [rax + 0x10]
dec cl
cmp cl, 1
ja 0x14005c51c
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x14007ce30]
cmp rdx, r8
je 0x14005c50a
mov rax, rdx
call qword [0x14012eaa8]
lea rcx, [rax + rbp]
dec rcx
add rbp, rax
cmp rcx, 1
adc rbp, 0xffffffffffffffff
add rdi, r13
lea rax, [rdi + rbp]
inc rax
cmp rax, qword [r15 + 0x110]
ja 0x14005c678
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov r14, qword [rsp + 0xa8]
mov qword [rsp + 0xa8], 0
test r14, r14
lea r13, [rsp + 0x40]
je 0x14005c638
mov rax, qword [r14]
mov rax, qword [rax]
lea rcx, [fcn.14008ecd0]
cmp rax, rcx
jne 0x14005cdad
lea rax, fcn.14008ecd0
mov qword [r14], rax
mov rbp, qword [r14 + 0x48]
lea rdi, [r14 + 0x50]
test bpl, 1
jne 0x14005cd25
lea r15, [r14 + 0x48]
cmp rbp, 2
jae 0x14005c68b
test rbp, rbp
jne 0x14005c66b
lea rax, [0x14011be50]
mov qword [r14], rax
mov rdx, qword [r14 + 0x28]
lea rbp, [r14 + 0x30]
mov rax, rdx
mov rdi, rbp
and rax, 1
jne 0x14005cd2d
lea r15, [r14 + 0x28]
mov r12, rdx
shr r12, 1
mov cl, 1
cmp rdx, 2
jae 0x14005c9e5
mov rdx, rbp
test rax, rax
jne 0x14005cd36
test cl, cl
je 0x14005c963
test rax, rax
jne 0x14005cd70
mov qword [r14 + 0x28], 0
cmp byte [r14 + 0x40], 0
jne 0x14005cc4d
mov rdi, qword [r14 + 0x10]
test rdi, rdi
jne 0x14005c84b
mov rcx, qword [r14 + 8]
and rbx, rcx
cmp rbx, qword [0x14013c508]
je 0x14005cd3f
mov rcx, r14
call fcn.1400a5630
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0xb0], 0xa
mov al, byte [0x14014b81a]
test al, al
jne 0x14005c814
mov byte [rsp + 0xa0], 1
jmp 0x14005bda9
xor ebp, ebp
jmp 0x14005c51c
mov rcx, r15
call fcn.140069590
jmp 0x14005c5a7
cmp dword [r15 + 0x130], 0
jle 0x14005c533
jmp 0x14005cb09
shr rbp, 1
shl rbp, 3
xor r13d, r13d
mov qword [rsp + 0x30], rdi
mov r12, qword [rdi + r13]
test r12, r12
je 0x14005ce40
mov eax, 1
lock xadd dword [r12 + 8], eax
cmp eax, 0x7fffffff
je 0x14005cdea
mov qword [rsp + 0xb0], 0x9b
mov al, byte [0x14014b8ab]
test al, al
jne 0x14005cead
mov rax, qword [r12 + 0x70]
lea rdx, [rax + 8]
cmp byte [rax + 0x10], 0
je 0x14005c8e0
lea rdi, [r12 + 8]
mov rcx, qword [rdx]
call qword [sym.imp.KERNEL32.dll_SetEvent]
lock dec dword [rdi]
je 0x14005ce79
add r13, 8
cmp rbp, r13
mov rdi, qword [rsp + 0x30]
jne 0x14005c69a
mov rbp, qword [r15]
lea r13, [rsp + 0x40]
jmp 0x14005c59e
mov edx, 0xffffffff
jmp 0x14005bf03
movzx ecx, al
lea r8, [rsp + 0x40]
mov qword [r8], 0
lea rdx, [rsp + 0xc0]
mov r9d, 2
call fcn.14005e780
jmp 0x14005bfa8
mov rax, qword [r15 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x14005c477
mov rax, qword [r15 + 0x80]
cmp rax, qword [r15 + 0x88]
je 0x14005ce4c
cmp byte [rax + 0x10], 0
jne 0x14005c47a
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x14007ce30]
cmp rdx, r8
jne 0x14005ce8e
lea rcx, [rax + r13]
dec rcx
add r13, rax
cmp rcx, 1
adc r13, 0xffffffffffffffff
jmp 0x14005c47a
mov rax, qword [r15 + 8]
mov eax, dword [rax + 0x1c]
test eax, eax
jne 0x14005c4a1
mov rax, qword [r15 + 0x80]
cmp rax, qword [r15 + 0x88]
je 0x14005ce4f
cmp byte [rax + 0x10], 0
jne 0x14005c4a4
mov rcx, qword [rax]
mov rax, qword [rcx]
mov rdx, qword [rax + 8]
mov eax, 1
lea r8, [0x14007ce30]
cmp rdx, r8
jne 0x14005ce9c
lea rcx, [rax + r13]
dec rcx
add r13, rax
cmp rcx, 1
adc r13, 0xffffffffffffffff
jmp 0x14005c4a4
movzx ecx, al
lea r9, [rsp + 0xc0]
mov qword [r9], r13
lea rax, str.ScopedBlockingCallWithBaseSyncPrimitives
lea r8, [rsp + 0xb8]
mov qword [r8], rax
lea rdx, [rsp + 0xb0]
call fcn.140017ff0
mov rdx, qword [rsp + 0x38]
jmp 0x14005c657
mov r15, qword [r14 + 0x18]
mov rcx, rdi
cmp r15, rdi
je 0x14005c872
add r15, 0xfffffffffffffff0
je 0x14005ceaa
mov rcx, r15
call fcn.140003a40
cmp r15, rdi
jne 0x14005c857
mov rcx, qword [r14 + 0x10]
mov qword [r14 + 0x18], rdi
call fcn.1400a5630
jmp 0x14005c61c
lea rcx, [rsp + 0x40]
call qword [0x14012eaa8]
lea rax, [rsp + 0x40]
mov rax, qword [rax]
jmp 0x14005beb5
mov rcx, qword [rax + 0x80]
mov rdx, qword [rax + 0x110]
dec rdx
mov qword [rax + 0x110], rdx
cmp rcx, qword [rax + 0x88]
je 0x14005c8c2
cmp qword [rax + 0x120], rdx
jae 0x14005c8d0
mov word [rax + 0xb8], 0
jmp 0x14005c025
movzx ecx, word [rcx + 0x10]
mov word [rax + 0xb8], cx
jmp 0x14005c025
mov qword [rsp + 0xb0], 0x164
mov al, byte [0x14014b974]
test al, al
je 0x14005c6eb
movzx ecx, al
mov rax, qword [0x140149db0]
xor rax, rdx
mov rdi, rdx
lea rdx, [rsp + 0xc0]
mov qword [rdx], rax
lea rax, str.WaitableEvent::Signal
lea r8, [rsp + 0xb8]
mov qword [r8], rax
mov qword [rsp + 0x20], rdx
lea rdx, [rsp + 0xb0]
mov r9d, 3
call fcn.140013dc0
mov rdx, rdi
jmp 0x14005c6eb
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005c3b5
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005c001
lea rdi, [rdx + r12*8]
add rdi, 0xfffffffffffffff8
neg r12
test rdi, rdi
je 0x14005cefa
mov rax, qword [rdi]
test rax, rax
je 0x14005c989
lock dec dword [rax + 8]
je 0x14005cf23
add rdi, 0xfffffffffffffff8
inc r12
jne 0x14005c96e
mov rax, qword [r15]
and eax, 1
jmp 0x14005c5f3
cmp byte [rax + 0x38], 0
je 0x14005c2d6
mov r14, qword [rax + 0x30]
mov qword [rax + 0x30], 0
test r14, r14
je 0x14005c2d6
lock dec dword [r14]
jne 0x14005c2d6
mov rcx, r14
call fcn.14000d100
mov rcx, r14
call fcn.1400a5630
jmp 0x14005c2d6
mov ebp, 3
jmp 0x14005c31b
shl r12, 3
xor ecx, ecx
mov r13, qword [rdi + rcx]
test r13, r13
je 0x14005ca0a
mov eax, 1
lock xadd dword [r13 + 8], eax
cmp eax, 0x7fffffff
je 0x14005cef4
mov qword [rsp + 0x30], rcx
mov rax, qword [r14 + 8]
mov rdx, qword [rax + 0x40]
mov r8, qword [rax + 0x48]
test rdx, rdx
je 0x14005ca35
mov eax, 1
lock xadd dword [rdx + 8], eax
cmp eax, 0x7fffffff
je 0x14005cef7
mov rcx, r13
call fcn.140017de0
mov rcx, qword [r14 + 8]
cmp byte [rcx + 0x180], 0
jne 0x14005cefd
test r13, r13
je 0x14005ca5e
lock dec dword [r13 + 8]
je 0x14005cf0e
mov rcx, qword [rsp + 0x30]
add rcx, 8
cmp r12, rcx
jne 0x14005c9eb
mov rcx, qword [r15]
mov r12, rcx
shr r12, 1
mov eax, ecx
and eax, 1
cmp rcx, 2
setb cl
lea r13, [rsp + 0x40]
jmp 0x14005c5df
lea rcx, [0x140151a6c]
call fcn.1400a56f4
cmp dword [0x140151a6c], 0xffffffff
jne 0x14005c1b9
mov rcx, qword [0x14014bae0]
test rcx, rcx
je 0x14005cac0
lea rdx, str.enable_background_thread_pool
call fcn.140061360
mov byte [0x140151a68], 1
lea rcx, [0x140151a6c]
call fcn.1400a5694
jmp 0x14005c1b9
mov rax, qword [rsp + 0x68]
jmp 0x14005c2cd
lea rbx, [rsp + 0xc0]
mov rcx, rbx
call qword [0x14012eaa8]
mov rbx, qword [rbx]
jmp 0x14005be18
cmp dword [r15 + 0x134], 0
jle 0x14005c48a
mov al, 1
mov byte [r12 + 0x40], al
mov byte [r15 + 0x140], al
jmp 0x14005c533
mov ecx, 0x3938700
add rcx, qword [rbx + 0x1f0]
cmovo rcx, r13
cmp rcx, rax
jle 0x14005cfa2
mov rax, qword [rbx + 0x1f0]
xor edx, edx
cmp r15, rax
setns dl
add rdx, r13
mov rcx, r15
sub rcx, rax
cmovo rcx, rdx
lea rdx, [r12 + rcx]
add rdx, 2
cmp rdx, 2
jb 0x14005cf89
cvtsi2sd xmm0, rcx
divsd xmm0, qword [0x1401277d0]
call fcn.1400d6208
movsd xmm6, qword [0x1401277d8]
ucomisd xmm6, xmm0
jb 0x14005cf3f
maxsd xmm0, qword [0x1401277e0]
cvttsd2si ebp, xmm0
lea rax, [r12 + r14]
add rax, 2
cmp rax, 2
jae 0x14005cbab
movsd xmm0, qword [0x1401277e8]
jmp 0x14005cbbb
xorps xmm0, xmm0
cvtsi2sd xmm0, r14
divsd xmm0, qword [0x1401277d0]
call fcn.1400d62b8
ucomisd xmm6, xmm0
jb 0x14005cf56
maxsd xmm0, qword [0x1401277e0]
cvttsd2si r14d, xmm0
mov r15, qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
mov r13, qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
add r14d, ebp
cmp r14d, 0x3c
mov r12d, 0x3c
cmovl r12d, r14d
lea rsi, [rbx + 8]
mov rcx, rsi
call r15
test al, al
je 0x14005cc31
cmp ebp, r12d
jge 0x14005cc1c
movsxd rax, ebp
movsxd rcx, r12d
inc qword [rbx + rax*8 + 0x10]
inc rax
cmp rcx, rax
jne 0x14005cc0f
mov rcx, rsi
call r13
cmp r14d, 0x3d
jl 0x14005c16d
jmp 0x14005cf6f
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14005cc04
mov rcx, r15
call qword [0x14012eaa8]
mov rax, qword [r15]
jmp 0x14005c40a
mov rcx, qword [r14 + 8]
call fcn.1400d88d0
cmp qword [r14 + 0x28], 0
je 0x14005c60f
mov rcx, r15
call fcn.140103510
jmp 0x14005c60f
lea rsi, [rsp + 0xc0]
mov rcx, rsi
call qword [0x14012eaa8]
mov rax, qword [rsi]
jmp 0x14005c139
mov rcx, qword [0x14014bb88]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14005beb5
call fcn.14005dfe0
jmp 0x14005c0b7
mov rcx, r14
call fcn.14005de80
jmp 0x14005c271
mov rcx, qword [rsp + 0xc8]
xor rcx, rsp
call fcn.1400a77a0
mov rcx, rsi
movaps xmm6, xmmword [rsp + 0xd0]
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x140052dd0
mov rcx, qword [0x14014bb88]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
mov rbx, rax
add rbx, r8
jmp 0x14005be10
int3
mov rdi, qword [rdi]
jmp 0x14005c590
mov rdi, qword [rbp]
jmp 0x14005c5c9
mov rdx, qword [rbp]
jmp 0x14005c5eb
call fcn.14005dfe0
jmp 0x14005c630
int3
lea r14, [rsp + 0x60]
mov rcx, r14
call fcn.14008e5f0
mov byte [r14 + 0x40], 0
jmp 0x14005c209
mov rcx, r14
call fcn.14005de80
jmp 0x14005c368
mov rcx, qword [rbp]
call fcn.1400a5630
jmp 0x14005c5fc
call fcn.140103310
jmp 0x14005c04c
mov ecx, ebp
call fcn.140004a80
mov dword [rdi + 0x54], ebp
jmp 0x14005c324
lea rdx, [rsp + 0xa8]
mov rcx, r14
call qword [0x14012eaa8]
jmp 0x14005c39b
mov rcx, r14
mov edx, 1
call qword [0x14012eaa8]
jmp 0x14005c638
int3
mov rcx, qword [0x14014bb88]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14005c40a
int3
mov rcx, rsi
call fcn.14000d100
mov rcx, rsi
call fcn.1400a5630
jmp 0x14005c083
movzx ecx, al
xor rsi, qword [0x140149db0]
mov qword [rsp + 0x40], rsi
lea rax, str.WaitableEvent::Wait_Complete
lea r8, [rsp + 0xc0]
mov qword [r8], rax
mov qword [rsp + 0x20], r14
lea rdx, [rsp + 0xb8]
mov r9d, 3
call fcn.140060380
jmp 0x14005bf4a
xor ecx, ecx
call fcn.1400a5460
jmp 0x14005c702
int3
int3
mov rcx, qword [0x14014bb88]
cqo
idiv rcx
imul r8, rax, 0xf4240
imul rax, rdx, 0xf4240
cqo
idiv rcx
add rax, r8
jmp 0x14005c131
mov rcx, r12
call fcn.1400d89c0
mov rcx, r12
call fcn.1400a5630
jmp 0x14005c702
mov rax, rdx
call qword [0x14012eaa8]
jmp 0x14005c79a
mov rax, rdx
call qword [0x14012eaa8]
jmp 0x14005c7fd
int3
movzx ecx, al
mov rax, qword [0x140149db0]
xor rax, r12
lea rdx, [rsp + 0xc0]
mov qword [rdx], rax
lea rax, str.WorkerThreadWaitableEvent::WakeUp
lea r8, [rsp + 0xb8]
mov qword [r8], rax
mov qword [rsp + 0x20], rdx
lea rdx, [rsp + 0xb0]
mov r9d, 3
call fcn.140013dc0
jmp 0x14005c6d8
int3
int3
int3
add rcx, 0x170
call fcn.14008df30
jmp 0x14005ca4e
mov rcx, r13
call fcn.1400d89c0
mov rcx, r13
call fcn.1400a5630
jmp 0x14005ca5e
mov rcx, rax
mov qword [rsp + 0x30], rax
call fcn.1400d89c0
mov rcx, qword [rsp + 0x30]
call fcn.1400a5630
jmp 0x14005c989
xor eax, eax
ucomisd xmm0, qword [0x1401277e0]
mov ebp, 0x7fffffff
cmovb ebp, eax
jmp 0x14005cb93
xor eax, eax
ucomisd xmm0, qword [0x1401277e0]
mov r14d, 0x7fffffff
cmovb r14d, eax
jmp 0x14005cbd7
mov rbx, qword [rbx + 0x1f8]
sub r14d, r12d
xor ebp, ebp
test rbx, rbx
jne 0x14005cbe5
jmp 0x14005c16d
xor ecx, ecx
cmp rax, r15
setg cl
lea rax, [0x1401277c0]
movsd xmm0, qword [rax + rcx*8]
jmp 0x14005cb68
lea rsi, [rsp + 0x40]
mov rcx, rsi
mov rdx, rax
call fcn.1400559e0
mov rsi, qword [rsi]
test rsi, rsi
je 0x14005cb35
lock dec dword [rsi]
jne 0x14005cb35
mov rcx, rsi
call fcn.14000d100
mov rcx, rsi
call fcn.1400a5630
jmp 0x14005cb35