Function at 0x58abf0
Capabilities:
Access peb ldr_data
Check for peb ntglobalflag flag
Get number of processors
Get process heap flags
Get process heap force flags
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push 0x40baf6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x88
push ebx
push esi
push edi
mov dword [ebp - 8], esp
mov dword [ebp - 4], 0x4034d8
mov ecx, dword [0x78c3b0]
mov esi, dword [fcn.004013c4]
xor edi, edi
mov edx, 0x44780c
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x7c], edi
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x4476a8
lea ecx, [eax + 4]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x4478d8
add ecx, 8
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x44791c
lea ecx, [eax + 0xc]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x4479c0
add ecx, 0x10
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x447a00
lea ecx, [eax + 0x14]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x447a38
add ecx, 0x18
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x447a7c
lea ecx, [eax + 0x1c]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x447ac8
add ecx, 0x20
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x447b00
lea ecx, [eax + 0x24]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x447b94
add ecx, 0x28
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x447bc0
lea ecx, [eax + 0x2c]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x447ce0
add ecx, 0x30
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x447d7c
lea ecx, [eax + 0x34]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x447db4
add ecx, 0x38
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x447de0
lea ecx, [eax + 0x3c]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x447e38
add ecx, 0x40
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x447e70
lea ecx, [eax + 0x44]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x447ebc
add ecx, 0x48
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x447f78
lea ecx, [eax + 0x4c]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x44809c
add ecx, 0x50
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x448160
lea ecx, [eax + 0x54]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x448188
add ecx, 0x58
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x448280
lea ecx, [eax + 0x5c]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x44830c
add ecx, 0x60
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x4483dc
lea ecx, [eax + 0x64]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x44846c
add ecx, 0x68
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x4485c0
lea ecx, [eax + 0x6c]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x448658
add ecx, 0x70
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x4486e0
lea ecx, [eax + 0x74]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x448720
add ecx, 0x78
call esi
mov eax, dword [0x78c3b0]
mov edx, 0x4487b8
lea ecx, [eax + 0x7c]
call esi
mov ecx, dword [0x78c3b0]
mov edx, 0x4487ec
add ecx, 0x80
call esi
mov eax, 2
lea edx, [ebp - 0x34]
push edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x54]
push ecx
lea edx, [ebp - 0x7c]
push edx
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x2c], 1
mov dword [ebp - 0x3c], 0x64
mov dword [ebp - 0x4c], edi
push eax
lea ecx, [ebp - 0x20]
push ecx
call dword [0x401188]
mov ebx, dword [fcn.00401400]
cmp eax, edi
je 0x58af57
mov edx, dword [0x78c19c]
mov eax, dword [0x78c198]
push 0x40000000
push edi
push edx
push eax
call dword [fcn.004013e4]
fstp qword [ebp - 0x8c]
lea ecx, [ebp - 0x20]
push ecx
call ebx
mov ecx, dword [0x78c15c]
mov edx, dword [ebp - 0x8c]
mov dword [ecx + eax*8], edx
mov edx, dword [ebp - 0x88]
mov ecx, dword [0x78c15c]
mov dword [ecx + eax*8 + 4], edx
lea edx, [ebp - 0x20]
push edx
call ebx
mov ecx, dword [0x78c15c]
fld qword [ecx + eax*8]
fcomp qword [0x4034d0]
fnstsw ax
test ah, 0x41
jne 0x58af40
lea edx, [ebp - 0x20]
push edx
call ebx
mov ecx, dword [0x78c15c]
fld qword [ecx + eax*8]
lea edx, [ebp - 0x20]
cmp dword [section..data], 0
jne 0x58af07
fdiv qword [0x401f80]
jmp 0x58af18
push dword [0x401f84]
push dword [0x401f80]
call fcn.0040bb14
push edx
fstp qword [ebp - 0x94]
call ebx
mov edx, dword [0x78c15c]
mov ecx, dword [ebp - 0x94]
mov dword [edx + eax*8], ecx
mov ecx, dword [ebp - 0x90]
mov edx, dword [0x78c15c]
mov dword [edx + eax*8 + 4], ecx
lea eax, [ebp - 0x7c]
push eax
lea ecx, [ebp - 0x6c]
push ecx
lea edx, [ebp - 0x20]
push edx
call dword [0x4014b8]
jmp 0x58ae7c
mov eax, dword [0x78c3b0]
mov ecx, dword [eax]
mov ebx, dword [fcn.004010c0]
push ecx
call ebx
mov dword [0x78bd9c], eax
mov eax, dword [0x78c3b0]
mov edx, 0x4485c0
lea ecx, [eax + 0x94]
call esi
mov ecx, dword [0x78c3b0]
mov edx, dword [ecx + 0x94]
push edx
call ebx
mov dword [ebp - 0x98], eax
fild dword [ebp - 0x98]
mov eax, dword [0x78c2ac]
fstp dword [eax + 0x1450]
mov eax, dword [0x7933cc]
cmp eax, edi
jne 0x58afbd
push 0x7933cc
push 0x43e8e8
call dword [fcn.004013a0]
cmp dword [0x78d5d0], edi
mov esi, dword [0x7933cc]
jne 0x58afdb
push 0x78d5d0
push 0x40f5b0
call dword [fcn.004013a0]
mov ecx, dword [0x78d5d0]
mov ebx, dword [esi]
push ecx
lea edx, [ebp - 0x24]
push edx
call dword [fcn.004011b0]
push eax
push esi
call dword [ebx + 0xc]
fnclex
cmp eax, edi
jge 0x58b008
push 0xc
push 0x43e8d8
push esi
push eax
call dword [fcn.00401140]
lea ecx, [ebp - 0x24]
call dword [fcn.004014c4]
cmp dword [0x7933cc], edi
jne 0x58b029
push 0x7933cc
push 0x43e8e8
call dword [fcn.004013a0]
cmp dword [0x78d5d0], edi
mov esi, dword [0x7933cc]
jne 0x58b047
push 0x78d5d0
push 0x40f5b0
call dword [fcn.004013a0]
mov eax, dword [0x78d5d0]
mov ebx, dword [esi]
push eax
lea ecx, [ebp - 0x24]
push ecx
call dword [fcn.004011b0]
push eax
push esi
call dword [ebx + 0x10]
fnclex
cmp eax, edi
jge 0x58b073
push 0x10
push 0x43e8d8
push esi
push eax
call dword [fcn.00401140]
lea ecx, [ebp - 0x24]
call dword [fcn.004014c4]
wait
push 0x58b0ab
jmp 0x58b08e
lea edx, [ebp - 0x7c]
push edx
lea eax, [ebp - 0x6c]
push eax
push 2
call dword [fcn.004010d4]
add esp, 0xc
lea ecx, [ebp - 0x20]
call dword [fcn.004010a8]
ret