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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20f4
push ebx
push esi
push edi
push esi
push ebx
add esp, 4
jmp 0x401218
or esi, 0x1632
pop esi
push esi
push edi
add esp, 4
add esi, 0x564
xor esi, 0xb3f2
or esi, 0x125fe
add esi, 0x26bd
pop esi
mov eax, 0x4d
mov word [ebp - 0x2030], ax
mov ecx, 0x42
mov word [ebp - 0x202e], cx
mov edx, 0x53
mov word [ebp - 0x202c], dx
mov eax, 0x65
mov word [ebp - 0x202a], ax
mov ecx, 0x72
mov word [ebp - 0x2028], cx
mov edx, 0x76
mov word [ebp - 0x2026], dx
mov eax, 0x69
mov word [ebp - 0x2024], ax
mov ecx, 0x63
mov word [ebp - 0x2022], cx
mov edx, 0x65
mov word [ebp - 0x2020], dx
mov eax, 0x2e
mov word [ebp - 0x201e], ax
mov ecx, 0x65
mov word [ebp - 0x201c], cx
mov edx, 0x78
mov word [ebp - 0x201a], dx
mov eax, 0x65
mov word [ebp - 0x2018], ax
xor ecx, ecx
mov word [ebp - 0x2016], cx
mov dword [ebp - 0x1064], 1
push esi
push edi
add esp, 4
xor esi, 0x11a2a
add esi, 0x17b8d
pop esi
push ebx
push ebx
add esp, 4
sub ebx, 0xd447
jmp 0x401311
and ebx, 0x5115
and ebx, 0x471c
pop ebx
imul edx, dword [ebp - 0x1064], 0x138
add edx, 0x55f3663b
imul eax, dword [ebp - 0x1064], 0x138
sub edx, eax
xor edx, 0xabe912
imul edx, dword [ebp - 0x1064]
imul ecx, dword [ebp - 0x1064], 0x138
sub edx, ecx
mov dword [ebp - 0x1068], edx
push edx
push edx
add esp, 4
xor edx, 0x933
pop edx
push edi
push esi
add esp, 4
and edi, 0x15872
pop edi
push ecx
or ecx, 0x13119
and ecx, 0x5b1
and ecx, 0x3a67
xor ecx, 0xccf9
pop ecx
mov dword [ebp - 0x10], 1
push ebx
and ebx, 0x16f5d
add ebx, 0xa6a7
add ebx, 0x672d
jmp 0x4013ab
pop ebx
push ebx
push edx
add esp, 4
xor ebx, 0x15297
pop ebx
push eax
push edi
add esp, 4
and eax, 0x1519b
pop eax
imul edx, dword [ebp - 0x10], 0x138
add edx, 0x55f3663b
imul eax, dword [ebp - 0x10], 0x138
sub edx, eax
xor edx, 0x153c
imul edx, dword [ebp - 0x10]
imul ecx, dword [ebp - 0x10], 0x138
sub edx, ecx
mov dword [ebp - 0x14], edx
push ebx
xor ebx, 0xf96
jmp 0x4013fd
pop ebx
push edx
push edi
add esp, 4
and edx, 0x1590f
and edx, 0xa66a
or edx, 0x5113
pop edx
push edx
push ecx
add esp, 4
sub edx, 0x16c1c
pop edx
push ebx
push edx
add esp, 4
or ebx, 0x1a1a
add ebx, 0x1937
pop ebx
push eax
sub eax, 0xf26d
pop eax
push esi
push ebx
add esp, 4
xor esi, 0x345a
pop esi
push ebx
push ecx
add esp, 4
and ebx, 0xb068
pop ebx
mov dword [ebp - 0x2c], 1
push esi
xor esi, 0xa198
pop esi
push eax
xor eax, 0x6cd7
pop eax
push edi
push edx
add esp, 4
jmp 0x401478
and edi, 0x156c5
pop edi
push ecx
sub ecx, 0x6194
xor ecx, 0x14f45
pop ecx
imul edx, dword [ebp - 0x2c], 0x138
add edx, 0x55f3663b
imul eax, dword [ebp - 0x2c], 0x138
sub edx, eax
xor edx, 0
imul edx, dword [ebp - 0x2c]
imul ecx, dword [ebp - 0x2c], 0x138
sub edx, ecx
mov dword [ebp - 0x30], edx
jmp 0x40166e
mov ecx, dword [ebp - 0x1068]
mov edx, dword [ebp - 0x1064]
mov dword [ebp - 0x163c], ecx
mov dword [ebp - 0x1638], edx
push edi
push ebx
add esp, 4
add edi, 0xb5f6
sub edi, 0xc851
pop edi
push edx
push edi
add esp, 4
add edx, 0x9135
pop edx
push ecx
add ecx, 0x139ba
add ecx, 0xf695
or ecx, 0x8b72
pop ecx
push ebx
push edx
add esp, 4
sub ebx, 0x2ac5
jmp 0x4016cc
pop ebx
push edi
xor edi, 0x332f
add edi, 0xdc64
call 0x4016e6
add byte [ebp + 0x3d], al
cmp al, byte [eax + 0x3d]
aas
add esp, 4
pop edi
mov eax, dword [ebp - 0x30]
add eax, 0x138
imul ecx, dword [ebp - 0x2c], 0x138
add ecx, 0x55f3663b
imul edx, dword [ebp - 0x2c], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1e64], eax
push edx
push eax
add esp, 4
jmp 0x401720
pop edx
push edx
push ebx
add esp, 4
call 0x401732
add byte [eax + 0x50], al
inc esp
xor al, byte ss:[edx - 0x7d]
les eax, [eax + ebp*8]
or byte [eax], al
add byte [eax], al
add byte [edi + esi], dh
dec esi
cmp al, 0x44
aas
add esp, 4
pop edx
mov eax, dword [ebp - 0x163c]
add eax, 0x138
imul ecx, dword [ebp - 0x1638], 0x138
add ecx, 0x55f3663b
imul edx, dword [ebp - 0x1638], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x1638]
mov dword [ebp - 0x1e60], eax
mov eax, dword [ebp - 0x1e60]
mov dword [ebp - 0x1e68], eax
mov ecx, dword [ebp - 0x1e64]
cmp ecx, dword [ebp - 0x1e68]
jae 0x4017a2
mov dword [ebp - 0x15ac], 1
jmp 0x4017ac
mov dword [ebp - 0x15ac], 0
mov dl, byte [ebp - 0x15ac]
mov byte [ebp - 0x3ad], dl
movzx eax, byte [ebp - 0x3ad]
test eax, eax
je 0x40481f
push esi
sub esi, 0x17319
add esi, 0x5d32
sub esi, 0xbe27
sub esi, 0x4768
pop esi
push edi
push ebx
add esp, 4
or edi, 0x73f6
or edi, 0x10fd4
sub edi, 0x12b52
pop edi
push edx
push eax
add esp, 4
sub edx, 0xbf5d
or edx, 0xffa3
pop edx
push edi
call 0x401818
add byte [ebx + 0x3c], al
inc esi
dec esi
aaa
cmp eax, dword [ebx + 0x7eb04c4]
inc eax
dec ecx
aaa
xor eax, 0x81464d39
mul dword [edx + 0x54]
add dword [eax], eax
pop edi
mov ecx, dword [ebp - 0x30]
add ecx, 0x138
imul edx, dword [ebp - 0x2c], 0x138
add edx, 0x55f3663b
imul eax, dword [ebp - 0x2c], 0x138
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x1e6c], ecx
mov ecx, dword [ebp - 0x1e6c]
mov dword [ebp - 0x1e70], ecx
cmp dword [ebp - 0x1e70], 0x63c1
jne 0x4019a6
push ecx
sub ecx, 0x5a5d
jmp 0x40187e
pop ecx
push esi
xor esi, 0xe8ca
add esi, 0xbe62
or esi, 0x9031
xor esi, 0x1644a
pop esi
push edi
push edi
add esp, 4
jmp 0x4018a3
pop edi
mov edx, dword [ebp - 0x14]
add edx, 0x138
imul eax, dword [ebp - 0x10], 0x138
add eax, 0x55f3663b
imul ecx, dword [ebp - 0x10], 0x138
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x10]
mov dword [ebp - 0x1e74], edx
mov edx, dword [ebp - 0x1e74]
mov dword [ebp - 0x1e78], edx
mov eax, dword [ebp - 0x1e78]
sub eax, 0x898
mov dword [ebp - 0x1e7c], eax
mov dword [ebp - 0x106c], 1
push ecx
push ebx
add esp, 4
call 0x401907
add byte [esi], bh
dec esi
inc esp
xor cl, byte ss:[ecx + ecx*2 - 0x7d]
les eax, [ecx + eax*4]
leave
mov word [eax + eax], ss
add al, ch
or byte [eax], al
add byte [eax], al
add byte [ebx + 0x43], al
xor al, 0x4a
dec eax
inc esp
add esp, 4
or ecx, 0xbba6
pop ecx
imul ecx, dword [ebp - 0x106c], 0x138
add ecx, 0x55f3663b
imul edx, dword [ebp - 0x106c], 0x138
sub ecx, edx
xor ecx, dword [ebp - 0x1e7c]
imul ecx, dword [ebp - 0x106c]
imul eax, dword [ebp - 0x106c], 0x138
sub ecx, eax
mov dword [ebp - 0x1070], ecx
mov ecx, dword [ebp - 0x1070]
mov edx, dword [ebp - 0x106c]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], edx
push esi
push ebx
add esp, 4
xor esi, 0x17d06
and esi, 0x815a
jmp 0x40198d
pop esi
push edx
call 0x40199c
add byte [edx + 0x3f], al
cmp al, 0x43
dec esp
inc edx
xor eax, dword [ebx - 0x3d7efb3c]
push eax
mov dh, 0
add byte [edx + 0x53], bl
push ebx
push edx
add esp, 4
call 0x4019b9
add byte [esi], bh
inc ebx
inc edi
xor al, byte [ecx + edi + 0x4f]
dec ecx
add esp, 4
call 0x4019c8
add byte [edi + 0x46], cl
dec eax
aaa
xor eax, 0x4c4834d
and ebx, 0x16069
xor ebx, 0x1333d
pop ebx
mov eax, dword [ebp - 0x14]
add eax, 0x138
imul ecx, dword [ebp - 0x10], 0x138
add ecx, 0x55f3663b
imul edx, dword [ebp - 0x10], 0x138
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x10]
mov dword [ebp - 0x1e80], eax
mov eax, dword [ebp - 0x1e80]
mov dword [ebp - 0x1ef0], eax
lea ecx, [ebp - 0x9b0]
mov dword [ebp - 0x3e0], ecx
mov edx, dword [ebp - 0x3e0]
mov dword [edx + 4], 1
push ebx
push ecx
add esp, 4
or ebx, 0x9cd1
xor ebx, 0x13032
jmp 0x401a40
pop ebx
push ebx
push ebx
add esp, 4
jmp 0x401a4d
jmp 0x401a52
jmp 0x401a58
pop ebx
mov eax, dword [ebp - 0x3e0]
imul ecx, dword [eax + 4], 0x138
add ecx, 0x55f3663b
mov edx, dword [ebp - 0x3e0]
imul eax, dword [edx + 4], 0x138
sub ecx, eax
xor ecx, 0x23
mov edx, dword [ebp - 0x3e0]
imul ecx, dword [edx + 4]
mov eax, dword [ebp - 0x3e0]
imul edx, dword [eax + 4], 0x138
sub ecx, edx
mov eax, dword [ebp - 0x3e0]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x3e0]
mov dword [ebp - 0x2084], ecx
push edx
push ebx
add esp, 4
sub edx, 0x4220
pop edx
push edx
add edx, 0x11e77
pop edx
push eax
push esi
add esp, 4
or eax, 0xafe4
and eax, 0x78da
or eax, 0xe1f3
add eax, 0x12cac
pop eax
mov dword [ebp - 0x15b4], 1
push edx
add edx, 0xb4e1
call 0x401afe
add byte [esi + 0x35], cl
inc esp
inc edi
dec esi
cmp byte [eax + 0x45], dl
dec ebx
add esp, 4
jmp 0x401b0a
pop edx
push ecx
sub ecx, 0xcdaf
sub ecx, 0x13227
pop ecx
mov dword [ebp - 0x2088], 0x38
mov dword [ebp - 0x208c], 0xe6
mov dword [ebp - 0x2090], 0x6e
mov dword [ebp - 0x2094], 0x6e
mov dword [ebp - 0x2098], 0x78
mov dword [ebp - 0x1640], 1
push eax
push edi
add esp, 4
call 0x401b68
add byte [eax + 0x41], cl
xor eax, dword ds:[ecx + 0x39]
dec esi
xor eax, dword [ebx + 0x515804c4]
jmp 0x401b74
sub ecx, 0x15851
xor ecx, 0x809b
and ecx, 0x2377
pop ecx
imul edx, dword [ebp - 0x1640], 0x138
add edx, 0x55f3663b
imul eax, dword [ebp - 0x1640], 0x138
sub edx, eax
xor edx, 0xe6
imul edx, dword [ebp - 0x1640]
imul ecx, dword [ebp - 0x1640], 0x138
sub edx, ecx
mov dword [ebp - 0x1644], edx
push edi
push esi
add esp, 4
add edi, 0x17fa3
or edi, 0x75c6
call 0x401be2
add byte [eax + ecx*2 + 0x3a], cl
inc esi
cmp dh, byte [0xc4834f3c]
add al, 0x5f
push esi
jmp 0x401bed
xor esi, 0x17383
pop esi
push edx
and edx, 0x16357
add edx, 0x2eda
or edx, 0x15c0a
pop edx
push eax
push esi
add esp, 4
or eax, 0x6847
jmp 0x401c19
add eax, 0x10351
sub eax, 0xecd2
pop eax
mov edx, dword [ebp - 0x9b0]
add edx, 0x138
imul eax, dword [ebp - 0x9ac], 0x138
add eax, 0x55f3663b
invalid
invalid
push esp
invalid