Function at 0x18011c980
Capabilities:
Access peb ldr_data

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x80
mov rcx, qword [rcx]
mov rax, qword [rcx]
mov qword [rcx], 0
test rax, rax
je 0x18011cd05
mov rdi, qword [rax]
mov eax, dword [0x1801fba34]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0xa0], 0
jne 0x18011c9cd
call fcn.1800063b0
lea rax, [0x1801e53d0]
mov qword [rsp + 0x20], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x38], 0
mov eax, dword [0x1801fba34]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movups xmm0, xmmword [rax + 0xa8]
inc qword [rax + 0xa8]
movups xmmword [rsp + 0x40], xmm0
lea rdx, [0x1801e55a0]
lea r8, [0x18011cd10]
lea rsi, [rsp + 0x20]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5410]
lea r8, [0x18011d0c0]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e54d8]
lea r8, [0x18011d3e0]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e55c8]
lea r8, [0x18011d5a0]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e53e8]
lea r8, [0x18011d760]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5500]
lea r8, [0x18011dba0]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e55f0]
lea r8, [0x18011e1f0]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e54b0]
lea r8, [0x18011f230]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5460]
lea r8, [0x18011f690]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5438]
lea r8, [0x18011fcf0]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5618]
lea r8, [0x180120ab0]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5488]
lea r8, [0x180122140]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5640]
lea r8, [0x180122420]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5668]
lea r8, [0x1801231b0]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5698]
lea r8, [0x180123c90]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e56c8]
lea r8, [0x1801240b0]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e56f8]
lea r8, [0x180124320]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5528]
lea r8, [0x180124530]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5550]
lea r8, [0x180124940]
mov rcx, rsi
call fcn.18011cd70
lea rdx, [0x1801e5578]
lea r8, [0x180124b30]
mov rcx, rsi
call fcn.18011cd70
movdqu xmm0, xmmword [rsp + 0x20]
movups xmm1, xmmword [rsp + 0x30]
movups xmm2, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x70], xmm2
movaps xmmword [rsp + 0x60], xmm1
movdqa xmmword [rsp + 0x50], xmm0
mov rsi, qword [rdi]
mov rbx, qword [rdi + 8]
mov r14, qword [rdi + 0x18]
movups xmmword [rdi + 0x20], xmm2
movdqu xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm1
test rsi, rsi
je 0x18011ccf1
test rbx, rbx
je 0x18011ccf1
test r14, r14
je 0x18011ccbf
movdqa xmm0, xmmword [rsi]
pmovmskb r13d, xmm0
not r13d
lea rdi, [rsi + 0x10]
mov r15, qword [sym.imp.kernel32.dll_HeapFree]
mov r12, rsi
jmp 0x18011cc45
test r14, r14
je 0x18011ccbf
test r13w, r13w
je 0x18011cc60
lea eax, [r13 - 1]
and eax, r13d
jmp 0x18011cc8b
movdqa xmm0, xmmword [rdi]
pmovmskb r13d, xmm0
add r12, 0xfffffffffffffd80
add rdi, 0x10
cmp r13w, 0xffff
je 0x18011cc60
mov ecx, 0xfffffffe
sub ecx, r13d
not r13d
mov eax, r13d
and eax, ecx
mov ecx, r13d
tzcnt ecx, ecx
mov r13d, eax
dec r14
neg rcx
lea rax, [rcx + rcx*4]
mov r8, qword [r12 + rax*8 - 0x28]
test r8, r8
je 0x18011cc40
cmp qword [r12 + rax*8 - 0x20], 0
je 0x18011cc40
mov rcx, qword [0x1801fb9b8]
xor edx, edx
call r15
jmp 0x18011cc40
lea rax, [rbx + 1]
mov ecx, 0x28
mul rcx
add rax, 0xf
and rax, 0xfffffffffffffff0
add rbx, rax
cmp rbx, 0xffffffffffffffef
je 0x18011ccf1
sub rsi, rax
mov rcx, qword [0x1801fb9b8]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
nop
add rsp, 0x80
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2