Function at 0x57e380
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x28]
cmp r12, qword [r14 + 0x10]
jbe 0x57e708
sub rsp, 0xa8
mov qword [rsp + 0xa0], rbp
lea rbp, [rsp + 0xa0]
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xb0], rax
mov rdx, 0xffffffffffffffff
xor esi, esi
xor r8d, r8d
jmp 0x57e3e3
mov rbx, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x78]
mov rax, qword [rsp + 0xb0]
lea r9, [rdx + 1]
cmp rcx, r9
jle 0x57e63a
jb 0x57e6ff
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x58], rsi
sub rdi, rdx
lea rax, [rdi - 1]
mov qword [rsp + 0x68], rax
mov rsi, rax
neg rax
sar rax, 0x3f
and rax, r9
add rax, rbx
mov qword [rsp + 0x90], rax
nop
mov qword [rsp], rax
sub rcx, rdx
dec rcx
mov qword [rsp + 0x60], rcx
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rsi
mov byte [rsp + 0x18], 0x2c
call fcn.00403240
xorps xmm15, xmm15
mov r14, qword gs:[0x28]
mov r14, qword [r14]
mov rax, qword [rsp + 0x20]
test rax, rax
jge 0x57e46e
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
cmp rax, rdx
ja 0x57e6f7
mov rsi, qword [rsp + 0x90]
mov rcx, rsi
mov rbx, rax
mov rdi, rdx
jmp 0x57e669
mov qword [rsp + 0x78], rbx
jmp 0x57e680
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x50], rax
mov rbx, rax
mov rcx, rdx
mov rax, rsi
call fcn.005888c0
test al, al
je 0x57e4ce
mov rsi, qword [0x0079f080]
mov r8, qword [0x0079f088]
jmp 0x57e3c4
mov rdx, qword [rsp + 0xb0]
mov rdi, qword [rdx + 0x118]
mov rbx, qword [rdx + 0x108]
mov rcx, qword [rsp + 0x50]
cmp rcx, rdi
jbe 0x57e50a
lea rax, [0x005b9c40]
mov rsi, rcx
xor ecx, ecx
call fcn.0044b320
mov rbx, rax
mov rdi, rcx
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0x70], rdi
mov rax, rbx
mov rbx, qword [rsp + 0x80]
call fcn.00465020
mov rcx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0xb0]
mov qword [rdi + 0x110], rcx
mov rdx, qword [rsp + 0x70]
mov qword [rdi + 0x118], rdx
cmp dword [0x007f5a30], 0
jne 0x57e562
mov rdx, qword [rsp + 0x98]
mov qword [rdi + 0x108], rdx
nop
jmp 0x57e57f
lea rdx, [rdi + 0x108]
mov rax, rdi
mov rdi, rdx
mov rdx, qword [rsp + 0x98]
call fcn.00464300
mov rdi, rax
cmp byte [rdi], 0
jne 0x57e5a7
test rcx, rcx
je 0x57e5a7
movzx r12d, byte [rdx]
lea r13, [0x00603189]
movzx r12d, byte [r13 + r12]
mov byte [rdx], r12b
mov eax, 1
jmp 0x57e6a0
mov rax, qword [rdi + 0xf0]
mov rbx, qword [rdi + 0xf8]
mov rcx, qword [rdi + 0x100]
mov rdx, qword [rdi + 0x108]
mov rsi, qword [rdi + 0x110]
mov r8, qword [rdi + 0x118]
mov byte [rsp], 1
xor r9d, r9d
xor r10d, r10d
mov r11, r10
mov rdi, rdx
call fcn.0057a840
mov rdi, qword [rsp + 0xb0]
mov qword [rdi + 0xf8], rbx
mov qword [rdi + 0x100], rcx
cmp dword [0x007f5a30], 0
jne 0x57e60e
mov qword [rdi + 0xf0], rax
jmp 0x57e628
lea rdx, [rdi + 0xf0]
mov rcx, rdi
mov rdi, rdx
nop dword [rax + rax]
call fcn.004641e0
mov rdi, rcx
mov rsi, qword [rsp + 0x58]
mov r8, qword [rsp + 0x88]
jmp 0x57e3c4
mov rax, rsi
mov rbx, r8
mov rbp, qword [rsp + 0xa0]
add rsp, 0xa8
ret
dec rdx
mov r8, rdx
neg rdx
sar rdx, 0x3f
and edx, 1
add rsi, rdx
dec rax
mov rdx, r8
test rax, rax
je 0x57e492
cmp byte [rsi], 0x20
je 0x57e650
jmp 0x57e492
dec rax
nop
test rax, rax
je 0x57e49c
movzx r8d, byte [rax + rsi - 1]
cmp r8b, 0x20
je 0x57e67c
jmp 0x57e49c
lea rax, [r12 + 1]
nop
cmp rax, rcx
jge 0x57e5a7
jae 0x57e6f2
movzx r12d, byte [rax + rdx]
cmp r12b, 0x2d
jne 0x57e6d5
lea r12, [rax + 1]
cmp rcx, r12
jle 0x57e69a
nop
jbe 0x57e6ea
movzx r15d, byte [rax + rdx + 1]
movzx r15d, byte [r13 + r15]
mov byte [rax + rdx + 1], r15b
jmp 0x57e69a
lea r15, [0x00602d89]
movzx r15d, byte [r15 + r12]
mov byte [rdx + rax], r15b
mov r12, rax
jmp 0x57e69a
mov rax, r12
call fcn.00464680
call fcn.00464680
mov rcx, rax
call fcn.00464700
mov rax, r9
call fcn.00464740
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
nop dword [rax]
call fcn.00461fa0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.0057e380