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

Disassembly:
push eax
push esi
add esp, 4
and eax, 0x9419
add eax, 0xee31
xor eax, 0x662c
pop eax
push ebx
and ebx, 0xa875
and ebx, 0xe3e2
or ebx, 0x168e7
xor ebx, 0x932f
pop ebx
lea eax, [ebp - 0x1be4]
mov dword [ebp - 0xf08], eax
mov ecx, dword [ebp - 0x5ec]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xf04], edx
xor eax, eax
mov word [ebp - 0x274], ax
xor ecx, ecx
mov word [ebp - 0x144], cx
push edi
push ebx
add esp, 4
or edi, 0xc875
or edi, 0x116a1
and edi, 0x7da6
add edi, 0x11c9e
pop edi
push ebx
or ebx, 0x7b00
or ebx, 0x8c94
add ebx, 0xb4f8
pop ebx
mov edx, dword [ebp - 0xf04]
xchg ebp, eax
cld
invalid
invalid
jmp dword [esi - 0x75]
add ah, byte [esi - 0x77]
test dword [edx - 0x74000014], edx
invalid
cld
invalid
invalid
inc dword [ebx - 0x7276fd3f]
cld
invalid
invalid
jmp dword [esi - 0x75]
xchg ebp, eax
xchg edx, eax
in al, dx
invalid
jmp dword [esi - 0x77]
xchg ebp, eax
invalid
std
invalid
dec dword [ebx - 0xf077b]
jmp dword [esi - 0x75]
or byte [esi - 0x77], ah
lea edx, [eax - 0x74000014]
xchg ebp, eax
clc
invalid
invalid
inc dword [ebx - 0x6a76fd3e]
clc
invalid
invalid
jmp dword [esi - 0x75]
test dword [eax + 0x66ffffec], edx
mov dword [ebp - 0x144], eax
push esi
push edx
add esp, 4
sub esi, 0xe9c
jmp 0x40cb4c
sub esi, 0x32e2
xor esi, 0x14cdb
pop esi
push ecx
push eax
add esp, 4
xor ecx, 0x8a11
and ecx, 0x10e65
pop ecx
movzx ecx, word [ebp - 0x144]
test ecx, ecx
jne 0x40cb8e
movzx edx, word [ebp - 0x274]
movzx eax, word [ebp - 0x144]
sub edx, eax
mov dword [ebp - 0x19ec], edx
jmp 0x40cbf1
movzx ecx, word [ebp - 0x274]
movzx edx, word [ebp - 0x144]
cmp ecx, edx
je 0x40caad
movzx eax, word [ebp - 0x274]
xor eax, 0x20
movzx ecx, word [ebp - 0x144]
lea edi, [esi + edi*8 - 0x3ec40001]
lea edi, [esi + edi*8 - 0x3ec40001]
je 0x40caad
movzx edx, word [ebp - 0x274]
movzx eax, word [ebp - 0x144]
cmp edx, eax
jge 0x40cbdb
mov dword [ebp - 0x19e8], 0xffffffff
jmp 0x40cbe5
mov dword [ebp - 0x19e8], 1
mov ecx, dword [ebp - 0x19e8]
mov dword [ebp - 0x19ec], ecx
cmp dword [ebp - 0x19ec], 0
jne 0x40cc3a
push esi
push ecx
add esp, 4
sub esi, 0x1624d
pop esi
push ebx
xor ebx, 0x14e2f
jmp 0x40cc14
xor ebx, 0xa160
jmp 0x40cc1f
pop ebx
push ecx
push esi
add esp, 4
add ecx, 0x12f0
pop ecx
mov edx, dword [ebp - 0x5ec]
mov dword [ebp - 0x8b0], edx
jmp 0x40cca2
push edx
call 0x40cc49
add byte [esi], dh
dec ebp
dec esi
dec ecx
dec ebp
dec ebx
xor al, 0x3e
add esp, 4
call 0x40cc5c
add byte [ebx], dh
xor al, byte [eax + 0x38]
inc ecx
dec edx
dec esp
dec esi
push eax
add esp, 4
or edx, 0x1552f
and edx, 0x15497
pop edx
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [eax]
mov dword [ebp - 0x5ec], ecx
mov edx, dword [ebp - 0x5ec]
cmp edx, dword [ebp - 0xf0c]
je 0x40cc98
mov eax, dword [ebp - 0x5ec]
cmp dword [eax + 0x30], 0
jne 0x40ca4e
mov dword [ebp - 0x8b0], 0
push esi
push eax
add esp, 4
or esi, 0xe224
or esi, 0xd720
pop esi
push edi
push edi
add esp, 4
jmp 0x40ccc1
xor edi, 0x2a74
or edi, 0x2af6
and edi, 0x45da
pop edi
cmp dword [ebp - 0x8b0], 0
jne 0x40cd1e
push ecx
push esi
add esp, 4
add ecx, 0x11423
add ecx, 0x871b
pop ecx
push eax
push edi
add esp, 4
sub eax, 0x155e9
or eax, 0x8993
push edx
call 0x40cd2c
add byte [ecx + 0x48], al
xor eax, dword [ebp + 0x3e]
cmp byte [edx], bh
add esp, 4
and edx, 0x10d60
add edx, 0x14116
sub edx, 0x13f1b
pop edx
push edx
or edx, 0x123fd
or edx, 0x14bf1
pop edx
mov ecx, dword [ebp - 0x8b0]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x3f4], edx
mov dword [ebp - 0x8c0], 0
mov eax, dword [ebp - 0x3f4]
mov dword [ebp - 0x19f0], eax
cmp dword [ebp - 0x19f0], 0
jne 0x40cd8f
mov ecx, dword [ebp - 0x8c0]
mov dword [ebp - 0x4a8], ecx
jmp 0x40d080
mov edx, dword [ebp - 0x19f0]
mov eax, dword [ebp - 0x3f4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x19f4], eax
jne 0x40cdb7
mov ecx, dword [ebp - 0x8c0]
mov dword [ebp - 0x4a8], ecx
invalid
invalid
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x19f4]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x19f8], edx
cmp dword [ebp - 0x19f8], 0
jne 0x40cde9
mov eax, dword [ebp - 0x8c0]
mov dword [ebp - 0x4a8], eax
jmp 0x40d080
mov ecx, dword [ebp - 0x3f4]
add ecx, dword [ebp - 0x19f8]
mov dword [ebp - 0x8b4], ecx
jne 0x40ce0e
mov edx, dword [ebp - 0x8c0]
mov dword [ebp - 0x4a8], edx
jmp 0x40d080
mov eax, dword [ebp - 0x8b4]
mov ecx, dword [ebp - 0x3f4]
add ecx, dword [eax + 0x20]
invalid
invalid
cld