Function at 0x521800
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x118]
cmp r12, qword [r14 + 0x10]
jbe 0x521c9e
sub rsp, 0x198
mov qword [rsp + 0x190], rbp
lea rbp, [rsp + 0x190]
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x180], rbx
mov qword [rsp + 0x178], rcx
movups xmmword [rsp + 0x148], xmm15
movups xmmword [rsp + 0x150], xmm15
movups xmmword [rsp + 0x160], xmm15
movups xmmword [rsp + 0x120], xmm15
movups xmmword [rsp + 0x128], xmm15
movups xmmword [rsp + 0x138], xmm15
lea rdx, [rsp + 0x120]
mov qword [rsp], rdx
mov qword [rsp + 8], rcx
call fcn.00521fc0
xorps xmm15, xmm15
mov r14, qword [0x009e77f8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
movups xmmword [rsp + 0xf8], xmm15
movups xmmword [rsp + 0x100], xmm15
movups xmmword [rsp + 0x110], xmm15
lea rax, [rsp + 0x148]
mov qword [rsp], rax
lea rcx, [rsp + 0x120]
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0x178]
mov qword [rsp + 0x10], rdx
call fcn.00521d80
xorps xmm15, xmm15
mov r14, qword [0x009e77f8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, [rsp + 0xf8]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x180]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x10], rdx
nop dword [rax]
call fcn.00521d80
xorps xmm15, xmm15
mov r14, qword [0x009e77f8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
movups xmmword [rsp + 0xd0], xmm15
movups xmmword [rsp + 0xd8], xmm15
movups xmmword [rsp + 0xe8], xmm15
lea rax, [rsp + 0x148]
mov qword [rsp], rax
lea rcx, [rsp + 0x120]
mov qword [rsp + 8], rcx
call fcn.00521fc0
xorps xmm15, xmm15
mov r14, qword [0x009e77f8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, [rsp + 0xd0]
mov qword [rsp], rax
lea rcx, [rsp + 0xf8]
mov qword [rsp + 8], rcx
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x10], rdx
call fcn.00521d80
xorps xmm15, xmm15
mov r14, qword [0x009e77f8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
movups xmmword [rsp + 0xa8], xmm15
movups xmmword [rsp + 0xb0], xmm15
movups xmmword [rsp + 0xc0], xmm15
lea rax, [rsp + 0x148]
lea rbx, [rsp + 0xd0]
call fcn.00521140
lea rcx, [rsp + 0xa8]
mov qword [rsp], rcx
lea rdx, [rsp + 0xf8]
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rax
call fcn.00521d80
xorps xmm15, xmm15
mov r14, qword [0x009e77f8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
movups xmmword [rsp + 0x80], xmm15
movups xmmword [rsp + 0x88], xmm15
movups xmmword [rsp + 0x98], xmm15
lea rax, [rsp + 0x148]
mov qword [rsp], rax
lea rcx, [rsp + 0xa8]
mov qword [rsp + 8], rcx
call fcn.00521fc0
xorps xmm15, xmm15
mov r14, qword [0x009e77f8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, [rsp + 0x80]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x178]
mov qword [rsp + 8], rcx
lea rcx, [rsp + 0x148]
mov qword [rsp + 0x10], rcx
call fcn.00521d80
xorps xmm15, xmm15
mov r14, qword [0x009e77f8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
movups xmmword [rsp + 0x58], xmm15
movups xmmword [rsp + 0x60], xmm15
movups xmmword [rsp + 0x70], xmm15
mov rbx, qword [0x00984ce0]
lea rax, [rsp + 0x58]
mov rcx, qword [rsp + 0x180]
call fcn.00520200
mov qword [rsp + 0x170], rax
mov rbx, qword [rsp + 0x180]
lea rax, [rsp + 0x80]
call fcn.00520da0
mov qword [rsp + 0x28], rax
mov rbx, qword [rsp + 0x170]
lea rax, [rsp + 0x80]
call fcn.00520da0
mov qword [rsp + 0x20], rax
mov rcx, qword [0x00984ce8]
lea rdx, [rsp + 0x148]
mov qword [rsp], rdx
mov rbx, qword [rsp + 0x170]
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rcx
call fcn.00521d80
xorps xmm15, xmm15
mov r14, qword [0x009e77f8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, [rsp + 0x80]
lea rbx, [rsp + 0x148]
nop
call fcn.00520da0
mov qword [rsp + 0x18], rax
movups xmmword [rsp + 0x30], xmm15
movups xmmword [rsp + 0x38], xmm15
movups xmmword [rsp + 0x48], xmm15
mov rcx, qword [0x00984ce8]
lea rdx, [rsp + 0x30]
mov qword [rsp], rdx
lea rdx, [rsp + 0xa8]
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
nop
call fcn.00521d80
xorps xmm15, xmm15
mov r14, qword [0x009e77f8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
or rax, rcx
nop
mov rdx, qword [rsp + 0x30]
neg rax
and rdx, rax
mov rbx, rax
not rax
mov rsi, qword [rsp + 0xa8]
and rsi, rax
or rsi, rdx
mov qword [rsp + 0xa8], rsi
mov rdx, qword [rsp + 0x38]
and rdx, rbx
mov rsi, qword [rsp + 0xb0]
and rsi, rax
or rsi, rdx
mov qword [rsp + 0xb0], rsi
mov rdx, qword [rsp + 0x40]
and rdx, rbx
mov rsi, qword [rsp + 0xb8]
and rsi, rax
or rsi, rdx
mov qword [rsp + 0xb8], rsi
mov rdx, qword [rsp + 0x48]
and rdx, rbx
mov rsi, qword [rsp + 0xc0]
and rsi, rax
or rsi, rdx
mov qword [rsp + 0xc0], rsi
mov rdx, qword [rsp + 0x50]
and rdx, rbx
mov rbx, qword [rsp + 0xc8]
and rbx, rax
or rbx, rdx
mov qword [rsp + 0xc8], rbx
mov rax, qword [rsp + 0x188]
lea rbx, [rsp + 0xa8]
call fcn.00520f00
mov rbx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x28]
or rbx, rax
mov rax, qword [rsp + 0x188]
mov rbp, qword [rsp + 0x190]
add rsp, 0x198
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.00463680
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.00521800