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

Disassembly:
mov edx, dword [ebp - 0x6f4]
add edx, 1
mov dword [ebp - 0x6f4], edx
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0x6f4]
cmp ecx, dword [eax + 0x18]
jae 0x50e5dc
mov edx, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x18a0]
mov ecx, dword [ebp - 0x2f8]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x6f8], ecx
mov edx, dword [ebp - 0x6f4]
mov eax, dword [ebp - 0x18a4]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x18a8]
mov eax, dword [ebp - 0x2f8]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x18ac], eax
mov dword [ebp - 0x180], 0
jmp 0x50e440
mov ecx, dword [ebp - 0x180]
add ecx, 1
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x6f8]
add edx, dword [ebp - 0x180]
cmp dh, 0xff
dec dword [edi]
mov esi, 0xfc08502
invalid
wait
add byte [eax], al
invalid
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
test edx, edx
je 0x50e4f2
push edi
add edi, 0xe2fd
pop edi
push eax
push ebx
add esp, 4
or eax, 0xc334
call 0x50e48f
add byte [esi + 0x3a], al
push eax
push eax
dec ebp
cmp al, 0x50
dec ebp
dec ecx
add esp, 4
or eax, 0x7b12
or eax, 0x1769
pop eax
mov eax, dword [ebp - 0x6f8]
add eax, dword [ebp - 0x180]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x180]
movsx eax, byte [ebp + edx - 0x820]
cmp ecx, eax
je 0x50e4e4
mov ecx, dword [ebp - 0x6f8]
add ecx, dword [ebp - 0x180]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x180]
movsx ecx, byte [ebp + eax - 0x820]
cmp edx, ecx
jne 0x50e4eb
jmp 0x50e431
jmp 0x50e4f2
push eax
call 0x50e502
add byte [eax + edx*2 + 0x3a], cl
aas
xor al, 0x4d
inc esp
cmp byte [edx], dh
add esp, 4
pop eax
push ebx
jmp 0x50e50c
jmp 0x50e515
and ebx, 0xbe1a
pop ebx
push edx
or edx, 0x4bc2
pop edx
mov edx, dword [ebp - 0x6f8]
add edx, dword [ebp - 0x180]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x180]
movsx edx, byte [ebp + ecx - 0x820]
cmp eax, edx
jne 0x50e551
mov dword [ebp - 0xc30], 0
jmp 0x50e5c0
push edi
push esi
add esp, 4
and edi, 0x1331a
xor edi, 0x17642
and edi, 0xb378
pop edi
push edi
call 0x50e579
add byte [0x3a32404e], bh
cmp byte [ecx + 0x49], al
cmp eax, 0x8104c483
out 0xf3, eax
mov dword [0x8b5f0000], eax
test dword [eax], ecx
stc
invalid
cmp dword [ebp - 0xc30], 0
jne 0x50e5d7
mov ecx, dword [ebp - 0x18ac]
mov dword [ebp - 0x3c4], ecx
jmp 0x50e5e8
jmp 0x50e3c1
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0x3c4], edx
cmp dword [ebp - 0x3c4], 0
je 0x50e6c3
push esi
add esi, 0x1b82
pop esi
push esi
push edi
add esp, 4
or esi, 0x5d1d
pop esi
push ebx
push eax
add esp, 4
xor ebx, 0x3441
xor ebx, 0x6c16
xor ebx, 0xf72a
or ebx, 0x80d6
pop ebx
mov eax, dword [ebp - 0x3c4]
mov dword [ebp - 0x18b0], eax
push edx
push ebx
add esp, 4
xor edx, 0x73e8
or edx, 0xee92
sub edx, 0x11569
sub edx, 0x1baa
pop edx
push esi
and esi, 0x185f2
xor esi, 0x8342
and esi, 0xbff
pop esi
mov ecx, dword [ebp - 0x18b0]
mov dword [ebp - 0x18b4], ecx
lea edx, [ebp - 0x1628]
push edx
call dword [ebp - 0x18b4]
test eax, eax
jne 0x50e6c3
push edx
push eax
add esp, 4
xor edx, 0xe0c3
xor edx, 0xf996
or edx, 0xf43
pop edx
push ecx
push edi
add esp, 4
jmp 0x50e6a5
pop ecx
push ebx
sub ebx, 0x7d2e
and ebx, 0xfadc
pop ebx
mov dword [ebp - 0x738], 0
jmp 0x50edad
push eax
push edx
add esp, 4
and eax, 0xa77a
pop eax
push eax
push edi
add esp, 4
and eax, 0x16fe6
xor eax, 0xf591
sub eax, 0x3cfd
or eax, 0xa8e4
pop eax
push ecx
and ecx, 0xdd91
pop ecx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x18b8], eax
mov ecx, dword [ebp - 0x18b8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18bc], edx
mov eax, dword [ebp - 0x18bc]
mov dword [ebp - 0x14f4], eax
push edi
add edi, 0x102a9
xor edi, 0x6d29
sub edi, 0x49c6
pop edi
push eax
push edi
add esp, 4
and eax, 0x132df
and eax, 0xee34
pop eax
push edx
push edi
add esp, 4
or edx, 0x13883
pop edx
cmp dword [ebp - 0x14f4], 0
jne 0x50e766
invalid
test dword [eax], esp
std
invalid
inc dword [eax]
add byte [eax], al