Function at 0x575e60
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x10]
cmp r12, qword [r14 + 0x10]
jbe 0x57657d
push rbp
mov rbp, rsp
sub rsp, 0x88
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xb0], rdi
test rsi, rsi
je 0x576014
cmp rsi, 1
je 0x575fda
nop dword [rax]
cmp rbx, rsi
je 0x575fab
jl 0x575f9b
mov qword [rsp + 0xc0], r8
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0xb0], rdi
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0x98], rax
nop
cmp qword [0x00721b08], rsi
jl 0x575f67
cmp rbx, 0x40
jle 0x575f25
mov r9, rbx
sub rbx, rsi
mov qword [rsp + 0x80], rbx
movzx r10d, byte [rdi]
mov byte [rsp + 0x3f], r10b
movzx r11d, byte [rdi + 1]
mov byte [rsp + 0x3d], r11b
lea r12, [rbx + 1]
mov qword [rsp + 0x48], r12
xor edx, edx
xor r13d, r13d
nop
jmp 0x5762c0
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], r8
call fcn.004036c0
xorps xmm15, xmm15
mov r14, qword [0x00721c80]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x30]
add rsp, 0x88
pop rbp
ret
mov r10, rbx
sub rbx, rsi
mov qword [rsp + 0x80], rbx
movzx r11d, byte [rdi]
mov byte [rsp + 0x3e], r11b
movzx r12d, byte [rdi + 1]
mov byte [rsp + 0x3c], r12b
lea r13, [rbx + 1]
mov qword [rsp + 0x40], r13
xor edx, edx
xor r9d, r9d
jmp 0x57602d
mov rax, 0xffffffffffffffff
add rsp, 0x88
pop rbp
ret
jne 0x575fbf
mov rbx, rax
mov rcx, rsi
mov rax, rdi
call fcn.00403360
test al, al
jne 0x575fcf
mov rax, 0xffffffffffffffff
add rsp, 0x88
pop rbp
ret
xor eax, eax
add rsp, 0x88
pop rbp
ret
movzx edx, byte [rdi]
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rcx
mov byte [rsp + 0x18], dl
call fcn.00403880
xorps xmm15, xmm15
mov r14, qword [0x00721c80]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x20]
add rsp, 0x88
pop rbp
ret
xor eax, eax
add rsp, 0x88
pop rbp
ret
mov rdx, r9
mov r9, rbx
mov rbx, qword [rsp + 0x80]
cmp rdx, r13
jge 0x576262
cmp r10, rdx
jbe 0x5762a9
mov qword [rsp + 0x50], r9
movzx r15d, byte [rax + rdx]
cmp r15b, r11b
je 0x57611a
cmp rcx, r13
jb 0x57629e
lea r15, [rdx + 1]
nop
cmp r15, r13
ja 0x576293
mov qword [rsp + 0x60], rdx
sub rbx, rdx
sub rcx, rdx
dec rcx
mov r8, rcx
neg rcx
sar rcx, 0x3f
and rcx, r15
add rcx, rax
mov qword [rsp], rcx
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], r8
mov byte [rsp + 0x18], r11b
call fcn.00403880
xorps xmm15, xmm15
mov r14, qword [0x00721c80]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x20]
test rax, rax
jl 0x576262
mov r10, qword [rsp + 0x60]
lea rdx, [rax + r10]
lea rdx, [rdx + 1]
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
mov r9, qword [rsp + 0x50]
mov r10, qword [rsp + 0xa0]
movzx r11d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x3c]
mov r13, qword [rsp + 0x40]
lea r15, [rdx + 1]
nop
cmp r10, r15
jbe 0x576288
mov qword [rsp + 0x78], rdx
movzx ebx, byte [rdx + rax + 1]
cmp bl, r12b
jne 0x5761cd
lea rbx, [rdx + rsi]
cmp rcx, rbx
jb 0x57627d
cmp rdx, rbx
ja 0x576272
mov qword [rsp + 0x70], r15
mov r8, rdx
sub rdx, rcx
sar rdx, 0x3f
and rdx, r8
add rdx, rax
mov rbx, rdi
mov rax, rdx
mov rcx, rsi
call fcn.00403360
test al, al
jne 0x576254
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
mov r9, qword [rsp + 0x50]
mov r10, qword [rsp + 0xa0]
movzx r11d, byte [rsp + 0x3e]
movzx r12d, byte [rsp + 0x3c]
mov r13, qword [rsp + 0x40]
mov r15, qword [rsp + 0x70]
lea rbx, [r9 + 1]
mov r9, r15
sar r15, 4
add r15, 4
nop dword [rax]
cmp r15, rbx
jg 0x57601f
cmp r9, r13
jge 0x57601f
sub rcx, rdx
sub r10, rdx
lea r11, [rcx - 1]
mov r12, r11
neg r11
sar r11, 0x3f
and r9, r11
lea rbx, [r9 + rax]
lea rcx, [r10 - 1]
lea rax, [0x005ecc20]
mov r9, r8
mov r8, rsi
mov rsi, rdi
mov rdi, r12
call fcn.005765e0
test rax, rax
jge 0x57623e
mov rax, 0xffffffffffffffff
add rsp, 0x88
pop rbp
ret
mov rcx, qword [rsp + 0x78]
lea rax, [rax + rcx]
lea rax, [rax + 1]
add rsp, 0x88
pop rbp
ret
mov rax, qword [rsp + 0x78]
add rsp, 0x88
pop rbp
ret
mov rax, 0xffffffffffffffff
add rsp, 0x88
pop rbp
ret
mov rax, rdx
mov rcx, rbx
call fcn.0045ce40
mov rdx, rcx
mov rcx, rbx
call fcn.0045ce00
mov rax, r15
mov rcx, r10
call fcn.0045cd80
mov rax, r15
mov rcx, r13
call fcn.0045ce40
mov rdx, rcx
mov rcx, r13
call fcn.0045ce00
mov rax, rdx
mov rcx, r10
call fcn.0045cd80
mov rbx, qword [rsp + 0x80]
mov rdx, r15
nop
cmp rdx, r12
jge 0x576529
cmp r9, rdx
jbe 0x576571
mov qword [rsp + 0x58], r13
movzx r15d, byte [rax + rdx]
nop dword [rax]
cmp r15b, r10b
je 0x5763b1
cmp rcx, r12
jb 0x576566
lea r15, [rdx + 1]
cmp r15, r12
ja 0x57655b
mov qword [rsp + 0x68], rdx
sub rbx, rdx
sub rcx, rdx
dec rcx
mov r8, rcx
neg rcx
sar rcx, 0x3f
and r15, rcx
lea rcx, [rax + r15]
mov qword [rsp], rcx
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], r8
mov byte [rsp + 0x18], r10b
call fcn.00403880
xorps xmm15, xmm15
mov r14, qword [0x00721c80]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x20]
test rax, rax
jl 0x576519
mov rsi, qword [rsp + 0x68]
lea rdx, [rsi + rax]
lea rdx, [rdx + 1]
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
mov r9, qword [rsp + 0xa0]
movzx r10d, byte [rsp + 0x3f]
movzx r11d, byte [rsp + 0x3d]
mov r12, qword [rsp + 0x48]
mov r13, qword [rsp + 0x58]
lea r15, [rdx + 1]
cmp r9, r15
jbe 0x576550
mov qword [rsp + 0x78], rdx
movzx ebx, byte [rax + rdx + 1]
cmp bl, r11b
jne 0x576464
lea rbx, [rsi + rdx]
cmp rcx, rbx
jb 0x576545
nop
cmp rdx, rbx
ja 0x576539
mov qword [rsp + 0x70], r15
mov r8, rdx
sub rdx, rcx
sar rdx, 0x3f
and rdx, r8
add rdx, rax
mov rbx, rdi
mov rax, rdx
mov rcx, rsi
call fcn.00403360
test al, al
jne 0x57650b
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xc0]
mov r9, qword [rsp + 0xa0]
movzx r10d, byte [rsp + 0x3f]
movzx r11d, byte [rsp + 0x3d]
mov r12, qword [rsp + 0x48]
mov r13, qword [rsp + 0x58]
mov r15, qword [rsp + 0x70]
inc r13
lea rbx, [rdx + 0x11]
sar rbx, 0x3f
shr rbx, 0x3d
lea rbx, [rbx + rdx]
lea rbx, [rbx + 0x11]
sar rbx, 3
nop
cmp rbx, r13
jge 0x5762b4
sub rcx, rdx
sub r9, rdx
dec rcx
mov rbx, rcx
neg rcx
sar rcx, 0x3f
and r15, rcx
add rax, r15
mov qword [rsp], rax
lea rax, [r9 - 1]
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], r8
call fcn.004036c0
xorps xmm15, xmm15
mov r14, qword [0x00721c80]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x30]
nop
test rax, rax
jl 0x5764fb
mov rcx, qword [rsp + 0x78]
lea rax, [rcx + rax]
lea rax, [rax + 1]
add rsp, 0x88
pop rbp
ret
mov rax, 0xffffffffffffffff
add rsp, 0x88
pop rbp
ret
mov rax, qword [rsp + 0x78]
add rsp, 0x88
pop rbp
ret
mov rax, 0xffffffffffffffff
add rsp, 0x88
pop rbp
ret
mov rax, 0xffffffffffffffff
add rsp, 0x88
pop rbp
ret
mov rax, rdx
mov rcx, rbx
nop
call fcn.0045ce40
mov rdx, rcx
mov rcx, rbx
call fcn.0045ce00
mov rax, r15
mov rcx, r9
call fcn.0045cd80
mov rax, r15
mov rcx, r12
call fcn.0045ce40
mov rdx, rcx
mov rcx, r12
call fcn.0045ce00
mov rax, rdx
mov rcx, r9
call fcn.0045cd80
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
nop dword [rax + rax]
call fcn.0045aaa0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
jmp fcn.00575e60