Function at 0x10004688
Capabilities:
Get number of processors
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebx
push ecx
add esp, 4
add ebx, 0x15cec
sub ebx, 0x130db
and ebx, 0xe77a
pop ebx
push edx
push edx
add esp, 4
or edx, 0x17edb
pop edx
mov eax, dword [ebp - 0xb34]
mov ecx, dword [ebp - 0xb30]
mov dword [ebp - 0x2c8], eax
mov dword [ebp - 0x2c4], ecx
jmp 0x10004082
push edx
push ebx
add esp, 4
xor edx, 0x11a82
xor edx, 0x425e
pop edx
push edi
push edi
add esp, 4
xor edi, 0x37c7
pop edi
push ecx
add ecx, 0xfab8
or ecx, 0xa7a7
xor ecx, 0x5a5c
pop edx
add byte [eax], al
pop ecx
mov ecx, dword [ebp - 0x2c8]
add ecx, 0xfe
imul edx, dword [ebp - 0x2c4], 0xfe
add edx, 0x56f3663b
imul eax, dword [ebp - 0x2c4], 0xfe
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0x2c4]
mov dword [ebp - 0x2618], ecx
mov ecx, dword [ebp - 0x2618]
mov dword [ebp - 0x261c], ecx
cmp dword [ebp - 0x261c], 0
jbe 0x100045f8
push edi
push esi
add esp, 4
call 0x10004115
add byte [ebp + 0x36], al
cmp eax, 0x834a4c42
les eax, [ecx + eax*4]
out dx, eax
xor al, byte [ebp]
add byte [edi + 0x51], bl
jmp 0x10004129
sub ecx, 0xfe82
xor ecx, 0x128ad
pop ecx
mov edx, dword [ebp - 0x2c8]
add edx, 0xfe
add byte [eax], al
imul eax, dword [ebp - 0x2c4], 0xfe
add eax, 0x56f3663b
imul ecx, dword [ebp - 0x2c4], 0xfe
sub eax, ecx
xor edx, eax
imul edx, dword [ebp - 0x2c4]
mov dword [ebp - 0x2620], edx
mov edx, dword [ebp - 0x2620]
mov dword [ebp - 0x262c], edx
push ecx
push edx
add esp, 4
xor ecx, 0xca26
add ecx, 0x13cfc
jmp 0x10004191
and ecx, 0xf7d
pop ecx
push eax
push ebx
add esp, 4
add eax, 0x5771
xor eax, 0x8300
pop eax
mov eax, dword [ebp - 0xc4c]
add eax, 0xfe
imul ecx, dword [ebp - 0xc48], 0xfe
add ecx, 0x56f3663b
imul edx, dword [ebp - 0xc48], 0xfe
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0xc48]
mov dword [ebp - 0x2624], eax
mov eax, dword [ebp - 0x2624]
mov dword [ebp - 0x2628], eax
mov ecx, dword [ebp - 0x18d0]
imul ecx, dword [ebp - 0x2628]
cmp dword [ebp - 0x262c], ecx
jne 0x1000437b
push eax
jmp 0x1000420b
jmp 0x10004211
xor eax, 0x29a4
or eax, 0x71e9
pop eax
push edi
push ecx
add esp, 4
or edi, 0x1647a
pop edi
push ebx
push edx
add esp, 4
jmp 0x10004236
invalid
pop ebx
push edi
push edi
add esp, 4
and edi, 0x1325c
pop edi
push ebx
xor ebx, 0x12e88
sub ebx, 0x5d36
sub ebx, 0xe2f7
pop ebx
push esi
push edi
add esp, 4
xor esi, 0x121a4
or esi, 0x11fd5
pop esi
mov edx, dword [ebp - 0x348]
add edx, 0xfe
imul eax, dword [ebp - 0x344], 0xfe
add eax, 0x56f3663b
imul ecx, dword [ebp - 0x344], 0xfe
sub eax, ecx
push ebx
xor ebx, 0x1582f
add ebx, 0x13615
call 0x10004398
add byte [eax + 0x43], al
dec eax
inc edx
aas
dec edi
xor ecx, dword [ebp + 0x4e]
push eax
add esp, 4
call 0x100043a9
add byte [esi], bh
cmp byte [eax + edx*2 + 0x3c], cl
dec ebp
inc eax
inc edx
add esp, 4
pop ebx
mov eax, dword [ebp - 0x2c8]
add eax, 0xfe
imul ecx, dword [ebp - 0x2c4], 0xfe
add ecx, 0x56f3663b
imul edx, dword [ebp - 0x2c4], 0xfe
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x2c4]
mov dword [ebp - 0x2654], eax
mov eax, dword [ebp - 0x2654]
mov dword [ebp - 0x2660], eax
push esi
push esi
add esp, 4
jmp 0x100043fa
xor esi, 0x2eb2
pop esi
push edi
push esi
add esp, 4
jmp 0x1000440b
call 0x10004417
add byte [eax + 0x4a], dl
push eax
dec esp
cmp al, 0x43
add esp, 4
and edi, 0xcb84
pop edi
mov ecx, dword [ebp - 0xc54]
add ecx, 0xfe
imul edx, dword [ebp - 0xc50], 0xfe
add edx, 0x56f3663b
imul eax, dword [ebp - 0xc50], 0xfe
sub edx, eax
xor ecx, edx
imul ecx, dword [ebp - 0xc50]
mov dword [ebp - 0x2658], ecx
mov ecx, dword [ebp - 0x2658]
mov dword [ebp - 0x265c], ecx
mov edx, dword [ebp - 0x18d0]
imul edx, dword [ebp - 0x265c]
cmp dword [ebp - 0x2660], edx
jne 0x100045f3
push esi
jmp 0x10004487
xor esi, 0x1159a
add esi, 0x99fc
jmp 0x10004499
pop esi
push esi
or esi, 0x8797
sub esi, 0xcb7f
pop esi
push eax
jmp 0x100044ae
pop eax
push edi
push esi
add esp, 4
and edi, 0x18038
xor edi, 0xe13c
pop edi
push eax
push edi
add esp, 4
sub eax, 0x168dc
jmp 0x100044d1
call 0x100044dd
add byte [edi], dh
push eax
dec ebx
inc esp
cmp eax, 0x5804c483
mov eax, dword [ebp - 0x348]
add eax, 0xfe
imul ecx, dword [ebp - 0x344], 0xfe
add ecx, 0x56f3663b
imul edx, dword [ebp - 0x344], 0xfe
invalid
invalid
inc byte [eax]
add byte [eax], al
sub ecx, edx
xor eax, ecx
imul eax, dword [ebp - 0x344]
mov dword [ebp - 0x2664], eax
mov eax, dword [ebp - 0x2664]
mov dword [ebp - 0x2668], eax
mov ecx, dword [ebp - 0x2668]
sub ecx, 1
mov dword [ebp - 0x266c], ecx
mov dword [ebp - 0x1338], 1
push ecx
xor ecx, 0x6df2
jmp 0x1000454a
sub ecx, 0x58ba
pop ecx
push edx
xor edx, 0x11df
or edx, 0xdb7d
add edx, 0x9f52
jmp 0x1000456d
pop edx
imul edx, dword [ebp - 0x1338], 0xfe
add edx, 0x56f3663b
imul eax, dword [ebp - 0x1338], 0xfe
sub edx, eax
xor edx, dword [ebp - 0x266c]
imul edx, dword [ebp - 0x1338]
imul ecx, dword [ebp - 0x1338], 0xfe
sub edx, ecx
mov dword [ebp - 0x133c], edx
mov edx, dword [ebp - 0x133c]
mov eax, dword [ebp - 0x1338]
mov dword [ebp - 0x348], edx
mov dword [ebp - 0x344], eax
push edx
push edx
add esp, 4
jmp 0x100045ce
pop edx
push eax
push eax
add esp, 4
or eax, 0x16a86
call 0x100045e7
add byte [edi], dh
dec esp
inc ebx
aas
push eax
inc ecx
dec esi
add esp, 4
pop eax
push esi
or esi, 0x8176
pop esi
jmp 0x10003eb1
push ebx
push esi
add esp, 4
sub ebx, 0xdc5d
sub ebx, 0x153a0
pop ebx
push edx
push eax
add esp, 4
or edx, 0x12d84
xor edx, 0x16f00
jmp 0x10004623
add edx, 0xf2da
pop edx
mov ecx, dword [ebp - 0x348]
mov edx, dword [ebp - 0x344]
mov dword [ebp - 0x26e4], ecx
mov dword [ebp - 0x26e0], edx
lea eax, [ebp - 0x26e4]
mov dword [ebp - 0x2670], eax
mov ecx, dword [ebp - 0x2670]
mov dword [ebp - 0xc10], ecx
push ecx
and ecx, 0x1aa9
add ecx, 0x14f99
pop ecx
push ecx
and ecx, 0x11e89
or ecx, 0xaaf1
xor ecx, 0x3541
call 0x10004688
add byte [esi + 0x41], cl
xor eax, 0x3550434a
add esp, 4
pop ecx
mov edx, dword [ebp - 0xc10]
mov eax, dword [edx]
add eax, 0xfe
mov ecx, dword [ebp - 0xc10]
imul edx, dword [ecx + 4], 0xfe
add edx, 0x56f3663b
mov ecx, dword [ebp - 0xc10]
imul ecx, dword [ecx + 4], 0xfe
sub edx, ecx
xor eax, edx
mov edx, dword [ebp - 0xc10]
imul eax, dword [edx + 4]
mov dword [ebp - 0x2674], eax
mov eax, dword [ebp - 0x2674]
mov dword [ebp - 0x267c], eax
mov ecx, dword [ebp - 0x2678]
add ecx, dword [ebp - 0x267c]
mov dword [ebp - 0x2680], ecx
mov dword [ebp - 0x1340], 1
push edi
push edx
add esp, 4
xor edi, 0xd2bb
and edi, 0xeb62
xor edi, 0x11ba1
or edi, 0x1270a
pop edi
push ebx
and ebx, 0xcf02
sub ebx, 0x171e7
add ebx, 0x48db
pop ebx
imul edx, dword [ebp - 0x1340], 0xfe
add edx, 0x56f3663b
imul eax, dword [ebp - 0x1340], 0xfe
sub edx, eax
xor edx, dword [ebp - 0x2680]
imul edx, dword [ebp - 0x1340]
imul ecx, dword [ebp - 0x1340], 0xfe
sub edx, ecx
mov dword [ebp - 0x1344], edx
mov edx, dword [ebp - 0x1344]
mov eax, dword [ebp - 0x1340]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x18], eax
push edx
push esi
add esp, 4
xor edx, 0xfb66
and edx, 0x1c1
or edx, 0x7a9a
xor edx, 0x1052d
pop edx
push esi
push ebx
add esp, 4
sub esi, 0x8573
pop esi
push edx
sub edx, 0x6746
pop edx
jmp 0x10001447