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

Disassembly:
mov edx, dword [ebp - 0x4fc]
add edx, 1
mov dword [ebp - 0x4fc], edx
push edi
call 0x407a4f
add byte [edi + 0x37], cl
inc ecx
cmp dword ds:[eax + 0x34], edx
aaa
cmp ecx, dword [edx - 0x7d]
les eax, [ecx + eax*4]
out 0x60, eax
stosb byte es:[edi], al
add byte [eax], al
pop edi
push ecx
push edi
add esp, 4
jmp 0x407a64
jmp 0x407a69
or ecx, 0xea7c
pop ecx
mov eax, dword [ebp - 0x4fc]
sub eax, dword [ebp - 0x3f0]
cmp eax, 0xffffffff
jb 0x407ab8
aaa
push edx
jmp 0x407a87
call 0x407a93
add byte [edx], dh
inc ecx
cmp bh, byte [0xc483484e]
add al, 0x5a
push esi
and esi, 0xdbae
pop esi
push esi
and esi, 0x8179
add esi, 0x114dd
and esi, 0x4487
pop esi
jmp 0x407ce6
mov dword [ebp - 0xc80], 7
mov ecx, dword [ebp - 0x4fc]
mov dword [ebp - 0xac4], ecx
push ecx
add ecx, 0x258f
sub ecx, 0x85fc
call 0x407ae7
add byte [edx + 0x41], al
dec edx
dec edx
cmp byte [esi], bh
add esp, 4
or ecx, 0xdb67
pop ecx
push eax
jmp 0x407af7
pop eax
push ecx
or ecx, 0x10096
pop ecx
mov edx, dword [ebp - 0x15c4]
mov dword [ebp - 0xa60], edx
mov dword [ebp - 0xc84], 0
mov eax, dword [ebp - 0x4fc]
cmp eax, dword [ebp - 0x15c4]
jne 0x407b67
push eax
push eax
add esp, 4
sub eax, 0xc025
pop eax
push eax
push ebx
add esp, 4
sub eax, 0x11d67
xor eax, 0xa00
or eax, 0xb46e
sub eax, 0x1cea
add byte [eax], al
pop eax
push edx
xor edx, 0x3354
pop edx
mov ecx, dword [ebp - 0xc84]
mov dword [ebp - 0x15cc], ecx
jmp 0x407c98
cmp dword [ebp - 0xc80], 0
jle 0x407c8c
push eax
push ecx
add esp, 4
jmp 0x407b82
xor eax, 0x11dd6
pop eax
push ecx
xor ecx, 0x2433
and ecx, 0xacc0
jmp 0x407b9f
jmp 0x407ba5
pop ecx
mov edx, dword [ebp - 0xac4]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xa60]
movzx edx, byte [ecx]
cmp eax, edx
je 0x407c28
push ecx
push ecx
add esp, 4
jmp 0x407bc7
call 0x407bd6
add byte [edi], dh
cmp edi, dword [edx]
xor eax, 0x45364748
dec esp
add esp, 4
add ecx, 0x124f3
or ecx, 0x1691f
pop ecx
push ebx
sub ebx, 0x6924
pop ebx
mov eax, dword [ebp - 0xac4]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xa60]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x407c10
mov dword [ebp - 0x15c8], 1
jmp 0x407c1a
mov dword [ebp - 0x15c8], 0xffffffff
mov ecx, dword [ebp - 0x15c8]
mov dword [ebp - 0xc84], ecx
jmp 0x407c8c
push ecx
push ebx
add esp, 4
jmp 0x407c32
and ecx, 0x1bdb
pop ecx
push ebx
push ebx
add esp, 4
add ebx, 0x5e2b
or ebx, 0x927a
add ebx, 0x40e8
jmp 0x407c59
pop ebx
mov edx, dword [ebp - 0xc80]
sub edx, 1
mov dword [ebp - 0xc80], edx
mov eax, dword [ebp - 0xac4]
add eax, 1
mov dword [ebp - 0xac4], eax
mov ecx, dword [ebp - 0xa60]
add ecx, 1
mov dword [ebp - 0xa60], ecx
jmp 0x407b67
mov edx, dword [ebp - 0xc84]
mov dword [ebp - 0x15cc], edx
cmp dword [ebp - 0x15cc], 0
jne 0x407ce1
push edx
or edx, 0x14120
pop edx
push esi
add esi, 0x66d6
jmp 0x407cb7
xor esi, 0x69c6
pop esi
push edi
call 0x407ccf
add byte [esp + eax*2 + 0x46], al
cmp byte [ebp + 0x46], cl
dec esp
cmp al, 0x4b
push eax
add esp, 4
pop edi
mov eax, dword [ebp - 0x4fc]
mov dword [ebp - 0x3e8], eax
jmp 0x407d22
jmp 0x407a2f
push ebx
xor ebx, 0x4fb9
add ebx, 0xa847
jmp 0x407cf8
and ebx, 0x735
pop ebx
push eax
call 0x407d0e
add byte [ecx + 0x45], al
dec edx
cmp eax, dword [ecx + 0x33]
dec edx
dec edi
add esp, 4
or eax, 0x9c14
pop eax
mov dword [ebp - 0x3e8], 0
push esi
push eax
add esp, 4
and esi, 0x13d7d
or esi, 0x15712
and esi, 0x2312
or esi, 0x17b08
pop esi
push esi
sub esi, 0xbe9e
and esi, 0x663
jmp 0x407d53
pop esi
push ecx
add ecx, 0x10a43
add ecx, 0x88cc
jmp 0x407d67
jmp 0x407d70
pop ecx
push ebx
add ebx, 0x1847c
jmp 0x407d7d
jmp 0x407d85
pop ebx
mov ecx, 1
imul edx, ecx, 0
lea eax, [ebp + edx - 0xbe4]
mov dword [ebp - 0x15d0], eax
push esi
add esi, 0x2d0b
sub eax, 0x515e0000
push edx
add esp, 4
sub ecx, 0xf52c
jmp 0x407db4
pop ecx
push esi
push ecx
add esp, 4
jmp 0x407dbf
or esi, 0x1fbe
jmp 0x407dcc
pop esi
invalid
test dword [edi + ebx*8 - 1], ebx
invalid
invalid
invalid