Function at 0x4560c0
Capabilities:
Access peb ldr_data
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x598195
mov eax, dword fs:[0]
push eax
sub esp, 0x64
mov eax, dword [0x5de00c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x44], esi
push ecx
lea ecx, [ebp - 0x70]
call fcn.004871d0
mov dword [ebp - 4], 0
lea eax, [ebp - 0x38]
push 0x40
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
call fcn.0052d778
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [ebp - 0x38], eax
push 0x5e4790
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 1
call fcn.00488060
mov eax, dword [esi + 0x30]
xor edi, edi
mov dword [ebp - 0x4c], edi
mov esi, dword [eax + 0x10]
xor eax, eax
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x48], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x28]
push edi
xorps xmm0, xmm0
mov dword [ebp - 0x18], edi
push 0x5bd430
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], edi
call fcn.00403d10
mov byte [ebp - 4], 4
push esi
push edi
push dword [ebp - 0x3c]
call fcn.00580910
cmp eax, edi
jne 0x4562c5
cmp edi, dword [ebp - 0x40]
je 0x4561a2
mov dword [edi], esi
add edi, 4
mov dword [ebp - 0x4c], edi
jmp 0x4561c1
lea eax, [ebp - 0x30]
push eax
push edi
lea ecx, [ebp - 0x50]
call fcn.0040f0d0
mov eax, dword [ebp - 0x48]
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x4c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x44]
mov edx, dword [eax + 0x30]
mov eax, dword [edx + 0x18]
mov ecx, dword [edx + 0x14]
sub eax, ecx
cmp esi, eax
jb 0x4561dd
xor al, al
mov byte [ebp - 0x29], al
mov byte [ebp - 0x54], al
jmp 0x45624e
mov al, byte [ecx + esi]
inc esi
mov byte [ebp - 0x29], al
mov dword [ebp - 0x30], esi
mov byte [ebp - 0x54], al
cmp al, 0xff
je 0x4562c5
cmp al, 0xf8
je 0x4562c5
cmp al, 0x1a
je 0x4562c5
cmp al, 0x1b
je 0x4562c5
cmp al, 0x1c
je 0x4562c5
cmp al, 0x16
je 0x4562c5
cmp al, 0x17
je 0x4562c5
cmp al, 8
je 0x4562c5
cmp al, 7
je 0x4562c5
cmp al, 6
je 0x4562c5
cmp al, 5
je 0x4562c5
cmp al, 2
je 0x4562c5
cmp al, 1
je 0x4562c5
lea eax, [ebp - 0x38]
mov ecx, edx
push eax
push dword [ebp - 0x54]
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.004e05e0
movzx eax, byte [ebp - 0x29]
mov byte [ebp - 4], 5
sub eax, 0x14
je 0x4562ae
sub eax, 1
jne 0x45629a
mov eax, dword [ebp - 0x64]
mov edx, dword [eax + 8]
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x456281
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.004039f0
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 4
call fcn.00403860
mov esi, dword [ebp - 0x30]
jmp 0x456181
lea ecx, [ebp - 0x64]
call fcn.00403860
xor eax, eax
cmp dword [ebp - 0x18], eax
setne al
mov dword [ebp - 0x44], eax
mov esi, eax
jmp 0x4562c7
xor esi, esi
mov ecx, dword [ebp - 0x14]
cmp ecx, 8
jb 0x456301
mov edx, dword [ebp - 0x28]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4562f7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45637b
push ecx
push edx
call fcn.0052d747
add esp, 8
mov edx, dword [ebp - 0x3c]
test edx, edx
je 0x456334
mov ecx, dword [ebp - 0x40]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x45632a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45637b
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, dword [ebp - 0x38]
push dword [eax + 4]
lea eax, [ebp - 0x38]
push eax
mov ecx, eax
call fcn.00404300
push 0x40
push dword [ebp - 0x38]
call fcn.0052d747
mov edx, dword [ebp - 0x70]
add esp, 8
test edx, edx
je 0x45638b
mov ecx, dword [ebp - 0x68]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x456381
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x456381
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0052d747
add esp, 8
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0052d3c5
mov esp, ebp
pop ebp
ret