Function at 0x4014f0
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x74
xor eax, eax
push ebx
push ebp
push esi
push edi
mov ebp, 1
mov dword [esp + 0x18], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
mov byte [esp + 0x68], al
mov byte [esp + 0x69], al
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov byte [esp + 0x5c], al
mov byte [esp + 0x5d], al
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov byte [esp + 0x50], al
mov byte [esp + 0x51], al
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov byte [esp + 0x80], al
mov byte [esp + 0x81], al
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov byte [esp + 0x44], al
mov byte [esp + 0x45], al
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov byte [esp + 0x74], al
mov byte [esp + 0x75], al
mov dword [esp + 0x14], eax
cmp ebp, dword [0x4a8e90]
jg 0x401764
test ebp, ebp
jle 0x401764
mov ebx, ebp
shl ebx, 4
add ebx, dword [0x4a8ec4]
test ebx, ebx
je 0x4017c3
inc ebp
lea eax, [ebp - 1]
mov dword [0x4a8014], eax
mov edx, dword [ebx + 4]
mov eax, dword [edx]
movzx esi, word [eax + 8]
xor ecx, ecx
mov dword [esp + 0x34], 0
cmp si, 0x7f
je 0x4015e3
mov eax, edx
nop
mov edi, dword [eax + 4]
add eax, 4
inc ecx
cmp word [edi + 8], 0x7f
jne 0x4015d0
test ecx, ecx
jbe 0x4015e3
dec ecx
test si, si
jne case.0x40161f.8
mov esi, dword [edx]
mov eax, dword [esi]
cmp eax, 4
je 0x401670
cmp eax, 0xd
je 0x401741
cmp eax, 0xe
je 0x4016ec
cmp eax, 8
je 0x40176b
sub eax, 5
cmp eax, 0x1c
ja case.0x40161f.8
movzx ecx, byte [eax + 0x401994]
jmp dword [ecx*4 + 0x401954]
mov ecx, dword [edx + 4]
cmp word [ecx + 8], 0x7f
jne 0x42b049
sub dword [esp + 0x30], 1
jne 0x42b0fd
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
push edx
push eax
push ecx
mov ebx, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
mov esi, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
call fcn.0040e940
test eax, eax
je case.0x40161f.8
jmp 0x42b069
mov edi, dword [esp + 0x34]
xor eax, eax
test ax, ax
je 0x401693
mov esi, dword [edx + edi*4 + 4]
movzx eax, word [esi + 8]
inc edi
mov dword [esp + 0x34], edi
cmp ax, 0x7f
jne 0x401676
jmp 0x42b133
cmp dword [esi], 5
jne 0x40167b
mov ecx, dword [edx + ecx*4]
cmp word [ecx + 8], 0
jne 0x4016c5
cmp dword [ecx], 5
jne 0x4016c5
mov eax, dword [esp + 0x14]
inc dword [esp + 0x18]
mov dword [esp + 0x38], eax
inc eax
lea edi, [esp + 0x38]
lea esi, [esp + 0x54]
mov dword [esp + 0x14], eax
call fcn.00401090
mov ecx, dword [esp + 0x34]
mov eax, dword [ebx + 4]
mov eax, dword [eax + ecx*4 + 4]
inc ecx
cmp word [eax + 8], 0
jne case.0x40161f.8
mov eax, dword [eax]
cmp eax, 0x23
je case.0x40161f.8
jmp 0x42aff0
mov ecx, dword [edx + 4]
cmp word [ecx + 8], 0x7f
jne 0x42b049
dec dword [esp + 0x20]
dec dword [esp + 0x14]
cmp dword [esp + 0x3c], 0
je 0x42afda
cmp byte [esp + 0x45], 0
jne 0x42afe4
mov eax, dword [esp + 0x40]
mov edi, dword [eax]
lea esi, [esp + 0x3c]
call fcn.0040c250
cmp dword [esp + 0x20], 0
jl 0x42b127
cmp dword [esp + 0x14], edi
je case.0x40161f.8
jmp 0x42b127
mov eax, dword [esp + 0x14]
inc dword [esp + 0x20]
mov dword [esp + 0x34], eax
inc eax
lea edi, [esp + 0x34]
lea esi, [esp + 0x3c]
mov dword [esp + 0x14], eax
call fcn.00401090
jmp case.0x40161f.8
xor ebx, ebx
jmp 0x4015a3
mov edx, dword [edx + 4]
cmp word [edx + 8], 0x7f
jne 0x42b037
mov ebx, dword [esp + 0x14]
dec dword [esp + 0x18]
dec ebx
cmp dword [esp + 0x54], 0
mov dword [esp + 0x14], ebx
je 0x42afca
cmp byte [esp + 0x5d], 0
mov eax, dword [esp + 0x58]
jne 0x42afd2
mov edi, dword [eax]
lea esi, [esp + 0x54]
call fcn.0040c250
cmp dword [esp + 0x18], 0
jl 0x42b11e
cmp ebx, edi
je case.0x40161f.8
jmp 0x42b11e
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
mov esi, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
push eax
push ecx
push 0
call fcn.0040e940
test eax, eax
jne 0x42b069
cmp dword [esp + 0x30], eax
jne 0x42b0fd
lea eax, [esp + 0x6c]
call fcn.004014e0
lea eax, [esp + 0x3c]
call fcn.004014e0
lea eax, [esp + 0x78]
call fcn.004014e0
lea eax, [esp + 0x48]
call fcn.004014e0
lea eax, [esp + 0x54]
call fcn.004014e0
lea eax, [esp + 0x60]
call fcn.004014e0
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov eax, dword [esp + 0x30]
inc eax
cmp eax, 1
jg 0x42b0fd
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
push ecx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x18]
push edx
push eax
jmp 0x40164e
mov edx, dword [edx + 4]
cmp word [edx + 8], 0x7f
jne 0x42b037
mov eax, dword [esp + 0x14]
inc dword [esp + 0x1c]
mov dword [esp + 0x34], eax
inc eax
lea edi, [esp + 0x34]
lea esi, [esp + 0x6c]
mov dword [esp + 0x14], eax
call fcn.00401090
jmp case.0x40161f.8
mov eax, dword [esp + 0x14]
inc dword [esp + 0x24]
mov dword [esp + 0x34], eax
inc eax
lea edi, [esp + 0x34]
lea esi, [esp + 0x78]
mov dword [esp + 0x14], eax
call fcn.00401090
jmp case.0x40161f.8
mov ebx, dword [esp + 0x14]
dec dword [esp + 0x1c]
dec ebx
lea eax, [esp + 0x6c]
mov dword [esp + 0x14], ebx
call fcn.00410a70
test al, al
jne 0x42ae70
lea eax, [esp + 0x6c]
call fcn.00410a60
mov edi, dword [eax]
lea esi, [esp + 0x6c]
call fcn.0040c250
cmp dword [esp + 0x1c], 0
jl 0x42b109
cmp ebx, edi
je case.0x40161f.8
jmp 0x42b109
mov ecx, dword [edx + 4]
cmp word [ecx + 8], 0x7f
jne 0x42b049
mov ebx, dword [esp + 0x14]
dec dword [esp + 0x24]
dec ebx
lea eax, [esp + 0x78]
mov dword [esp + 0x14], ebx
call fcn.00410a70
test al, al
jne 0x42ae78
lea eax, [esp + 0x78]
call fcn.00410a60
mov edi, dword [eax]
lea esi, [esp + 0x78]
call fcn.0040c250
cmp dword [esp + 0x24], 0
jl 0x42b115
cmp ebx, edi
je case.0x40161f.8
jmp 0x42b115
add eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x180]
movsx eax, byte [ebp + edx - 0x820]
or eax, 0x20
cmp ecx, eax
jge 0x42ae74
mov dword [ebp - 0xc30], 0xffffffff
jmp 0x42ae7e
invalid
mov dword [ebp - 0xc30], 1
invalid
sal bl, 1
invalid
cmp al, 0xfc
invalid
add bl, ch
add edi, dword [eax]
xor bl, byte ss:[ebx + 0x50]
inc esi
inc ecx
cmp eax, 0x34f28132
xor edx, 0x10634
add byte [eax], al
add byte [ecx - 0x18b77b], cl
dec dword [ebx - 0x18b773]
dec dword [ebx - 0x6a76cfaf]
inc esp
out 0xff, eax
dec dword [ebx - 0x18bb7b]
dec dword [ecx - 0x14f37b]
call dword [edi - 0x7f]
out dx, eax
and cl, ch
add byte [eax], al
invalid
mov al, byte [eax]
add byte [edi + 0x51], bl
add byte [eax], al
push edi
add esp, 4
xor ecx, 0xee0d
pop ecx
push edi
add edi, 0xbd46
pop edi
push eax
push ebx
add esp, 4
add eax, 0x12c70
pop eax
push eax
call 0x42b064
or byte [eax], al
add byte [eax], al
or byte [eax], al
add byte [eax], al
add byte [eax*2 + 0x3d403c4c], dh
cmp byte [ebx - 0x7ca7fb3c], al
mov ebp, 0xfffff3c4
add byte [ebp + 0xf], dh
mov dword [ebp - 0x2e0], 0
jmp fcn.0042b2cb
push eax
push eax
add esp, 4
call 0x42b0a0
add byte [edx], bh
cmp byte [ebx], bh
inc ecx
dec edx
xor eax, 0x83404641
les eax, [ecx + eax*4]
enter 0x5968, 0
add bl, ch
add al, 0x44
inc ecx
dec edx
xor al, 0x81
invalid
push edx
sub edx, 0x15df3
or edx, 0x1741f
add edx, 0x7a90
and edx, 0xd74e
dec esi
xlatb
add byte [eax], al
pop edx
push edx
push esi
add esp, 4
or edx, 0x3292
sub edx, 0x1496e
or edx, 0x777f
xchg edx, eax
xor al, byte [eax]
add byte [ecx + 0x1496eea], al
add byte [ecx + 0x777fca], al
add byte [edx - 0x75], bl
invalid
jg 0x42b18e
add byte [eax], al
pop edx
mov ecx, dword [ebp - 0xc34]
mov dx, word [ecx]
mov word [ebp - 0xf86], dx
mov eax, dword [ebp - 0xc34]
add eax, 2
invalid
invalid
mov dword [ebp - 0xc34], eax
mov cx, word [ebp - 0xf86]
mov word [ebp - 0x200], cx
mov edx, dword [ebp - 0xc38]
mov ax, word [edx]
mov word [ebp - 0xf88], ax
mov ecx, dword [ebp - 0xc38]
add ecx, 2
mov dword [ebp - 0xc38], ecx
mov dx, word [ebp - 0xf88]
mov word [ebp - 0x34], dx
push eax
push edi
add esp, 4
jmp 0x42b17d
pop eax
push edi
push esi
add esp, 4
call 0x42b193
add byte [ebx + ecx*2 + 0x4d], al
inc edx
inc edi
aaa
inc ebp
xor eax, 0x4c48339
or edi, 0x99f3
and edi, 0x1316b
pop edi
movzx eax, word [ebp - 0x34]
test eax, eax
jne 0x42b1c0
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
sub ecx, edx
mov dword [ebp - 0x14fc], ecx
jmp 0x42b21a
movzx eax, word [ebp - 0x200]
movzx ecx, word [ebp - 0x34]
cmp eax, ecx
je 0x42b0e8
movzx edx, word [ebp - 0x200]
xor edx, 0x20
movzx eax, word [ebp - 0x34]
cmp edx, eax
je 0x42b0e8
movzx ecx, word [ebp - 0x200]
movzx edx, word [ebp - 0x34]
cmp ecx, edx
jge 0x42b204
mov dword [ebp - 0x14f8], 0xffffffff
jmp 0x42b20e
mov dword [ebp - 0x14f8], 1
mov eax, dword [ebp - 0x14f8]
mov dword [ebp - 0x14fc], eax
cmp dword [ebp - 0x14fc], 0
jne 0x42b263
push eax
jmp 0x42b22d
call 0x42b239
add byte [ebx + 0x38], al
dec ecx
cmp cl, byte ds:[edx - 0x7d]
les eax, [ecx + eax*4]
enter 0x9e4, 0
add byte [eax + 0x57], bl
push eax
add esp, 4
sub edi, 0x4d6d
xor edi, 0xcaa2
pop edi
mov ecx, dword [ebp - 0x4dc]
mov dword [ebp - 0x2e0], ecx
jmp fcn.0042b2cb
push ecx
push edi
add esp, 4
jmp 0x42b26f
pop ecx
push eax
xor eax, 0x17167
pop eax
push ecx
push edi
add esp, 4
xor ecx, 0x220d
xor ecx, 0x219e
pop ecx
push esi
jmp 0x42b294
pop esi
mov edx, dword [ebp - 0x4dc]
mov eax, dword [edx]
mov dword [ebp - 0x4dc], eax
mov ecx, dword [ebp - 0x4dc]
cmp ecx, dword [ebp - 0xc3c]
je 0x42b2c1
mov edx, dword [ebp - 0x4dc]
cmp dword [edx + 0x30], 0
jne 0x42b08c
mov dword [ebp - 0x2e0], 0