Function at 0x57ac40
Capabilities:
Access peb ldr_data
Check os version

Disassembly:
lea r12, [rsp - 0xd0]
cmp r12, qword [r14 + 0x10]
jbe 0x57b4e0
push rbp
mov rbp, rsp
sub rsp, 0x148
mov qword [rsp + 0xf0], rax
lea rax, [0x0069b960]
call fcn.0040d680
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0xf0]
call fcn.0057b9a0
jmp 0x57ac95
mov rax, qword [rsp + 0xf0]
call fcn.0057b9a0
test cl, cl
je 0x57ad6b
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0xb0], rax
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], 0x23
call fcn.00403d60
xorps xmm15, xmm15
mov r14, qword [0x009dd8a0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x18]
cmp rcx, 0xffffffffffffffff
je 0x57acea
mov rdx, qword [rsp + 0x60]
nop
cmp rdx, rcx
jae 0x57acef
jmp 0x57b4da
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0xb0]
jmp 0x57ad8f
test rcx, rcx
je 0x57ac88
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0xb0], rax
mov qword [rsp], rax
mov qword [rsp + 8], rcx
mov byte [rsp + 0x10], 0x3a
call fcn.00403d60
xorps xmm15, xmm15
mov r14, qword [0x009dd8a0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x18]
nop dword [rax]
cmp rcx, 0xffffffffffffffff
je 0x57addb
mov rdx, qword [rsp + 0x60]
cmp rdx, rcx
jb 0x57b4d5
mov rax, qword [rsp + 0xb0]
mov rbx, rcx
mov rsi, rax
jmp 0x57ae49
mov rax, qword [rsp + 0xa8]
add rsp, 0x148
pop rbp
ret
dec rcx
mov rdx, rcx
neg rdx
sar rdx, 0x3f
and edx, 1
add rax, rdx
test rcx, rcx
je 0x57adb4
movzx edx, byte [rax]
cmp dl, 0x20
je 0x57ad7c
nop dword [rax]
cmp dl, 9
je 0x57ad7c
cmp dl, 0xa
je 0x57ad7c
cmp dl, 0xd
je 0x57ad7c
jmp 0x57adb4
dec rcx
test rcx, rcx
je 0x57ac88
movzx edx, byte [rax + rcx - 1]
cmp dl, 0x20
je 0x57adb1
cmp dl, 9
je 0x57adb1
cmp dl, 0xa
je 0x57adb1
cmp dl, 0xd
je 0x57adb1
jmp 0x57ad00
nop
lea rax, [0x00687cc0]
call fcn.0040d680
mov qword [rax + 8], 0x10
lea rcx, [0x006c8f4d]
mov qword [rax], rcx
lea rcx, [0x007416a0]
mov rdx, qword [rsp + 0xa8]
mov qword [rdx + 0x18], rcx
cmp dword [0x009dda80], 0
je 0x57ae26
call fcn.004671c0
mov qword [r11], rax
mov rcx, qword [rdx + 0x20]
mov qword [r11 + 8], rcx
mov qword [rdx + 0x20], rax
mov rax, rdx
add rsp, 0x148
pop rbp
ret
dec rcx
mov rdi, rcx
neg rdi
sar rdi, 0x3f
and edi, 1
add rax, rdi
test rcx, rcx
je 0x57ae71
movzx edi, byte [rax]
cmp dil, 0x20
je 0x57ae36
cmp dil, 9
je 0x57ae36
nop dword [rax]
cmp dil, 0xa
je 0x57ae36
cmp dil, 0xd
je 0x57ae36
jmp 0x57ae71
dec rcx
test rcx, rcx
je 0x57ae98
movzx edi, byte [rax + rcx - 1]
nop dword [rax + rax]
cmp dil, 0x20
je 0x57ae6e
cmp dil, 9
je 0x57ae6e
cmp dil, 0xa
je 0x57ae6e
cmp dil, 0xd
je 0x57ae6e
lea rdi, [rbx + 1]
nop dword [rax]
cmp rdx, rdi
jb 0x57b4ca
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0xc8], rax
sub rdx, rbx
dec rdx
mov rbx, rdx
neg rdx
sar rdx, 0x3f
and rdi, rdx
lea rdx, [rsi + rdi]
jmp 0x57af1b
lea rdi, [rdx + rsi*8]
lea rdi, [rdi - 0x20]
mov r8, qword [rsp + 0x120]
mov qword [rdx + rsi*8 - 0x28], r8
movups xmm0, xmmword [rsp + 0x128]
movups xmmword [rdi], xmm0
movups xmm0, xmmword [rsp + 0x138]
movups xmmword [rdi + 0x10], xmm0
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xe0]
nop dword [rax + rax]
jmp 0x57b2d2
test rbx, rbx
je 0x57ac88
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0x50], rbx
mov qword [rsp], rdx
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], 0x20
call fcn.00403d60
xorps xmm15, xmm15
mov r14, qword [0x009dd8a0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x18]
cmp rcx, 0xffffffffffffffff
je 0x57afad
mov rdx, qword [rsp + 0x50]
cmp rdx, rcx
jb 0x57b4c5
lea rax, [rcx + 1]
nop dword [rax]
cmp rdx, rax
jb 0x57b4bd
sub rdx, rcx
dec rdx
mov rsi, rdx
neg rdx
sar rdx, 0x3f
and rax, rdx
mov rdx, qword [rsp + 0xa0]
lea r8, [rdx + rax]
jmp 0x57b460
xor eax, eax
mov rcx, qword [rsp + 0x50]
xor edx, edx
mov qword [rsp + 0x58], rcx
nop dword [rax + rax]
test rax, rax
je 0x57b114
cmp byte [rdx], 0x5b
je 0x57afdb
xor r8d, r8d
xor r9d, r9d
xor esi, esi
jmp 0x57b11c
mov qword [rsp + 0x90], rax
mov qword [rsp + 0xe8], rdx
mov qword [rsp], rdx
mov qword [rsp + 8], rax
mov byte [rsp + 0x10], 0x5d
call fcn.00403d60
xorps xmm15, xmm15
mov r14, qword [0x009dd8a0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x18]
cmp rcx, 0xffffffffffffffff
je 0x57b3d5
mov rdx, qword [rsp + 0x90]
cmp rdx, rcx
jb 0x57b447
cmp rcx, 1
jb 0x57b43b
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x108], 0
movups xmmword [rsp + 0x110], xmm15
lea rbx, [rcx - 1]
mov qword [rsp + 0x78], rbx
mov rdx, rbx
neg rdx
sar rdx, 0x3f
and edx, 1
mov rsi, qword [rsp + 0xe8]
lea rax, [rsi + rdx]
mov qword [rsp + 0xc0], rax
movups xmmword [rsp + 0xf8], xmm15
lea rdx, [0x0057b500]
mov qword [rsp + 0xf8], rdx
lea rdi, [rsp + 0x108]
mov qword [rsp + 0x100], rdi
lea rcx, [rsp + 0xf8]
call fcn.0057c160
test rax, rax
jne 0x57b331
mov rax, qword [rsp + 0x68]
lea rdx, [rax + 1]
mov rcx, qword [rsp + 0x90]
cmp rcx, rdx
jb 0x57b433
sub rcx, rax
lea rax, [rcx - 1]
mov rsi, rax
neg rsi
sar rsi, 0x3f
and rdx, rsi
mov rsi, qword [rsp + 0x108]
mov r8, qword [rsp + 0x110]
mov r9, qword [rsp + 0x118]
mov r10, qword [rsp + 0xe8]
add rdx, r10
mov rcx, qword [rsp + 0x58]
jmp 0x57b11c
xor r8d, r8d
xor r9d, r9d
xor esi, esi
mov qword [rsp + 0x50], rax
mov qword [rsp + 0xe0], rdx
mov r10, qword [rsp + 0xa8]
cmp qword [r10 + 0x28], 0
jne 0x57b198
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x98], rsi
mov qword [rsp + 0x48], r9
call fcn.0040e100
cmp dword [0x009dda80], 0
jne 0x57b162
mov rdx, qword [rsp + 0xa8]
jmp 0x57b17a
call fcn.004671c0
mov qword [r11], rax
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rdx + 0x28]
mov qword [r11 + 8], rsi
mov qword [rdx + 0x28], rax
mov rcx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x98]
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
mov r10, rdx
movups xmmword [rsp + 0x120], xmm15
movups xmmword [rsp + 0x128], xmm15
movups xmmword [rsp + 0x138], xmm15
mov rdx, qword [rsp + 0xa0]
mov qword [rsp + 0x120], rdx
mov qword [rsp + 0x128], rcx
mov qword [rsp + 0x130], rsi
mov qword [rsp + 0x138], r8
mov qword [rsp + 0x140], r9
mov rbx, qword [r10 + 0x28]
lea rax, [0x0067e320]
mov rcx, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0x80]
nop
call fcn.00412bc0
mov rcx, qword [rax + 0x10]
mov rbx, qword [rax + 8]
inc rbx
mov rdx, qword [rax]
cmp rcx, rbx
jae 0x57b264
mov qword [rsp + 0xd8], rax
mov rax, rdx
mov edi, 1
lea rsi, [0x00697ec0]
call fcn.0044baa0
mov rdx, qword [rsp + 0xd8]
mov qword [rdx + 0x10], rcx
cmp dword [0x009dda80], 0
je 0x57b258
call fcn.004671c0
mov qword [r11], rax
mov rsi, qword [rdx]
mov qword [r11 + 8], rsi
mov qword [rdx], rax
mov rcx, rax
mov rax, rdx
mov rdx, rcx
mov qword [rax + 8], rbx
lea rsi, [rbx + rbx*4]
lea rbx, [rdx + rsi*8]
lea rbx, [rbx - 0x28]
cmp dword [0x009dda80], 0
nop dword [rax + rax]
je 0x57aed2
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0xd0], rdx
lea rax, [0x00697ec0]
lea rcx, [rsp + 0x120]
call fcn.00413880
mov rdx, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0x88]
jmp 0x57aed2
dec rbx
mov rsi, rbx
neg rsi
sar rsi, 0x3f
and esi, 1
add rdx, rsi
test rbx, rbx
je 0x57b300
movzx esi, byte [rdx]
nop word [rax + rax]
cmp sil, 0x20
je 0x57b2bf
cmp sil, 9
je 0x57b2bf
cmp sil, 0xa
je 0x57b2bf
cmp sil, 0xd
je 0x57b2bf
jmp 0x57b300
dec rbx
nop dword [rax]
test rbx, rbx
je 0x57ac88
movzx esi, byte [rbx + rdx - 1]
cmp sil, 0x20
je 0x57b2fa
cmp sil, 9
je 0x57b2fa
nop word [rax + rax]
cmp sil, 0xa
je 0x57b2fa
cmp sil, 0xd
je 0x57b2fa
jmp 0x57af25
xor eax, eax
lea rbx, [0x006c9d21]
mov ecx, 0x12
mov rdi, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0x78]
call fcn.0044f8a0
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0xb8], rax
lea rax, [0x00687cc0]
call fcn.0040d680
mov rdx, qword [rsp + 0x70]
mov qword [rax + 8], rdx
cmp dword [0x009dda80], 0
jne 0x57b386
mov rcx, qword [rsp + 0xb8]
jmp 0x57b396
call fcn.004671a0
mov rcx, qword [rsp + 0xb8]
mov qword [r11], rcx
mov qword [rax], rcx
lea rcx, [0x007416a0]
mov rdx, qword [rsp + 0xa8]
mov qword [rdx + 0x18], rcx
cmp dword [0x009dda80], 0
je 0x57b3c5
call fcn.004671c0
mov qword [r11], rax
mov rcx, qword [rdx + 0x20]
mov qword [r11 + 8], rcx
mov qword [rdx + 0x20], rax
mov rax, rdx
add rsp, 0x148
pop rbp
ret
nop
lea rax, [0x00687cc0]
nop dword [rax]
call fcn.0040d680
mov qword [rax + 8], 0x1a
lea rcx, [0x006ce598]
mov qword [rax], rcx
lea rcx, [0x007416a0]
mov rdx, qword [rsp + 0xa8]
mov qword [rdx + 0x18], rcx
cmp dword [0x009dda80], 0
je 0x57b423
call fcn.004671c0
mov qword [r11], rax
mov rcx, qword [rdx + 0x20]
mov qword [r11 + 8], rcx
mov qword [rdx + 0x20], rax
mov rax, rdx
add rsp, 0x148
pop rbp
ret
mov rax, rdx
call fcn.00467620
mov eax, 1
xor ecx, ecx
call fcn.00467620
call fcn.004675a0
dec rsi
mov r9, rsi
neg r9
sar r9, 0x3f
and r9d, 1
add r8, r9
test rsi, rsi
je 0x57b48b
movzx r9d, byte [r8]
cmp r9b, 0x20
je 0x57b44c
cmp r9b, 9
je 0x57b44c
cmp r9b, 0xa
je 0x57b44c
nop dword [rax + rax]
cmp r9b, 0xd
je 0x57b44c
jmp 0x57b48b
dec rsi
test rsi, rsi
je 0x57b4b2
movzx r9d, byte [r8 + rsi - 1]
cmp r9b, 0x20
je 0x57b488
nop dword [rax]
cmp r9b, 9
je 0x57b488
cmp r9b, 0xa
je 0x57b488
cmp r9b, 0xd
je 0x57b488
mov rax, rsi
mov rdx, r8
jmp 0x57afb6
mov rcx, rdx
call fcn.00467620
call fcn.004675a0
mov rax, rdi
mov rcx, rdx
call fcn.00467620
call fcn.004675a0
call fcn.004675a0
nop
mov qword [rsp + 8], rax
call fcn.004652a0
mov rax, qword [rsp + 8]
jmp fcn.0057ac40