Function at 0x57fb00
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x70]
cmp r12, qword [r14 + 0x10]
jbe 0x57ffe6
sub rsp, 0xf0
mov qword [rsp + 0xe8], rbp
lea rbp, [rsp + 0xe8]
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x108], rcx
mov qword [rsp + 0x110], rdi
mov qword [rsp + 0x20], 0
movups xmmword [rsp + 0x60], xmm15
call fcn.004e6da0
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0xf8]
test byte [rcx], al
mov rdx, qword [rsp + 0xf8]
test byte [rdx], al
mov rcx, qword [rcx + 0x68]
add rax, rcx
mov qword [rdx + 0x68], rax
mov rax, qword [rsp + 0xf8]
test byte [rax], al
cmp qword [rax + 0x60], 0
jg 0x57fb9c
jmp 0x57fda6
mov rsi, qword [rsp + 0xf8]
test byte [rsi], al
mov rax, qword [rsi + 0x60]
mov qword [rsp + 0x38], rax
mov rsi, qword [rsp + 0xf8]
test byte [rsi], al
lea rdi, [rsi + 0x20]
test byte [rdi], al
nop
cmp rax, 0x40
jbe 0x57fbcb
jmp 0x57ffd9
lea rdi, [rax - 0x40]
mov r8, rdi
sar rdi, 0x3f
and rax, rdi
lea rdi, [rax + 0x20]
add rsi, rdi
mov qword [rsp + 0xa0], rsi
neg r8
mov qword [rsp + 0xa8], r8
mov qword [rsp + 0xb0], r8
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], r8
mov qword [rsp + 0x98], r8
mov rsi, qword [rsp + 0x108]
mov rdi, qword [rsp + 0x100]
mov r8, qword [rsp + 0x110]
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x80], r8
mov rdi, qword [rsp + 0x90]
mov qword [rsp + 0x58], rdi
cmp rsi, rdi
jl 0x57fc51
jmp 0x57fc58
mov qword [rsp + 0x58], rsi
jmp 0x57fc5a
jmp 0x57fc5a
mov rsi, qword [rsp + 0x88]
cmp qword [rsp + 0x70], rsi
jne 0x57fc6b
jmp 0x57fc89
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x50], rcx
mov rbx, qword [rsp + 0x70]
mov rax, qword [rsp + 0x88]
call fcn.00469ec0
jmp 0x57fc8b
jmp 0x57fc8b
mov rsi, qword [rsp + 0x58]
mov qword [rsp + 0x30], rsi
mov rdi, qword [rsp + 0xf8]
test byte [rdi], al
mov r8, qword [rsp + 0xf8]
test byte [r8], al
mov rdi, qword [rdi + 0x60]
add rsi, rdi
mov qword [r8 + 0x60], rsi
mov rsi, qword [rsp + 0xf8]
test byte [rsi], al
cmp qword [rsi + 0x60], 0x40
je 0x57fccb
jmp 0x57fd4b
mov rax, qword [rsp + 0xf8]
test byte [rax], al
add rax, 0x20
test byte [rax], al
jmp 0x57fcdd
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], 0x40
mov qword [rsp + 0xb0], 0x40
mov rcx, qword [rsp + 0xf8]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], 0x40
mov qword [rsp + 0x18], 0x40
call fcn.00580a40
xorps xmm15, xmm15
mov r14, qword [0x007e5710]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0xf8]
test byte [rax], al
mov qword [rax + 0x60], 0
jmp 0x57fd4d
jmp 0x57fd4d
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x100]
mov rdi, qword [rsp + 0x110]
jmp 0x57fd6c
cmp rax, rcx
jbe 0x57fd76
jmp 0x57ffd4
sub rdi, rax
mov r8, rdi
neg rdi
sar rdi, 0x3f
and rdi, rax
add rsi, rdi
mov qword [rsp + 0x100], rsi
sub rcx, rax
mov qword [rsp + 0x108], rcx
mov qword [rsp + 0x110], r8
jmp 0x57fda8
jmp 0x57fda8
mov rsi, qword [rsp + 0x108]
mov qword [rsp + 0x38], rsi
cmp rsi, 0x40
jge 0x57fdc5
nop dword [rax + rax]
jmp 0x57fe9c
mov rcx, qword [rsp + 0x108]
mov qword [rsp + 0x38], rcx
and rcx, 0xffffffffffffffc0
mov qword [rsp + 0x28], rcx
mov rdx, qword [rsp + 0x110]
mov rax, qword [rsp + 0x100]
cmp rdx, rcx
jae 0x57fdf5
jmp 0x57ffcf
jmp 0x57fdf7
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], rdx
mov rbx, qword [rsp + 0xf8]
mov qword [rsp], rbx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rdx
call fcn.00580a40
xorps xmm15, xmm15
mov r14, qword [0x007e5710]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x100]
mov rbx, qword [rsp + 0x110]
nop
jmp 0x57fe62
cmp rcx, rax
jae 0x57fe6c
jmp 0x57ffca
sub rbx, rax
mov rsi, rbx
neg rbx
sar rbx, 0x3f
and rbx, rax
add rdx, rbx
mov qword [rsp + 0x100], rdx
sub rcx, rax
mov qword [rsp + 0x108], rcx
mov qword [rsp + 0x110], rsi
jmp 0x57fe9e
jmp 0x57fe9e
mov rdx, qword [rsp + 0x108]
mov qword [rsp + 0x38], rdx
test rdx, rdx
jne 0x57feb5
jmp 0x57ffa9
mov rdx, qword [rsp + 0xf8]
test byte [rdx], al
add rdx, 0x20
test byte [rdx], al
jmp 0x57fec7
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0xa8], 0x40
mov qword [rsp + 0xb0], 0x40
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0xd8], 0x40
mov qword [rsp + 0xe0], 0x40
mov rdx, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x100]
mov rdi, qword [rsp + 0x110]
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rdi
mov rsi, qword [rsp + 0xd8]
mov qword [rsp + 0x48], rsi
cmp rsi, rdx
jg 0x57ff4b
jmp 0x57ff52
mov qword [rsp + 0x48], rdx
jmp 0x57ff54
jmp 0x57ff54
mov rdx, qword [rsp + 0xd0]
nop dword [rax]
cmp qword [rsp + 0xb8], rdx
jne 0x57ff6c
jmp 0x57ff8d
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0xb8]
call fcn.00469ec0
jmp 0x57ff8f
jmp 0x57ff8f
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x38], rdx
mov rsi, qword [rsp + 0xf8]
test byte [rsi], al
mov qword [rsi + 0x60], rdx
jmp 0x57ffab
jmp 0x57ffab
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
call fcn.004695a0
call fcn.00469560
call fcn.004695a0
mov ecx, 0x40
nop
call fcn.004695a0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.00466e80
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.0057fb00