Function at 0x14010a850
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rdi
push r12
sub rsp, 0x58
mov r12, rcx
mov r11, rsp
lea rcx, [rsp + 0x30]
mov r10d, dword [rdx + 0x2c]
mov r8, 0xffffffffffffffff
xor r9d, r9d
mov rax, qword [0x140294fc0]
xor rax, rsp
mov qword [rcx + 0x20], rax
mov edi, dword [r12 + 0x2c]
mov dword [r12 + 0x54], r10d
mov dword [r11 + 0x20], 0
call fcn.1400ef650
vmovd xmm0, edi
vinsertps xmm1, xmm0, dword [rsp + 0x34], 0x10
vmovhps xmm2, xmm1, qword [rsp + 0x38]
mov rax, qword [rsp + 0x40]
mov edx, dword [rsp + 0x48]
vmovups xmmword [r12 + 0x2c], xmm2
mov dword [rsp + 0x30], edi
mov qword [r12 + 0x3c], rax
mov dword [r12 + 0x44], edx
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x50], 0
xor rcx, rsp
cmp rcx, qword [0x140294fc0]
jne 0x14010a8e7
add rsp, 0x58
pop r12
pop rdi
ret
call fcn.1401c41f0
nop
nop dword [rax]
sub rsp, 0x98
mov r9, qword [0x140294fc0]
xor r9, rsp
mov qword [rsp + 0x88], r9
mov r10, qword [rdx + 0x308]
mov r8, qword [rdx + 0xf8]
add r8, r10
mov qword [rsp + 0x60], r8
mov r8d, dword [rdx + 0x2f4]
mov r9d, dword [rdx + 0xd0]
add r9d, r8d
mov r11, qword [rdx + 0x310]
mov dword [rsp + 0x80], r8d
mov r8d, dword [rdx + 0x2f0]
mov qword [rsp + 0x68], r10
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x70], r11
mov dword [rsp + 0x84], 0
cmp r8d, r9d
jae 0x14010aa50
xor eax, eax
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], rdi
mov rdi, rcx
mov qword [rsp + 0x30], r12
mov r12d, r8d
mov qword [rsp + 0x38], r13
mov r13, rax
mov qword [rsp + 0x40], r14
mov r14, rdx
mov qword [rsp + 0x48], r15
mov r15d, r9d
mov qword [rsp + 0x50], rbp
mov esi, r12d
mov ebp, dword [r14 + 0x2ec]
and rsi, rbp
imul rbp, rsi, 0x158
mov rsi, qword [r14 + 8]
lea rcx, [rsi + rbp + 0x10]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r10, qword [rbp + rsi + 8]
cmp r10, 0xffffffffffffff88
jbe 0x14010a9d0
mov r11, r13
jmp 0x14010a9d8
mov r11, qword [rbp + rsi + 0x148]
mov rax, qword [rbp + rsi + 0x88]
cmova r10, r13
add qword [rsp + 0x78], r11
mov r11, qword [r14 + 8]
mov rsi, qword [rbp + rsi]
add qword [rsp + 0x70], r10
xor r10d, r10d
cmp rsi, rax
lea rcx, [r11 + rbp + 0x10]
setb r10b
add qword [rsp + 0x60], rax
add qword [rsp + 0x68], rsi
add dword [rsp + 0x84], r10d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
inc r12d
cmp r12d, r15d
jb 0x14010a99d
mov rsi, qword [rsp + 0x20]
mov rcx, rdi
mov rdi, qword [rsp + 0x28]
mov r12, qword [rsp + 0x30]
mov r13, qword [rsp + 0x38]
mov r14, qword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
vmovups xmm0, xmmword [rsp + 0x60]
vmovups xmm1, xmmword [rsp + 0x70]
mov rdx, qword [rsp + 0x80]
vmovups xmmword [rcx], xmm0
vmovups xmmword [rcx + 0x10], xmm1
mov qword [rcx + 0x20], rdx
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0x88], 0
xor rdx, rsp
cmp rdx, qword [0x140294fc0]
jne 0x14010aa9c
mov rax, rcx
add rsp, 0x98
ret
mov rcx, rdx
call fcn.1401c41f0
nop
nop dword [rax]
nop dword [rax]
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
push rbp
sub rsp, 0x258
mov r15, r9
mov rbx, rcx
mov r14, r8
vmovups xmmword [rsp + 0xe0], xmm15
mov r13, rdx
mov rax, qword [0x140294fc0]
xor rax, rsp
vmovups xmm0, xmmword [rbx + 0xa8]
mov qword [rsp + 0x248], rax
mov eax, 0x80
vmovups xmmword [rsp + 0xc0], xmm0
mov r10, qword [rbx + 0xb8]
mov qword [rsp + 0xd0], r10
vmovups xmm0, xmmword [rbx + rax + 0x18]
vmovups xmmword [rsp + rax + 0x30], xmm0
vmovups xmm1, xmmword [rbx + rax + 8]
vmovups xmmword [rsp + rax + 0x20], xmm1
vmovups xmm2, xmmword [rbx + rax - 8]
vmovups xmmword [rsp + rax + 0x10], xmm2
vmovups xmm3, xmmword [rbx + rax - 0x18]
vmovups xmmword [rsp + rax], xmm3
sub rax, 0x40
jne 0x14010ab0f
mov rdi, qword [rsp + 0x2d0]
mov r11d, dword [rsp + 0x2d8]
vmovups xmm1, xmmword [rsp + 0xc0]
vmovups xmm0, xmmword [rdi]
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x54], rax
mov ebp, dword [rdi + 0x18]
mov rsi, qword [rdi + 0x1c]
mov r10d, dword [rdi + 0x24]
mov rax, qword [rsp + 0xd0]
vmovups xmmword [rsp + 0x44], xmm0
mov dword [rsp + 0x5c], ebp
mov qword [rsp + 0x60], rsi
mov dword [rsp + 0x68], r10d
mov dword [rsp + 0x98], r11d
vmovups xmmword [rsp + 0x190], xmm1
mov qword [rsp + 0x1a0], rax
mov eax, 0x80
vmovups xmm0, xmmword [rsp + rax + 0x30]
vmovups xmm1, xmmword [rsp + rax + 0x20]
vmovups xmm2, xmmword [rsp + rax + 0x10]
vmovups xmm3, xmmword [rsp + rax]
vmovups xmmword [rsp + rax + 0x100], xmm0
vmovups xmmword [rsp + rax + 0xf0], xmm1
vmovups xmmword [rsp + rax + 0xe0], xmm2
vmovups xmmword [rsp + rax + 0xd0], xmm3
sub rax, 0x40
jne 0x14010abaf
vmovups xmm0, xmmword [rsp + 0x190]
mov rax, qword [rsp + 0x1a0]
vmovups xmmword [rsp + 0xc0], xmm0
mov qword [rsp + 0xd0], rax
mov eax, 0x80
vmovups xmm0, xmmword [rsp + rax + 0x100]
vmovups xmm1, xmmword [rsp + rax + 0xf0]
vmovups xmm2, xmmword [rsp + rax + 0xe0]
vmovups xmm3, xmmword [rsp + rax + 0xd0]
vmovups xmmword [rsp + rax + 0x30], xmm0
vmovups xmmword [rsp + rax + 0x20], xmm1
vmovups xmmword [rsp + rax + 0x10], xmm2
vmovups xmmword [rsp + rax], xmm3
sub rax, 0x40
jne 0x14010ac17
xor eax, eax
vpxor xmm15, xmm15, xmm15
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x8c], eax
mov qword [rsp + 0x90], 0
mov dword [rsp + 0x98], eax
mov dword [rsp + 0x9c], eax
vmovdqu xmmword [rsp + 0xa0], xmm15
vmovq qword [rsp + 0xb0], xmm15
vmovdqu xmmword [rsp + 0xc0], xmm15
vmovq qword [rsp + 0xd0], xmm15
vmovups xmm0, xmmword [rsp + 0xc0]
mov rax, qword [rsp + 0xd0]
vmovups xmmword [rsp + 0x230], xmm0
mov qword [rsp + 0x240], rax
mov eax, 0x80
vmovups xmm0, xmmword [rsp + rax + 0x30]
vmovups xmm1, xmmword [rsp + rax + 0x20]
vmovups xmm2, xmmword [rsp + rax + 0x10]
vmovups xmm3, xmmword [rsp + rax]
vmovups xmmword [rsp + rax + 0x1a0], xmm0
vmovups xmmword [rsp + rax + 0x190], xmm1
vmovups xmmword [rsp + rax + 0x180], xmm2
vmovups xmmword [rsp + rax + 0x170], xmm3
sub rax, 0x40
jne 0x14010accf
mov ebp, dword [rsp + 0x168]
test ebp, ebp
je 0x14010b7ae
neg ebp
xor eax, eax
add ebp, 9
mov ecx, dword [rsp + 0x114]
sub ecx, ebp
cmp ebp, 8
mov r10d, dword [rsp + 0x170]
cmovge ecx, eax
test r10d, r10d
jne 0x14010ad4c
mov esi, 0x1e
jmp 0x14010addd
mov ecx, dword [rsp + 0x118]
mov edx, dword [rsp + 0x12c]
call fcn.1400ef640
add eax, 3
cmp eax, 0x15
jae 0x14010b793
mov eax, reloc.WS2_32.dll_setsockopt
mov esi, 0x1e
cmp eax, 0x1e
mov ecx, dword [rsp + 0x114]
cmova eax, esi
add eax, 0xfffffffe
mov r10d, dword [rsp + 0x170]
cmp ecx, eax
jb 0x14010addb
test r10d, r10d
jne 0x14010ada6
add ecx, 2
mov eax, setsockopt
cmp ecx, 0x14
cmova eax, ecx
jmp 0x14010add2
mov ecx, dword [rsp + 0x118]
mov edx, dword [rsp + 0x12c]
call fcn.1400ef640
add eax, 3
cmp eax, 0x15
jae 0x14010b778
mov eax, reloc.WS2_32.dll_setsockopt
mov r10d, dword [rsp + 0x170]
cmp eax, 0x1e
cmova eax, esi
lea ecx, [rax - 2]
sub ecx, ebp
mov ebp, 1
xor eax, eax
shl rbp, cl
test ecx, ecx
mov r12d, dword [rsp + 0x15c]
cmove rbp, rax
test r10d, r10d
jne 0x14010ae11
mov eax, dword [rsp + 0x114]
mov ecx, setsockopt
add eax, 2
cmp eax, 0x14
cmova ecx, eax
jmp 0x14010ae35
mov ecx, dword [rsp + 0x118]
mov edx, dword [rsp + 0x12c]
call fcn.1400ef640
add eax, 3
cmp eax, 0x15
jae 0x14010b75b
mov ecx, reloc.WS2_32.dll_setsockopt
cmp ecx, 0x1e
mov r10d, r12d
cmova ecx, esi
mov r11d, 1
xor edx, edx
shl r11, cl
mov rax, qword [rsp + 0x2c0]
lea rsi, [r11*4]
imul r10, rsi
div r10
inc eax
cmp eax, 1
jbe 0x14010ae6d
imul r12d, eax
jmp 0x14010ae83
xor edx, edx
mov rax, qword [rsp + 0x2c0]
div r11
inc eax
cmp eax, r12d
cmovb r12d, eax
mov rcx, qword [rsp + 0x2c0]
lea edi, [r12 - 1]
mov eax, edi
xor edx, edx
add rax, rcx
div r12
mov qword [rsp + 0x108], rcx
lea r10, [rax - 1]
and r10, 0x1ffff
lea rsi, [rax + 0xffff]
cmp r10, 0x7fff
cmovae rsi, rax
call fcn.1400eed30
cmp r14, rax
jb 0x14010aed3
mov dword [rsp + 0xf0], r12d
jmp 0x14010aeed
mov rcx, rsi
call fcn.1400eed30
mov r10, rax
mov rax, r14
xor edx, edx
div r10
mov dword [rsp + 0xf0], eax
xor r11d, r11d
xor eax, eax
cmp r12d, 1
mov qword [rsp + 0x100], rax
mov qword [rsp + 0xf8], rax
mov eax, r11d
sete al
cmp dword [rsp + 0x15c], 1
mov r10d, esi
setle r11b
mov qword [rsp + 0x160], r10
or eax, r11d
je 0x14010b005
mov rax, qword [rbx + 0x18]
cmp qword [rsp + 0x2c8], 0
mov rcx, qword [rax + 0x48]
je 0x14010afd0
mov r10, rsp
lea rdi, [rsp + 0x40]
mov rax, qword [rsp + 0x2c0]
mov rdx, r13
mov rbx, qword [rsp + 0x2c8]
mov r8, r14
mov rbp, qword [rdi + 0x190]
mov r9, r15
mov esi, dword [rdi + 0x198]
mov qword [r10 + 0x20], rax
mov qword [r10 + 0x28], rbx
mov qword [rdi], rbp
mov dword [rdi + 8], esi
mov qword [r10 + 0x30], rdi
call fcn.1400f8080
mov rdx, rax
mov rcx, qword [rsp + 0x248]
mov qword [rsp + 0x248], 0
xor rcx, rsp
cmp rcx, qword [0x140294fc0]
jne 0x14010afcb
vmovups xmm15, xmmword [rsp + 0xe0]
mov rax, rdx
add rsp, 0x258
pop rbp
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.1401c41f0
mov rsi, rsp
mov rdx, r13
mov rax, qword [rsp + 0x2c0]
mov r8, r14
mov r9, r15
xor ebx, ebx
lea rbp, [rsp + 0x1b0]
mov qword [rsi + 0x20], rax
mov qword [rsi + 0x28], rbx
mov qword [rsi + 0x30], rbx
mov qword [rsi + 0x38], rbp
call fcn.1400f4750
jmp 0x14010af88
mov rcx, rsi
call fcn.1400eed30
mov qword [rsp + 0x40], rax
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x48], rcx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x40]
mov qword [rcx + 0x28], rax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
vmovups xmm0, xmmword [rsp + 0x190]
lea r8, [rsp + 0x40]
mov r10, qword [r8 + 0x160]
lea rax, [rbx + 0x118]
mov qword [r8 + 0x98], rax
mov r11, rsp
mov rdx, qword [rbx + 0x20]
mov eax, 0x80
vmovups xmmword [r8 + 0x80], xmm0
mov qword [r8 + 0x90], r10
vmovups xmm0, xmmword [rsp + rax + 0x100]
vmovups xmm1, xmmword [rsp + rax + 0xf0]
vmovups xmm2, xmmword [rsp + rax + 0xe0]
vmovups xmm3, xmmword [rsp + rax + 0xd0]
vmovups xmmword [r8 + rax - 0x10], xmm0
vmovups xmmword [r8 + rax - 0x20], xmm1
vmovups xmmword [r8 + rax - 0x30], xmm2
vmovups xmmword [r8 + rax - 0x40], xmm3
sub rax, 0x40
jne 0x14010b074
xor eax, eax
mov r9, rsi
mov qword [r11 + 0x20], rax
mov qword [r11 + 0x28], rax
mov dword [r11 + 0x30], 0
mov rcx, qword [rsp + 0xd8]
call fcn.14010b7f0
test eax, eax
je 0x14010b0ec
mov rdx, 0xffffffffffffffc0
jmp 0x14010af8b
mov edx, dword [rbx + 0x2ec]
lea eax, [r12 + 2]
inc edx
mov dword [rsp + 0x58], eax
cmp eax, edx
jbe 0x14010b2a2
vmovups xmm0, xmmword [rbx + 0x318]
mov rax, qword [rbx + 0x328]
mov rcx, qword [rbx + 8]
vmovups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], rax
test rcx, rcx
je 0x14010b1c7
xor eax, eax
test edx, edx
je 0x14010b19c
mov qword [rsp + 0x90], r13
mov r13, rbp
mov qword [rsp + 0x88], r14
mov r14d, edi
mov qword [rsp + 0x98], r15
mov r15d, r12d
mov r12, rbx
mov ebx, eax
mov edi, edx
mov rbp, rcx
imul r8, rbx, 0x158
lea rcx, [rbp + r8 + 0x10]
call qword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
inc ebx
cmp ebx, edi
jb 0x14010b15d
mov rcx, rbp
mov rbp, r13
mov r13, qword [rsp + 0x90]
mov rbx, r12
mov r12d, r15d
mov edi, r14d
mov r14, qword [rsp + 0x88]
mov r15, qword [rsp + 0x98]
vmovups xmm0, xmmword [rsp + 0x60]
lea rdx, [rsp + 0x40]
mov rax, qword [rdx + 0x30]
vmovups xmmword [rdx], xmm0
mov qword [rdx + 0x10], rax
call fcn.140108640
vmovups xmm0, xmmword [rbx + 0x318]
mov rax, qword [rbx + 0x328]
xor r10d, r10d
bsr ecx, dword [rsp + 0x58]
cmove ecx, r10d
mov r11d, 1
lea rdx, [rsp + 0x70]
inc ecx
shl r11d, cl
mov dword [rdx - 0x28], r11d
imul rcx, r11, 0x158
mov dword [rbx + 0x2ec], r10d
vmovups xmmword [rdx], xmm0
mov qword [rdx + 0x10], rax
call fcn.1401085f0
mov rdx, rax
test rdx, rdx
je 0x14010b747
xor eax, eax
cmp dword [rsp + 0x48], 0
jbe 0x14010b292
xor ecx, ecx
mov qword [rsp + 0x90], r13
mov qword [rsp + 0x40], rbx
mov rbx, rdx
mov qword [rsp + 0x88], r14
mov r14d, edi
mov qword [rsp + 0x98], r15
mov rdi, rbp
mov r13d, dword [rsp + 0x48]
mov ebp, ecx
imul r15, rax, 0x158
lea rcx, [rbx + r15 + 0x10]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [rbx + r15 + 0x38]
call qword [sym.imp.KERNEL32.dll_InitializeConditionVariable]
inc ebp
mov eax, ebp
cmp ebp, r13d
jb 0x14010b246
mov r13, qword [rsp + 0x90]
mov rdx, rbx
mov rbx, qword [rsp + 0x40]
mov rbp, rdi
mov r15, qword [rsp + 0x98]
mov edi, r14d
mov r14, qword [rsp + 0x88]
mov eax, dword [rsp + 0x48]
dec eax
mov qword [rbx + 8], rdx
mov dword [rbx + 0x2ec], eax
xor edx, edx
cmp rdx, 0xffffffffffffff88
ja 0x14010af8b
xor edx, edx
test r12d, r12d
jbe 0x14010b527
xor eax, eax
mov qword [rsp + 0x68], rsi
mov dword [rsp + 0x50], edi
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x58], r12d
mov r12, rdx
mov qword [rsp + 0x90], r13
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x98], r15
mov r15d, eax
mov rdi, qword [rsp + 0xf8]
mov rsi, qword [rsp + 0x100]
mov rbp, qword [rsp + 0x108]
mov r13, qword [rsp + 0x68]
cmp rbp, r13
cmovb r13, rbp
mov rcx, r13
call fcn.1400eed30
mov r14, rax
cmp r15d, dword [rsp + 0xf0]
jae 0x14010b33d
mov r8, qword [rsp + 0x90]
mov qword [rsp + 0x48], r14
lea r9, [r8 + rdi]
mov qword [rsp + 0x40], r9
jmp 0x14010b343
vmovdqu xmmword [rsp + 0x40], xmm15
imul r8, r12, 0x158
mov r9, qword [rsp + 0x98]
xor eax, eax
xor edx, edx
test r15d, r15d
mov r11, qword [rbx + 8]
cmovne rdx, qword [rsp + 0x60]
add r9, rsi
mov r10, r9
sub r10, rdx
mov qword [r11 + r8 + 0x70], r10
mov r10, qword [rbx + 8]
mov qword [r10 + r8 + 0x78], rdx
mov rdx, qword [rbx + 8]
mov qword [rdx + r8 + 0x80], r9
mov rdx, qword [rbx + 8]
mov qword [rdx + r8 + 0x88], r13
mov rdx, qword [rbx + 8]
mov qword [rdx + r8], rax
mov rdx, qword [rbx + 8]
mov qword [rdx + r8 + 8], rax
test r15d, r15d
jne 0x14010b3bd
mov r9, qword [rbx + 8]
mov rdx, qword [rsp + 0x2c8]
mov qword [r9 + 0x138], rdx
jmp 0x14010b3cd
mov rdx, qword [rbx + 8]
mov qword [rdx + r8 + 0x138], 0
mov r9, qword [rbx + 8]
mov rdx, qword [rsp + 0x2c0]
mov qword [r9 + r8 + 0x140], rdx
mov edx, 0x80
mov r10, qword [rbx + 8]
vmovups xmm0, xmmword [rsp + 0x230]
lea r9, [r8 + r10 + 0xa0]
vmovups xmmword [r9 + 0x80], xmm0
mov r11, qword [rsp + 0x240]
mov qword [r9 + 0x90], r11
vmovups xmm0, xmmword [rsp + rdx + 0x1a0]
vmovups xmmword [r9 + rdx - 0x10], xmm0
vmovups xmm1, xmmword [rsp + rdx + 0x190]
vmovups xmmword [r9 + rdx - 0x20], xmm1
vmovups xmm2, xmmword [rsp + rdx + 0x180]
vmovups xmmword [r9 + rdx - 0x30], xmm2
vmovups xmm3, xmmword [rsp + rdx + 0x170]
vmovups xmmword [r9 + rdx - 0x40], xmm3
sub rdx, 0x40
jne 0x14010b413
mov r11, qword [rbx + 8]
test r15d, r15d
mov r9, qword [rsp + 0x40]
mov r10, qword [rsp + 0x48]
mov qword [r11 + r8 + 0x60], r9
mov qword [r11 + r8 + 0x68], r10
mov r10d, 0
mov r9, qword [rbx + 8]
mov rdx, qword [rbx + 0x18]
mov qword [r9 + r8 + 0x40], rdx
mov r9, qword [rbx + 8]
mov rdx, qword [rbx + 0x10]
mov qword [r9 + r8 + 0x48], rdx
mov r9, qword [rbx + 8]
mov rdx, qword [rbx + 0x20]
mov qword [r9 + r8 + 0x50], rdx
mov r9, qword [rbx + 8]
mov rdx, qword [rsp + 0xd8]
mov qword [r9 + r8 + 0x58], rdx
mov rdx, qword [rbx + 8]
mov dword [rdx + r8 + 0x90], r15d
mov edx, r10d
mov r9, qword [rbx + 8]
sete dl
cmp r15d, dword [rsp + 0x50]
mov dword [r9 + r8 + 0x94], edx
sete r10b
mov rdx, qword [rbx + 8]
mov dword [rdx + r8 + 0x98], r10d
lea rdx, [0x140108680]
add r8, qword [rbx + 8]
mov rcx, qword [rbx]
call fcn.1401b6f20
inc r15d
add rsi, r13
add rdi, r14
sub rbp, r13
mov r12d, r15d
cmp r15d, dword [rsp + 0x58]
jb 0x14010b304
mov r12d, dword [rsp + 0x58]
mov r13, qword [rsp + 0x90]
mov r14, qword [rsp + 0x88]
xor ebp, ebp
xor edx, edx
xor r9d, r9d
test r12d, r12d
ja 0x14010b546
cmp dword [rsp + 0x134], 0
jne 0x14010b663
jmp 0x14010af8b
xor esi, esi
mov r15, rdx
mov qword [rsp + 0x90], r13
mov qword [rsp + 0x88], r14
mov edi, dword [rsp + 0xf0]
imul r13, r9, 0x158
mov rax, qword [rbx + 8]
lea rcx, [r13 + rax + 0x10]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdx, qword [rbx + 8]
add rdx, r13
mov rax, qword [rdx]
cmp rax, qword [rdx + 0x88]
jae 0x14010b5b2
mov r8d, 0xffffffff
lea rcx, [rdx + 0x38]
add rdx, 0x10
call qword [sym.imp.KERNEL32.dll_SleepConditionVariableCS]
mov rdx, qword [rbx + 8]
add rdx, r13
mov rax, qword [rdx]
cmp rax, qword [rdx + 0x88]
jb 0x14010b58b
add rdx, 0x10
mov rcx, rdx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r9, qword [rbx + 8]
lea rax, [r13 + r9]
mov r8, qword [rax + 8]
cmp r8, 0xffffffffffffff88
cmova rbp, r8
lea r14, [r15 + r8]
test rbp, rbp
jne 0x14010b612
cmp r14, qword [rsp + 0x88]
jbe 0x14010b5f4
mov rbp, 0xffffffffffffffba
test esi, esi
jne 0x14010b616
jmp 0x14010b623
test esi, esi
je 0x14010b623
add r15, qword [rsp + 0x90]
mov rcx, r15
mov rdx, qword [rax + 0x60]
call fcn.140218be0
mov r9, qword [rbx + 8]
jmp 0x14010b616
test esi, esi
je 0x14010b623
cmp esi, edi
jae 0x14010b6a7
lea rax, [r13 + r9]
vmovdqu xmmword [rax + 0x60], xmm15
mov rax, qword [rbx + 8]
inc esi
mov r9d, esi
mov r15, r14
mov qword [rax + r13 + 8], 0
cmp esi, r12d
jb 0x14010b562
mov r13, qword [rsp + 0x90]
mov rdx, r15
mov r14, qword [rsp + 0x88]
cmp dword [rsp + 0x134], 0
je 0x14010b696
add rbx, 0x220
mov rcx, rbx
mov qword [rsp + 0x40], rdx
call fcn.140117170
mov rdx, qword [rsp + 0x40]
lea rcx, [rdx + 4]
cmp rcx, r14
jbe 0x14010b68e
mov rbp, 0xffffffffffffffba
jmp 0x14010b696
mov dword [r13 + rdx], eax
mov rdx, rcx
test rbp, rbp
je 0x14010af8b
mov rdx, rbp
jmp 0x14010af8b
mov rdx, qword [r13 + r9 + 0x60]
mov rax, qword [r13 + r9 + 0x68]
mov r15, qword [rbx + 0x10]
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rax
test rdx, rdx
je 0x14010b61e
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov r9d, dword [r15 + 0x34]
cmp r9d, dword [r15 + 0x30]
jae 0x14010b712
mov r8d, r9d
mov rcx, r15
shl r8, 4
inc r9d
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
mov qword [r8 + r15 + 0x50], rax
mov qword [r8 + r15 + 0x58], rdx
mov dword [r15 + 0x34], r9d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rax, qword [rbx + 8]
add rax, r13
jmp 0x14010b623
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
vmovups xmm0, xmmword [r15 + 0x38]
mov rax, qword [r15 + 0x48]
lea rdx, [rsp + 0x40]
vmovups xmmword [rdx], xmm0
mov qword [rdx + 0x10], rax
mov rcx, qword [rdx + 0x20]
call fcn.140108640
mov rax, qword [rbx + 8]
add rax, r13
jmp 0x14010b623
mov qword [rbx + 8], 0
mov rdx, 0xffffffffffffffc0
jmp 0x14010b2a4
mov ecx, dword [rsp + 0x118]
mov edx, dword [rsp + 0x12c]
call fcn.1400ef640
mov ecx, eax
add ecx, 3
jmp 0x14010ae35
mov ecx, dword [rsp + 0x118]
mov edx, dword [rsp + 0x12c]
call fcn.1400ef640
add eax, 3
jmp 0x14010adca
mov ecx, dword [rsp + 0x118]
mov edx, dword [rsp + 0x12c]
call fcn.1400ef640
add eax, 3
jmp 0x14010ad70
mov ebp, dword [rsp + 0x12c]
cmp ebp, 9
je 0x14010b7e3
lea eax, [rbp - 7]
cmp eax, 1
ja 0x14010b7cc
mov ebp, 8
jmp 0x14010ad1f
mov eax, 1
add ebp, 0xfffffffb
cmp eax, ebp
mov ebp, 7
sbb ebp, 0
jmp 0x14010ad1f
mov ebp, 9
jmp 0x14010ad1f