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

Disassembly:
sub esp, 0x18
push ebx
push ebp
mov ebp, dword [esp + 0x24]
push esi
mov esi, eax
mov al, byte [esi + 9]
mov ecx, dword [esi + 4]
push edi
test al, al
jne 0x40ba91
mov edx, ecx
mov edi, dword [edx]
test al, al
jne 0x40ba99
cmp byte [esi + 8], 0
je 0x42c4bb
mov byte [esi + 9], 1
dec dword [esi]
cmp edi, 0xa
je 0x42c9a3
cmp edi, 0x10
je 0x42c9a3
cmp edi, 0x11
je 0x42c9a3
mov ecx, dword [ebp + 4]
cmp ecx, 2
jl 0x42c4d6
cmp edi, 0xf
ja case.0x40ba43.10
jmp dword [edi*4 + 0x40bcc0]
cmp ecx, 1
je 0x42c511
cmp byte [ebp + 0xd], 0
jne 0x42c519
mov eax, dword [ebp + 8]
cmp ecx, 2
je 0x40bb84
cmp byte [ebp + 0xd], 0
mov ecx, dword [ebp + 8]
jne 0x42c524
mov esi, dword [ecx + 0x10]
call fcn.0040bf70
mov edi, ebp
call fcn.0040bd00
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 4
mov edx, dword [ecx + 4]
jmp 0x40b9fd
mov ebx, dword [ecx + 4]
push ecx
call fcn.004112ef
add esp, 4
mov dword [esi + 4], ebx
mov byte [esi + 9], 0
jmp 0x40ba07
cmp ecx, 1
je 0x42c4e0
cmp byte [ebp + 0xd], 0
mov eax, dword [ebp + 8]
je 0x40bac6
mov eax, dword [eax + 0x10]
cmp ecx, 2
jne 0x40bb6c
mov ecx, dword [ebp]
call fcn.0040b910
mov edi, ebp
call fcn.0040bd00
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 4
cmp ecx, 1
je 0x42c52f
cmp byte [ebp + 0xd], 0
mov edx, dword [ebp + 8]
jne 0x42c537
cmp ecx, 2
je 0x40bbe5
cmp byte [ebp + 0xd], 0
mov eax, dword [ebp + 8]
jne 0x42c53f
mov eax, dword [eax + 0x10]
push edx
call fcn.0040bee0
mov edi, ebp
call fcn.0040bd00
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 4
cmp ecx, 1
je 0x42c54a
cmp byte [ebp + 0xd], 0
jne 0x42c552
mov edi, dword [ebp + 8]
cmp ecx, 2
jne 0x42c55d
mov esi, dword [ebp]
call fcn.0040c110
mov edi, ebp
call fcn.0040bd00
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 4
cmp byte [ebp + 0xd], 0
mov ecx, dword [ebp + 8]
je 0x42c4e8
mov edx, dword [ecx + 0x10]
mov ecx, dword [edx + 0x10]
jmp 0x40bad2
mov esi, dword [ebp]
jmp 0x40ba79
cmp ecx, 1
je 0x42c627
cmp byte [ebp + 0xd], 0
jne 0x42c62f
mov esi, dword [ebp + 8]
mov eax, ebp
call fcn.0040c600
mov ecx, eax
mov eax, esi
call fcn.0040cc10
test al, al
je 0x42c63a
mov eax, ebp
call fcn.0040c600
mov esi, eax
call fcn.004092c0
mov dword [esi + 8], 9
mov byte [esi], 1
mov edi, ebp
call fcn.0040bd00
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 4
mov eax, dword [ebp]
jmp 0x40bb19
mov eax, ebp
call fcn.0040d260
push eax
mov eax, ebp
call fcn.0040c600
mov ecx, eax
call fcn.0040cfc0
add esp, 4
test al, al
mov eax, ebp
je 0x42c60d
call fcn.0040c600
mov esi, eax
call fcn.004092c0
mov dword [esi + 8], 9
mov byte [esi], 1
mov edi, ebp
call fcn.0040bd00
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 4
mov eax, ebp
call fcn.0040d260
mov edi, eax
mov eax, ebp
call fcn.0040c600
mov esi, eax
mov eax, edi
call fcn.0040c770
test al, al
mov eax, ebp
jne 0x40bcad
call fcn.0040c600
mov esi, eax
call fcn.004092c0
mov byte [esi], 0
mov edi, ebp
mov dword [esi + 8], 9
call fcn.0040bd00
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x18
ret 4
mov eax, ebp
call fcn.0040d260
mov esi, eax
mov eax, ebp
call fcn.0040c600
call fcn.0040c770
test al, al
mov eax, ebp
je 0x40bc58
call fcn.0040c600
mov esi, eax
call fcn.004092c0
mov byte [esi], 1
jmp 0x40bc67
call fcn.0040c600
mov esi, eax
call fcn.004092c0
mov byte [esi], 1
jmp 0x40bc67
xor al, 0xe7
invalid
jl 0x42c4d6
invalid
add al, byte [ebp - 0x647bf040]
add byte [eax], al
add byte [ebx - 0x18373], cl
dec dword [edi]
mov esi, 0xf7fc0d94
invalid
add byte [ecx + 0x52c6e3], al
add byte [ebx + 0x56], bl
dec eax
cmp byte [esi + 0x57], bl
sub al, 0
add byte [ecx + 0x31f5c7], al
add byte [edi - 0x75], bl
test eax, edi
clc
invalid
jl 0x42c54a
invalid
cld
idiv edi
invalid
clc
invalid
add byte [ecx + 0x1788acb], al
add byte [ebx + 0x50], bl
invalid
idiv edi
inc dword [ebx - 0x37c4df38]
add dword [eax], eax
add byte [eax], al
out 0x3d, al
add dword [eax], eax
inc ebp
inc ebx
aaa
add byte [ecx - 0x7d], bl
mov ebp, 0xfffffc34
add byte [ecx + ecx - 0x7d], dh
mov ebp, 0xfffff5a4
add byte [ebp + 0x46], dh
dec dword [ebx - 0x4e37b]
dec dword [ebx - 0x7276cfb8]
mov esp, 0x33fffff3
shl byte [esi - 0x77], cl
xchg ebp, eax
cld
std
invalid