Function at 0x408d10
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x440238
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 8
mov eax, dword [0x449b4c]
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0x30]
push ecx
push edx
lea ecx, [esp + 0x18]
mov dword [esp + 0x28], 0
call fcn.0040c520
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx - 8]
cmp eax, 0x64
jle 0x408f1a
mov esi, dword [sym.imp.MSVCRT.dll__mbsstr]
test eax, eax
jl 0x408db4
push 0x44a228
push ecx
call esi
add esp, 8
test eax, eax
jne 0x408d82
mov ecx, dword [esp + 0x10]
or eax, 0xffffffff
jmp 0x408d90
mov ecx, dword [esp + 0x10]
sub eax, ecx
test eax, eax
jbe 0x408f1a
inc eax
test eax, eax
jl 0x408dc3
cmp eax, dword [ecx - 8]
jg 0x408dc3
add ecx, eax
push 0x44a228
push ecx
call esi
add esp, 8
test eax, eax
jne 0x408db9
mov ecx, dword [esp + 0x10]
or esi, 0xffffffff
jmp 0x408dc6
or eax, 0xffffffff
jmp 0x408d90
mov ecx, dword [esp + 0x10]
sub eax, ecx
mov esi, eax
jmp 0x408dc6
or esi, 0xffffffff
push 0x5c
push ecx
call dword [sym.imp.MSVCRT.dll__mbsrchr]
mov ecx, dword [esp + 0x18]
add esp, 8
test eax, eax
jne 0x408ddf
or edi, 0xffffffff
jmp 0x408de9
sub eax, ecx
mov edi, eax
je 0x408f1a
test esi, esi
jbe 0x408f1a
cmp edi, esi
jbe 0x408f1a
inc esi
sub edi, esi
mov ebx, esi
test esi, esi
jge 0x408e04
xor ebx, ebx
mov ebp, dword [ecx - 8]
test edi, edi
jle 0x408e54
cmp ebx, ebp
jge 0x408e54
lea eax, [ebx + edi]
cmp eax, ebp
jle 0x408e1a
mov edi, ebp
sub edi, ebx
lea ecx, [esp + 0x10]
call fcn.00406c60
mov ecx, dword [esp + 0x10]
mov eax, ebp
sub eax, ebx
mov edx, dword [ecx - 4]
sub eax, edi
sub edx, ebx
inc eax
inc edx
cmp edx, eax
jb 0x408e4f
push eax
lea eax, [ebx + edi]
add eax, ecx
add ebx, ecx
push eax
push ebx
call dword [sym.imp.ntdll.dll_memmove]
mov ecx, dword [esp + 0x1c]
add esp, 0xc
sub ebp, edi
mov dword [ecx - 8], ebp
test esi, esi
jge 0x408e5a
xor esi, esi
mov ecx, 0x44a224
test ecx, ecx
jne 0x408e67
xor ebx, ebx
jmp 0x408e74
push 0x44a224
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ebx, eax
mov edx, dword [esp + 0x10]
test ebx, ebx
mov edi, dword [edx - 8]
jle 0x408f1a
lea ecx, [esp + 0x10]
call fcn.00406c60
cmp esi, edi
jle 0x408e92
mov esi, edi
mov eax, dword [esp + 0x10]
add edi, ebx
cmp dword [eax - 4], edi
jge 0x408ed7
push edi
lea ecx, [esp + 0x14]
lea ebp, [eax - 0xc]
mov dword [esp + 0x18], eax
call fcn.00406a40
test eax, eax
je 0x408f1a
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x14]
inc eax
lea edx, [edi + 1]
push eax
mov eax, dword [esp + 0x14]
push ecx
push edx
push eax
call fcn.00406910
add esp, 0x10
push ebp
call fcn.00406d40
mov eax, dword [esp + 0x10]
mov ecx, edi
lea edx, [esi + eax]
sub ecx, ebx
sub ecx, esi
inc ecx
push ecx
mov ecx, dword [eax - 4]
sub ecx, ebx
push edx
sub ecx, esi
lea edx, [ebx + esi]
inc ecx
add edx, eax
push ecx
push edx
call fcn.004092c0
mov eax, dword [esp + 0x20]
push ebx
push 0x44a224
mov ecx, dword [eax - 4]
sub ecx, esi
add esi, eax
inc ecx
push ecx
push esi
call fcn.00406910
mov edx, dword [esp + 0x30]
add esp, 0x20
mov dword [edx - 8], edi
push 0x44a21c
push 0x44a214
lea ecx, [esp + 0x18]
call fcn.0040c280
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x10]
push eax
push 0x417
mov edx, dword [ecx + 4]
push edx
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
mov eax, dword [esp + 0x10]
mov edx, dword [0x449b50]
pop edi
pop esi
lea ecx, [eax - 0xc]
pop ebp
cmp ecx, edx
pop ebx
je 0x408f78
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x408f78
mov edx, dword [esp]
add edx, 0xfffffff4
push edx
call fcn.0043fa08
add esp, 4
mov ecx, dword [esp + 8]
mov dword fs:[0], ecx
add esp, 0x14
ret