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

Disassembly:
add esp, 4
pop ebx
push esi
xor esi, 0xb94c
sub esi, 0x827b
pop esi
mov eax, dword [ebp - 0x754]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x320], ecx
mov dword [ebp - 0x764], 0
mov edx, dword [ebp - 0x320]
mov dword [ebp - 0x15f8], edx
cmp dword [ebp - 0x15f8], 0
jne 0x405bf4
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], eax
jmp 0x405ee5
mov ecx, dword [ebp - 0x15f8]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x15fc], edx
jne 0x405c1c
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], eax
jmp 0x405ee5
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x15fc]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1600], ecx
cmp dword [ebp - 0x1600], 0
jne 0x405c4e
mov edx, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], edx
jmp 0x405ee5
mov eax, dword [ebp - 0x320]
add eax, dword [ebp - 0x1600]
mov dword [ebp - 0x758], eax
jne 0x405c73
mov ecx, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], ecx
jmp 0x405ee5
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x1998], eax
mov ecx, dword [ebp - 0x758]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x199c], edx
mov eax, dword [ebp - 0x758]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x19a0], ecx
mov dword [ebp - 0x75c], 0
jmp 0x405ccd
mov edx, dword [ebp - 0x75c]
add edx, 1
mov dword [ebp - 0x75c], edx
mov eax, dword [ebp - 0x758]
mov ecx, dword [ebp - 0x75c]
cmp ecx, dword [eax + 0x18]
jae 0x405ed9
mov edx, dword [ebp - 0x75c]
mov eax, dword [ebp - 0x1998]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x760], ecx
mov edx, dword [ebp - 0x75c]
mov eax, dword [ebp - 0x199c]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x19a0]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x19a4], eax
mov dword [ebp - 0x194], 0
jmp 0x405d3d
mov ecx, dword [ebp - 0x194]
add ecx, 1
mov dword [ebp - 0x194], ecx
mov edx, dword [ebp - 0x760]
add edx, dword [ebp - 0x194]
movsx eax, byte [edx]
test eax, eax
je 0x405def
mov ecx, dword [ebp - 0x194]
movsx edx, byte [ebp + ecx - 0x898]
test edx, edx
je 0x405def
push eax
sub eax, 0x160bb
sub eax, 0x9e03
sub eax, 0x15d1
pop eax
push edi
push edi
add esp, 4
sub edi, 0x8ff6
or edi, 0xb1e1
pop edi
push eax
push eax
add esp, 4
or eax, 0x15b7c
pop eax
mov eax, dword [ebp - 0x760]
add eax, dword [ebp - 0x194]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x194]
movsx eax, byte [ebp + edx - 0x898]
cmp ecx, eax
je 0x405de1
mov ecx, dword [ebp - 0x760]
add ecx, dword [ebp - 0x194]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x194]
movsx ecx, byte [ebp + eax - 0x898]
cmp edx, ecx
jne 0x405de8
jmp 0x405d2e
jmp 0x405def
push esi
push edx
add esp, 4
call 0x405e03
add byte [ebx], bh
xor edi, dword [esp + ecx*2]
inc esi
xor ecx, dword [ebx + 0x35]
inc ebp
add esp, 4
jmp 0x405e0c
and esi, 0xc004
sub esi, 0x1650a
pop esi
push edx
jmp 0x405e20
pop edx
mov edx, dword [ebp - 0x760]
add edx, dword [ebp - 0x194]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x194]
movsx edx, byte [ebp + ecx - 0x898]
cmp eax, edx
jne 0x405e4e
mov dword [ebp - 0xcac], 0
jmp 0x405ebd
push esi
push ebx
add esp, 4
jmp 0x405e5c
sub esi, 0xfdce
jmp 0x405e67
pop esi
push edi
push edi
add esp, 4
add edi, 0x95c7
add edi, 0x2c68
add edi, 0xfab7
pop edi
mov eax, dword [ebp - 0x760]
add eax, dword [ebp - 0x194]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x194]
movsx eax, byte [ebp + edx - 0x898]
or eax, 0x20
cmp ecx, eax
jge 0x405eb3
mov dword [ebp - 0xcac], 0xffffffff
jmp 0x405ebd
mov dword [ebp - 0xcac], 1
cmp dword [ebp - 0xcac], 0
jne 0x405ed4
mov ecx, dword [ebp - 0x19a4]
mov dword [ebp - 0x3f8], ecx
jmp 0x405ee5
jmp 0x405cbe
mov edx, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], edx
cmp dword [ebp - 0x3f8], 0
je 0x405fc0
push esi
push edi
add esp, 4
xor esi, 0x809a
add esi, 0x16a15
and esi, 0xe4ec
and esi, 0x28c3
pop esi
push esi
or esi, 0x6319
and esi, 0x218a
xor esi, 0x1713
pop esi
mov eax, dword [ebp - 0x3f8]
mov dword [ebp - 0x19a8], eax
push eax
push esi
add esp, 4
sub eax, 0x6fd5
pop eax
push ecx
sub ecx, 0x11daf
add ecx, 0x6f75
and ecx, 0x42f5
pop ecx
push esi
push ebx
add esp, 4
or esi, 0x19ca
add esi, 0xd8e2
pop esi
mov ecx, dword [ebp - 0x19a8]
mov dword [ebp - 0x19ac], ecx
lea edx, [ebp - 0x1740]
push edx
call dword [ebp - 0x19ac]
test eax, eax
jne 0x405fc0
push edi
jmp 0x405f87
jmp 0x405f90
sub edi, 0x117bf
xor edi, 0x14b9a
pop edi
push edi
and edi, 0xeef1
or edi, 0x14e8
xor edi, 0x2b3
pop edi
mov dword [ebp - 0x7a0], 0
jmp 0x4066aa