Function at 0x65a6b0
Capabilities:
Get number of processors
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov cl, byte [0x65f037]
mov al, byte [0x65f030]
push ebx
xor cl, al
xor ebx, ebx
mov byte [0x65f037], cl
mov bl, cl
mov ecx, dword [ebp + 8]
mov dword [ebp - 4], ecx
mov cl, byte [0x65f03d]
and al, cl
mov edx, dword [0x65f020]
mov byte [0x65f030], al
or al, 2
shr al, 1
and eax, 0xff
push esi
mov dword [ebp - 8], eax
mov esi, dword [0x65f024]
fild dword [ebp - 8]
lea edx, [edx + esi*2]
push edi
mov dword [0x65f020], edx
mov edx, dword [0x65f028]
fdivr qword [0x65f040]
and edx, 3
mov byte [0x65fc48], 0x41
imul edx, ebx
fadd qword [0x65b860]
add esi, edx
mov bl, 0x6c
mov dword [0x65f024], esi
mov byte [0x65fc49], bl
fstp qword [0x65fbd0]
mov eax, dword fs:[0x18]
mov ecx, dword [eax + 0x30]
xor dword [ebp - 4], ecx
mov edx, dword [0x65f024]
mov eax, dword [0x65f020]
xor edi, edi
lea ecx, [edx + edx]
mov dword [ebp - 0xc], edi
or ecx, eax
mov dword [ebp - 0x10], ecx
mov ecx, dword [0xa5ff38]
fild qword [ebp - 0x10]
cmp ecx, eax
fadd qword [0x65f040]
fstp qword [0x65f040]
je 0x65a780
xor eax, ecx
mov dword [0x65f020], eax
mov cl, byte [0x65f037]
mov dl, byte [0x65f036]
mov esi, dword [0x65f028]
mov eax, dword [0x65f02c]
xor dl, cl
mov byte [0x65fc4a], 0x70
mov byte [0x65f036], dl
mov edx, esi
shr edx, 1
add eax, edx
xor edx, edx
mov dword [0x65f02c], eax
and eax, 7
mov dl, cl
mov byte [0x65fc4b], 0x68
imul eax, edx
add esi, eax
mov dword [0x65f028], esi
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp + 8]
mov eax, dword [ecx + 0xb0]
mov dword [ebp - 8], eax
mov al, byte [0xa5ff44]
mov cl, byte [0x65f031]
or cl, al
mov eax, dword [0x65f020]
mov byte [0x65f031], cl
mov cl, byte [0x65f035]
mov dl, cl
mov esi, dword [0x65f024]
or dl, 2
mov byte [0x65fc4c], 0x61
shr dl, 1
and edx, 0xff
mov byte [0x65fc4d], 0x42
mov dword [ebp - 0xc], edx
lea edx, [eax*8]
fild dword [ebp - 0xc]
or edx, esi
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x10], edx
mov dl, byte [0x65f036]
fdivr qword [0x65f048]
and cl, dl
mov byte [0x65f035], cl
mov ecx, eax
shr ecx, 5
and esi, ecx
xor ecx, ecx
and eax, 8
mov cl, dl
mov dword [0x65f024], esi
imul eax, ecx
fadd qword [0x65b858]
or dword [0x65f02c], eax
fstp qword [0x65fbe0]
fild qword [ebp - 0x10]
fstp qword [0x65f048]
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp + 8]
movzx edx, word [ecx + 0xac]
mov eax, dword [ebp - 8]
xor eax, 0xfffffffe
shl eax, 0xe
or eax, edx
shl eax, 8
or eax, dword [ecx + 0xa8]
shl eax, 8
or eax, dword [ecx + 0xa4]
mov dword [ebp - 8], eax
mov dl, byte [0x65f03e]
mov al, byte [0x65f032]
xor al, dl
mov esi, dword [0x65f028]
mov byte [0x65f032], al
mov al, byte [0x65f030]
or al, 0xc
mov byte [0x65fc4e], bl
shr al, 2
and eax, 0xff
mov byte [0x65fc4f], 0x65
mov dword [ebp + 8], eax
mov byte [0x65fc50], 0x6e
fild dword [ebp + 8]
mov byte [0x65fc51], 0x64
lea ecx, [esi + esi]
fdivr qword [0x65fbd8]
fadd qword [0x65fbd0]
fstp qword [0x65fbd8]
mov eax, dword [0x65f02c]
mov dl, byte [0x65f034]
or ecx, eax
xor ebx, ebx
mov dword [ebp - 0x10], ecx
mov cl, byte [0x65f039]
and dl, cl
mov bl, byte [0x65f035]
mov byte [0x65f034], dl
mov edx, eax
shl edx, 4
and esi, edx
mov edx, dword [0x65f024]
mov dword [0x65f028], esi
mov esi, edx
and esi, 8
mov dword [ebp - 0xc], edi
imul esi, ebx
fild qword [ebp - 0x10]
fadd qword [0x65f040]
fstp qword [0x65f040]
mov bl, byte [0x65f033]
or eax, esi
mov dword [0x65f02c], eax
mov al, byte [0x65f03d]
xor bl, al
mov al, byte [0x65f031]
or al, 0xc
mov esi, dword [ebp - 8]
shr al, 2
and eax, 0xff
mov byte [0x65f033], bl
mov dword [ebp + 8], eax
xor eax, eax
fild dword [ebp + 8]
mov al, byte [0xa5ff39]
xor ebx, ebx
mov bl, cl
fdivr qword [0x65fc40]
shr esi, 0x10
cmp eax, ebx
fadd qword [0x65fbe0]
fstp qword [0x65fc40]
jne 0x65a9b4
mov al, byte [0xa5ff44]
dec al
jne 0x65a9ab
mov byte [0xa5ff44], al
mov ecx, dword [0x65f020]
mov dword [ebp - 0xc], edi
pop edi
lea eax, [ecx + ecx]
or eax, edx
mov dword [ebp - 0x10], eax
mov eax, esi
fild qword [ebp - 0x10]
pop esi
pop ebx
fadd qword [0x65f048]
fstp qword [0x65f048]
mov esp, ebp
pop ebp
ret