Function at 0x51c7e0
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x20]
cmp r12, qword [r14 + 0x10]
jbe 0x51cb74
sub rsp, 0xa0
mov qword [rsp + 0x98], rbp
lea rbp, [rsp + 0x98]
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x88], rcx
movups xmmword [rsp + 0x58], xmm15
movups xmmword [rsp + 0x60], xmm15
movups xmmword [rsp + 0x70], xmm15
movups xmmword [rsp + 0x30], xmm15
movups xmmword [rsp + 0x38], xmm15
movups xmmword [rsp + 0x48], xmm15
lea rdx, [rsp + 0x58]
mov qword [rsp], rdx
mov qword [rsp + 8], rcx
call fcn.0051ce80
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
lea rax, [rsp + 0x30]
mov qword [rsp], rax
lea rcx, [rsp + 0x58]
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0x10], rdx
call fcn.0051cc40
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
lea rax, [rsp + 0x30]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rax
nop dword [rax]
call fcn.0051cc40
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
lea rax, [rsp + 0x58]
mov qword [rsp], rax
mov qword [rsp + 8], rax
call fcn.0051ce80
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
lea rax, [rsp + 0x58]
mov qword [rsp], rax
lea rcx, [rsp + 0x30]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rax
call fcn.0051cc40
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
mov rax, qword [rsp + 0xa8]
lea rbx, [rsp + 0x58]
nop
call fcn.0051c0c0
mov rcx, qword [rsp + 0xa8]
mov qword [rsp], rcx
lea rdx, [rsp + 0x30]
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rax
call fcn.0051cc40
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
lea rax, [rsp + 0x58]
mov qword [rsp], rax
mov rcx, qword [rsp + 0xa8]
mov qword [rsp + 8], rcx
call fcn.0051ce80
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
lea rax, [rsp + 0x58]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rax
call fcn.0051cc40
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
nop
mov rbx, qword [0x00823c30]
lea rax, [rsp + 0x30]
mov rcx, qword [rsp + 0x90]
call fcn.0051b2e0
mov qword [rsp + 0x80], rax
mov rbx, qword [rsp + 0x90]
lea rax, [rsp + 0x58]
call fcn.0051bea0
mov qword [rsp + 0x28], rax
mov rbx, qword [rsp + 0x80]
lea rax, [rsp + 0x58]
call fcn.0051bea0
mov qword [rsp + 0x20], rax
mov rcx, qword [0x00823c38]
mov rdx, qword [rsp + 0x80]
mov qword [rsp], rdx
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
call fcn.0051cc40
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
lea rax, [rsp + 0x58]
mov rbx, qword [rsp + 0x80]
call fcn.0051bea0
mov qword [rsp + 0x18], rax
mov rcx, qword [0x00823c38]
lea rdx, [rsp + 0x30]
mov qword [rsp], rdx
mov rdx, qword [rsp + 0xa8]
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rcx
nop dword [rax + rax]
call fcn.0051cc40
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
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]
mov rdi, qword [rsi]
and rdi, rax
or rdi, rdx
mov qword [rsi], rdi
mov rdx, qword [rsp + 0x38]
and rdx, rbx
mov rdi, qword [rsi + 8]
and rdi, rax
or rdi, rdx
mov qword [rsi + 8], rdi
mov rdx, qword [rsp + 0x40]
and rdx, rbx
mov rdi, qword [rsi + 0x10]
and rdi, rax
or rdi, rdx
mov qword [rsi + 0x10], rdi
mov rdx, qword [rsp + 0x48]
and rdx, rbx
mov rdi, qword [rsi + 0x18]
and rdi, rax
or rdi, rdx
mov qword [rsi + 0x18], rdi
mov rdx, qword [rsp + 0x50]
and rdx, rbx
mov rbx, qword [rsi + 0x20]
and rbx, rax
or rbx, rdx
mov qword [rsi + 0x20], rbx
mov rax, rsi
mov rbx, rax
call fcn.0051bf80
mov rbx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x28]
or rbx, rax
mov rax, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0x98]
add rsp, 0xa0
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.004600a0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.0051c7e0