Function at 0x458af0
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x4be4b0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x64
push ebx
mov ebx, dword [esp + 0x78]
push ebp
push esi
push edi
lea eax, [esp + 0x28]
push eax
mov ecx, ebx
call fcn.00409de0
mov esi, dword [esp + 0x88]
mov ecx, dword [esi + 4]
mov edx, dword [eax + 4]
xor ebp, ebp
cmp ecx, edx
mov dword [esp + 0x7c], ebp
je 0x458b3b
push eax
mov ecx, esi
call fcn.00474180
lea ecx, [esp + 0x28]
mov dword [esp + 0x7c], 0xffffffff
mov dword [esp + 0x28], vtable.wxObject.0
call fcn.00474100
mov ecx, ebx
call fcn.004098d0
test al, al
je 0x458b8d
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, ebx
call fcn.0040caa0
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push edx
push eax
push ecx
mov ecx, esi
call fcn.004097c0
jmp 0x458bb4
push ebp
push ebp
mov ecx, ebx
call fcn.0040a200
push ebp
push ebp
mov ecx, ebx
mov byte [esp + 0x18], al
call fcn.0040a260
push ebp
push ebp
mov ecx, ebx
mov byte [esp + 0x1c], al
call fcn.0040a2c0
mov byte [esp + 0x18], al
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push edx
push eax
push ecx
lea ecx, [esp + 0x5c]
call fcn.004213c0
lea edx, [esp + 0x40]
push 0x10
push edx
mov dword [esp + 0x84], 1
call fcn.0043cc30
lea eax, [esp + 0x38]
push 0x14
push eax
mov byte [esp + 0x8c], 2
call fcn.0043cc30
add esp, 0x10
mov ecx, ebx
mov byte [esp + 0x7c], 3
call fcn.0040a120
mov edi, eax
mov ecx, ebx
mov dword [esp + 0x28], edi
call fcn.0040a150
test edi, edi
mov dword [esp + 0x20], eax
jle 0x458d27
nop
mov eax, dword [esp + 0x20]
xor esi, esi
test eax, eax
jle 0x458d1e
mov edi, edi
push esi
push ebp
mov ecx, ebx
call fcn.0040a200
push esi
push ebp
mov ecx, ebx
movzx edi, al
call fcn.0040a260
movzx ecx, al
push esi
mov dword [esp + 0x20], ecx
push ebp
mov ecx, ebx
call fcn.0040a2c0
movzx edx, byte [esp + 0x10]
cmp edi, edx
movzx eax, al
mov dword [esp + 0x24], eax
jne 0x458c7d
movzx ecx, byte [esp + 0x14]
cmp dword [esp + 0x1c], ecx
jne 0x458c7d
movzx edx, byte [esp + 0x18]
cmp eax, edx
je 0x458d0d
mov dword [esp + 0x64], 0
lea ecx, [esp + 0x60]
mov byte [esp + 0x7c], 4
mov dword [esp + 0x60], vtable.wxColour.0
call fcn.0041d680
movzx eax, byte [esp + 0x3d]
sub eax, 0x32
cmp edi, eax
mov byte [esp + 0x7c], 5
jl 0x458cd4
mov ax, word [esp + 0x3e]
mov edx, dword [esp + 0x1c]
movzx ecx, ah
sub ecx, 0x32
cmp edx, ecx
jl 0x458cd4
movzx edx, al
mov eax, dword [esp + 0x24]
sub edx, 0x32
cmp eax, edx
jl 0x458cd4
lea eax, [esp + 0x50]
push eax
jmp 0x458cd9
lea ecx, [esp + 0x40]
push ecx
lea ecx, [esp + 0x64]
call fcn.0041d6a0
mov edx, dword [esp + 0x6e]
mov eax, dword [esp + 0x6f]
mov ecx, dword [esp + 0x6d]
push edx
push eax
push ecx
mov ecx, dword [esp + 0x94]
push esi
push ebp
call fcn.0040a180
lea ecx, [esp + 0x60]
mov byte [esp + 0x7c], 3
call fcn.00407300
mov eax, dword [esp + 0x20]
inc esi
cmp esi, eax
jl 0x458c30
mov edi, dword [esp + 0x28]
inc ebp
cmp ebp, edi
jl 0x458c20
lea ecx, [esp + 0x30]
mov byte [esp + 0x7c], 2
call fcn.00407300
lea ecx, [esp + 0x40]
mov byte [esp + 0x7c], 1
call fcn.00407300
lea ecx, [esp + 0x50]
mov dword [esp + 0x7c], 0xffffffff
call fcn.00407300
mov ecx, dword [esp + 0x74]
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
mov dword fs:[0], ecx
add esp, 0x70
ret