Function at 0x4daa40
Capabilities:
Check os version
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d65bc
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x5c
push ebx
push esi
push edi
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
call fcn.004db230
mov dword [ebp - 4], 0
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp - 0x10]
add ecx, 0x6e4
call fcn.00549dd0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1c]
push ecx
mov ecx, dword [ebp - 0x10]
add ecx, 0x6f0
call fcn.00549dd0
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x10]
add ecx, 0x70c
call fcn.0058c8c0
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x10]
add ecx, 0x718
call fcn.0058c8c0
mov byte [ebp - 4], 4
lea edx, [ebp - 0x20]
push edx
mov ecx, dword [ebp - 0x10]
add ecx, 0x724
call fcn.004e8c80
mov byte [ebp - 4], 5
push fcn.004db790
push 0x4db760
push 3
push 0x14
mov eax, dword [ebp - 0x10]
add eax, 0x730
push eax
call fcn.005b9070
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x10]
mov dword [ecx], 0x5dfe2c
mov dword [ebp - 0x14], 0
mov ecx, dword [ebp - 0x10]
call fcn.004db4d0
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 0x10]
mov dword [edx + 0x7d0], eax
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp + 8]
mov dword [ecx + 0x5d0], edx
lea eax, [ebp + 0xc]
push eax
mov ecx, dword [ebp - 0x10]
call fcn.0049c8f0
mov ecx, dword [ebp - 0x10]
mov dx, word [ebp + 0xc]
mov word [ecx + 0x5d4], dx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x98]
xor edx, edx
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x28], ecx
mov dword [eax + 0x2c], edx
mov ecx, dword [ebp - 0x10]
push 0
push 0x14
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
call fcn.005b9e60
push 0
push 0x64
push edx
push eax
call fcn.005b9db0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x658], eax
mov edx, dword [ebp - 0x10]
push 0
push 0x50
mov eax, dword [edx + 0x2c]
push eax
mov ecx, dword [edx + 0x28]
push ecx
call fcn.005b9e60
push 0
push 0x64
push edx
push eax
call fcn.005b9db0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x65c], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 8]
mov dx, word [ecx + 0x94]
mov word [eax + 0x30], dx
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 8]
mov dx, word [ecx + 0x18]
mov word [eax + 0x32], dx
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1c]
mov dword [eax + 0x5d8], edx
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 8]
mov dx, word [ecx + 0x18]
mov word [eax + 0x34], dx
mov ecx, dword [ebp + 8]
call fcn.004c7c10
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x38], eax
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x3c], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x40], 0
mov ecx, dword [ebp + 0x14]
and ecx, 0xff
test ecx, ecx
je 0x4dac20
cmp dword [ebp + 0x18], 0
je 0x4dac20
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 0x18]
mov dword [edx + 0x44], eax
jmp 0x4dac2e
mov ecx, dword [ebp + 8]
call fcn.004c7c10
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x44], eax
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x48], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x4c], 0
mov ecx, dword [ebp + 0x14]
and ecx, 0xff
test ecx, ecx
je 0x4dac5d
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 0x1c]
mov dword [edx + 0x638], eax
jmp 0x4dac6a
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x638], 0
mov ecx, dword [ebp + 8]
call fcn.00483b50
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x50], eax
mov ecx, dword [ebp + 8]
call fcn.004bcb50
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x54], eax
mov ecx, dword [ebp + 8]
call fcn.004f5830
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x58], eax
mov ecx, dword [ebp + 8]
call fcn.004f8970
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x5c], eax
mov ecx, dword [ebp + 8]
call fcn.004f8990
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x60], eax
mov ecx, dword [ebp + 8]
call fcn.004be320
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x64], eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x6c]
mov dword [edx + 0x68], ecx
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
mov cx, word [eax + 0x80]
mov word [edx + 0x6c], cx
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x38]
mov dword [edx + 0x624], ecx
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x3c]
mov dword [edx + 0x628], ecx
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x40]
mov dword [edx + 0x62c], ecx
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
mov dword [edx + 0x630], ecx
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
mov dword [edx + 0x634], ecx
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x70], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x74], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x78], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x7c], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x80], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x84], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x88], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x8c], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x90], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x94], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x98], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x9c], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0xa0], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x5b0], 0
mov dword [eax + 0x5b4], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x5b8], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x5bc], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x7c8], 0
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0x5d0]
xor eax, eax
mov ax, word [edx + 0x78]
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x660], eax
mov edx, dword [ebp - 0x10]
mov word [edx + 0x654], 0
mov eax, dword [ebp - 0x10]
mov word [eax + 0x656], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x644], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x648], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x64c], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x650], 0
mov edx, dword [ebp - 0x10]
mov word [edx + 0x640], 0
mov eax, dword [ebp - 0x10]
mov word [eax + 0x642], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x664], 0
mov dword [ebp - 0x24], 0x14
lea edx, [ebp - 0x24]
push edx
mov ecx, dword [ebp - 0x10]
call fcn.004db7d0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x66c], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x670], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x670], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x5b0], 0
mov dword [eax + 0x5b4], 0
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x10]
mov eax, dword [ecx + 0xa0]
mov dword [edx + 0x678], eax
mov ecx, dword [ecx + 0xa4]
mov dword [edx + 0x67c], ecx
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
mov cx, word [eax + 0x80]
mov word [edx + 0x6c], cx
xor edx, edx
test edx, edx
je 0x4daf19
mov dword [ebp - 0x28], 0
jmp 0x4daf2d
call fcn.005b62c0
and eax, 0x80000007
jns 0x4daf2a
dec eax
or eax, 0xfffffff8
inc eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x28]
mov dword [eax + 0x20], ecx
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x680], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x7b4], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x684], 0
mov ecx, dword [ebp + 8]
call fcn.004db7b0
and eax, 0xffff
push eax
mov ecx, dword [ebp - 0x10]
call fcn.004de540
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x6c4], 0
mov eax, dword [ebp - 0x10]
mov word [eax + 0x6de], 0
mov dword [ebp - 0x14], 0
jmp 0x4daf9e
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], 5
jge 0x4dafb7
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
mov dword [eax + edx*4 + 0x6c8], 0
jmp 0x4daf95
mov ecx, dword [ebp - 0x10]
mov word [ecx + 0x6dc], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x708], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x6fc], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x700], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x704], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x770], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x77c], 0
mov dword [ebp - 0x14], 0
jmp 0x4db023
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 4
jge 0x4db03c
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
mov dword [ecx + eax*4 + 0x780], 0
jmp 0x4db01a
mov dword [ebp - 0x14], 0
jmp 0x4db04e
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 9
jge 0x4db067
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
mov dword [ecx + eax*4 + 0x790], 0
jmp 0x4db045
mov edx, dword [0x892570]
add edx, 0x7d0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x794], edx
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x7b8], 1
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x7bc], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x7c0], 0
push 0x20
push 0xff
mov ecx, dword [ebp - 0x10]
add ecx, 0x6a0
push ecx
call fcn.005b3bb0
add esp, 0xc
mov edx, dword [ebp - 0x10]
mov word [edx + 0x6c0], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x6e0], 0
mov ecx, dword [ebp - 0x10]
add ecx, 0x6e4
call fcn.004d0a90
mov ecx, dword [ebp - 0x10]
add ecx, 0x6f0
call fcn.0043a200
mov ecx, dword [ebp - 0x10]
mov word [ecx + 0x63c], 0
mov edx, dword [ebp - 0x10]
mov word [edx + 0x63e], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x778], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x774], 0
mov ecx, dword [ebp - 0x10]
add ecx, 0x724
call fcn.004e8de0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x70c], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x710], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x714], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x718], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x71c], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x720], 0
mov edx, dword [ebp - 0x10]
mov word [edx + 0x696], 0
push 0x10
push 0
mov eax, dword [ebp - 0x10]
add eax, 0x614
push eax
call fcn.005b3bb0
add esp, 0xc
push 0x11
push 0
mov ecx, dword [ebp - 0x10]
add ecx, 0x5fa
push ecx
call fcn.005b3bb0
add esp, 0xc
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x60c], 0
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x610], 0
mov ecx, dword [ebp - 0x10]
mov word [ecx + 0x694], 0
mov edx, dword [ebp - 0x10]
mov word [edx + 0x76c], 0
mov eax, dword [ebp - 0x10]
mov word [eax + 0x5d6], 1
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 0x7c4], 0
mov edx, dword [ebp - 0x10]
mov word [edx + 0x7cc], 0
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18