Function at 0x49aab0
Capabilities:
Get number of processors

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x6a19d8
push eax
mov dword fs:[0], esp
sub esp, 0x30
push ebx
push ebp
push esi
mov esi, ecx
push edi
push esi
lea ecx, [esi + 0x40]
call fcn.004c9d20
mov eax, dword [esi + 0x68]
xor ebp, ebp
test eax, eax
jle 0x49ac06
mov eax, dword [esi + 0x5c]
mov dword [esp + 0x14], 0
test eax, eax
jle 0x49ab80
mov eax, dword [esi + 0x60]
mov ecx, dword [esp + 0x14]
mov edx, dword [esi + 0x6c]
mov ebx, dword [eax + ecx*4]
mov eax, dword [edx + ebp*4]
mov ecx, dword [ebx]
mov edi, dword [eax]
mov edx, dword [ecx - 8]
mov eax, dword [edi]
mov eax, dword [eax - 8]
cmp eax, edx
jne 0x49ab6c
push ebx
mov ecx, edi
call fcn.00571b90
test eax, eax
jne 0x49ab6c
lea edx, [ebx + 4]
lea eax, [edi + 4]
push edx
push eax
call fcn.00403c30
add esp, 8
test al, al
je 0x49ab6c
lea ecx, [ebx + 8]
lea edx, [edi + 8]
push ecx
push edx
call fcn.00403c30
add esp, 8
test al, al
je 0x49ab6c
mov al, byte [edi + 0xc]
test al, al
je 0x49ab61
mov cl, byte [ebx + 0xc]
test cl, cl
jne 0x49abfa
test al, al
jne 0x49ab6c
mov al, byte [ebx + 0xc]
test al, al
je 0x49abfa
mov eax, dword [esp + 0x14]
mov ecx, dword [esi + 0x5c]
inc eax
cmp eax, ecx
mov dword [esp + 0x14], eax
jl 0x49aaf7
mov eax, dword [esi + 0x6c]
mov eax, dword [eax + ebp*4]
mov ecx, dword [eax]
push ecx
lea ecx, [esi + 0x40]
call fcn.004c9c90
test al, al
jne 0x49abfa
push ebp
mov ecx, esi
call fcn.00495da0
mov edx, dword [esi + 0x6c]
mov eax, dword [edx + ebp*4]
mov eax, dword [eax]
lea edi, [eax + 0x14]
mov ecx, edi
call fcn.004b0760
mov ecx, edi
call fcn.005758b0
mov eax, dword [esi + 0x6c]
mov eax, dword [eax + ebp*4]
mov edi, dword [eax]
test edi, edi
mov dword [esp + 0x18], edi
je 0x49abee
lea ecx, [edi + 0x14]
mov dword [esp + 0x48], 0
call fcn.004b0710
mov ecx, edi
mov dword [esp + 0x48], 0xffffffff
call fcn.00403c80
push edi
call fcn.00658bf0
add esp, 4
push 1
push ebp
lea ecx, [esi + 0x64]
call fcn.00491160
dec ebp
mov eax, dword [esi + 0x68]
inc ebp
cmp ebp, eax
jl 0x49aae4
mov eax, dword [esi + 0x38]
xor ebx, ebx
cmp eax, ebx
mov dword [esp + 0x10], ebx
jle 0x49aca0
mov eax, dword [esi + 0x5c]
xor edi, edi
test eax, eax
jle 0x49ac72
mov ecx, dword [esi + 0x60]
mov edx, dword [esi + 0x3c]
mov eax, dword [ecx + edi*4]
mov ecx, dword [ebx + edx]
mov edx, dword [ecx]
mov ebp, dword [eax]
mov edx, dword [edx - 8]
cmp edx, dword [ebp - 8]
jne 0x49ac6a
push eax
call fcn.00571b90
test eax, eax
jne 0x49ac6a
mov ecx, dword [esi + 0x3c]
mov eax, dword [esi + 0x60]
mov ecx, dword [ebx + ecx]
mov eax, dword [eax + edi*4]
add ecx, 4
add eax, 8
mov edx, dword [ecx]
mov ebp, dword [eax]
mov edx, dword [edx - 8]
cmp edx, dword [ebp - 8]
jne 0x49ac6a
push eax
call fcn.00571b90
test eax, eax
je 0x49ac89
mov eax, dword [esi + 0x5c]
inc edi
cmp edi, eax
jl 0x49ac20
mov edi, dword [esp + 0x10]
push 1
push edi
lea ecx, [esi + 0x34]
call fcn.00490ea0
dec edi
sub ebx, 4
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x38]
inc eax
add ebx, 4
cmp eax, ecx
mov dword [esp + 0x10], eax
jl 0x49ac17
xor edi, edi
mov ecx, esi
mov dword [esp + 0x10], edi
call fcn.00492690
test eax, eax
jle 0x49ad89
push edi
mov ecx, esi
call fcn.004926a0
mov ebp, eax
mov dword [esp + 0x14], 0
mov eax, dword [ebp + 4]
test eax, eax
jle 0x49ad71
mov dword [esp + 0x18], 0
mov eax, dword [esi + 0x5c]
xor edi, edi
test eax, eax
jle 0x49ad60
mov ecx, dword [ebp + 8]
mov edx, dword [esp + 0x18]
mov eax, dword [esi + 0x60]
mov ecx, dword [edx + ecx]
mov eax, dword [eax + edi*4]
mov edx, dword [ecx]
mov ebx, dword [eax]
mov edx, dword [edx - 8]
cmp edx, dword [ebx - 8]
jne 0x49ad36
push eax
call fcn.00571b90
test eax, eax
jne 0x49ad36
mov ecx, dword [ebp + 8]
mov edx, dword [esp + 0x18]
mov eax, dword [esi + 0x60]
mov ecx, dword [edx + ecx]
mov edx, dword [ecx + 8]
mov eax, dword [eax + edi*4]
add ecx, 8
mov edx, dword [edx - 8]
add eax, 8
mov ebx, dword [eax]
cmp edx, dword [ebx - 8]
jne 0x49ad36
push eax
call fcn.00571b90
test eax, eax
je 0x49ad40
mov eax, dword [esi + 0x5c]
inc edi
cmp edi, eax
jge 0x49ad60
jmp 0x49ace3
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ecx, dword [ebp + 4]
inc eax
add edx, 4
cmp eax, ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
jge 0x49ad71
jmp 0x49acda
mov edi, dword [esp + 0x10]
mov ecx, esi
push edi
call fcn.00492850
dec edi
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x10]
mov ecx, esi
inc edi
mov dword [esp + 0x10], edi
call fcn.00492690
cmp edi, eax
jl 0x49acb5
xor ebp, ebp
mov ecx, esi
mov dword [esp + 0x10], ebp
call fcn.00492a90
test eax, eax
jle 0x49ae19
push ebp
mov ecx, esi
call fcn.00492aa0
mov ebx, eax
mov eax, dword [esi + 0x5c]
xor edi, edi
test eax, eax
jle 0x49adfa
mov eax, dword [esi + 0x60]
mov ecx, dword [ebx]
mov eax, dword [eax + edi*4]
mov ecx, dword [ecx - 8]
mov edx, dword [eax]
cmp ecx, dword [edx - 8]
jne 0x49adf2
push eax
mov ecx, ebx
call fcn.00571b90
test eax, eax
jne 0x49adf2
mov eax, dword [esi + 0x60]
mov edx, dword [ebx + 4]
lea ecx, [ebx + 4]
mov eax, dword [eax + edi*4]
mov edx, dword [edx - 8]
add eax, 8
mov ebp, dword [eax]
cmp edx, dword [ebp - 8]
jne 0x49adee
push eax
call fcn.00571b90
test eax, eax
je 0x49ae05
mov ebp, dword [esp + 0x10]
mov eax, dword [esi + 0x5c]
inc edi
cmp edi, eax
jl 0x49adad
push ebp
mov ecx, esi
call fcn.00492cf0
dec ebp
jmp 0x49ae09
mov ebp, dword [esp + 0x10]
inc ebp
mov ecx, esi
mov dword [esp + 0x10], ebp
call fcn.00492a90
cmp ebp, eax
jl 0x49ad9a
xor ebp, ebp
mov ecx, esi
mov dword [esp + 0x10], ebp
call fcn.00493230
test eax, eax
jle 0x49aea9
push ebp
mov ecx, esi
call fcn.00493240
mov ebx, eax
mov eax, dword [esi + 0x5c]
xor edi, edi
test eax, eax
jle 0x49ae8a
mov eax, dword [esi + 0x60]
mov ecx, dword [ebx]
mov eax, dword [eax + edi*4]
mov ecx, dword [ecx - 8]
mov edx, dword [eax]
cmp ecx, dword [edx - 8]
jne 0x49ae82
push eax
mov ecx, ebx
call fcn.00571b90
test eax, eax
jne 0x49ae82
mov eax, dword [esi + 0x60]
mov edx, dword [ebx + 4]
lea ecx, [ebx + 4]
mov eax, dword [eax + edi*4]
mov edx, dword [edx - 8]
add eax, 8
mov ebp, dword [eax]
cmp edx, dword [ebp - 8]
jne 0x49ae7e
push eax
call fcn.00571b90
test eax, eax
je 0x49ae95
mov ebp, dword [esp + 0x10]
mov eax, dword [esi + 0x5c]
inc edi
cmp edi, eax
jl 0x49ae3d
push ebp
mov ecx, esi
call fcn.00493560
dec ebp
jmp 0x49ae99
mov ebp, dword [esp + 0x10]
inc ebp
mov ecx, esi
mov dword [esp + 0x10], ebp
call fcn.00493230
cmp ebp, eax
jl 0x49ae2a
xor ebp, ebp
mov ecx, esi
mov dword [esp + 0x10], ebp
call fcn.00492e60
test eax, eax
jle 0x49af39
push ebp
mov ecx, esi
call fcn.00492e70
mov ebx, eax
mov eax, dword [esi + 0x5c]
xor edi, edi
test eax, eax
jle 0x49af1a
mov eax, dword [esi + 0x60]
mov ecx, dword [ebx]
mov eax, dword [eax + edi*4]
mov ecx, dword [ecx - 8]
mov edx, dword [eax]
cmp ecx, dword [edx - 8]
jne 0x49af12
push eax
mov ecx, ebx
call fcn.00571b90
test eax, eax
jne 0x49af12
mov eax, dword [esi + 0x60]
mov edx, dword [ebx + 4]
lea ecx, [ebx + 4]
mov eax, dword [eax + edi*4]
mov edx, dword [edx - 8]
add eax, 8
mov ebp, dword [eax]
cmp edx, dword [ebp - 8]
jne 0x49af0e
push eax
call fcn.00571b90
test eax, eax
je 0x49af25
mov ebp, dword [esp + 0x10]
mov eax, dword [esi + 0x5c]
inc edi
cmp edi, eax
jl 0x49aecd
push ebp
mov ecx, esi
call fcn.004930c0
dec ebp
jmp 0x49af29
mov ebp, dword [esp + 0x10]
inc ebp
mov ecx, esi
mov dword [esp + 0x10], ebp
call fcn.00492e60
cmp ebp, eax
jl 0x49aeba
mov eax, dword [0x8b0a50]
mov dword [esp + 0x20], eax
mov dword [esp + 0x48], 1
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x13c]
xor ebp, ebp
test eax, eax
mov byte [esp + 0x48], 2
jle 0x49b117
mov bl, 5
mov eax, 0x8a06d8
test eax, eax
jne 0x49af73
mov eax, 0x8c55f4
mov ecx, dword [0x6e14e0]
push ecx
push 0
push eax
lea ecx, [esp + 0x24]
call fcn.00570720
mov eax, dword [esi + 0x140]
lea edx, [esp + 0x18]
push 0
push edx
lea ecx, [eax + ebp*4]
mov byte [esp + 0x50], 3
push ecx
lea ecx, [esp + 0x30]
call fcn.00589860
mov edx, dword [esp + 0x18]
mov byte [esp + 0x48], bl
mov ecx, dword [edx - 0xc]
lea eax, [edx - 0xc]
cmp ecx, 0xffffffff
je 0x49afcd
dec ecx
test ecx, ecx
mov dword [eax], ecx
jne 0x49afcd
mov edi, dword [0x6c74ac]
push eax
call edi
add esp, 4
jmp 0x49afd3
mov edi, dword [0x6c74ac]
lea eax, [esp + 0x14]
lea ecx, [esp + 0x24]
push eax
call fcn.005899e0
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4c], 6
call fcn.00571160
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x48], bl
lea eax, [ecx - 0xc]
mov ecx, dword [ecx - 0xc]
cmp ecx, 0xffffffff
je 0x49b010
dec ecx
test ecx, ecx
mov dword [eax], ecx
jne 0x49b010
push eax
call edi
add esp, 4
lea edx, [esp + 0x10]
lea ecx, [esp + 0x24]
push edx
call fcn.005899e0
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x4c], 7
call fcn.00571160
mov eax, dword [esp + 0x10]
mov byte [esp + 0x48], bl
add eax, 0xfffffff4
mov ecx, dword [eax]
cmp ecx, 0xffffffff
je 0x49b04c
dec ecx
test ecx, ecx
mov dword [eax], ecx
jne 0x49b04c
push eax
call edi
add esp, 4
mov eax, dword [esi + 0x5c]
xor edi, edi
test eax, eax
jle 0x49b0a4
mov ecx, dword [esi + 0x60]
mov edx, dword [esp + 0x20]
mov eax, dword [ecx + edi*4]
mov ecx, dword [edx - 8]
mov edx, dword [eax]
cmp ecx, dword [edx - 8]
jne 0x49b09c
push eax
lea ecx, [esp + 0x24]
call fcn.00571b90
test eax, eax
jne 0x49b09c
mov eax, dword [esi + 0x60]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax + edi*4]
mov ecx, dword [ecx - 8]
add eax, 8
mov edx, dword [eax]
cmp ecx, dword [edx - 8]
jne 0x49b09c
push eax
lea ecx, [esp + 0x20]
call fcn.00571b90
test eax, eax
je 0x49b0b3
mov eax, dword [esi + 0x5c]
inc edi
cmp edi, eax
jl 0x49b055
push 1
push ebp
lea ecx, [esi + 0x138]
call fcn.00573390
dec ebp
mov eax, dword [esp + 0x30]
mov byte [esp + 0x48], 2
add eax, 0xfffffff4
mov ecx, dword [eax]
cmp ecx, 0xffffffff
je 0x49b0d7
dec ecx
test ecx, ecx
mov dword [eax], ecx
jne 0x49b0d7
push eax
call dword [0x6c74ac]
add esp, 4
mov ecx, dword [esp + 0x2c]
lea eax, [ecx - 0xc]
mov ecx, dword [ecx - 0xc]
cmp ecx, 0xffffffff
je 0x49b0f7
dec ecx
test ecx, ecx
mov dword [eax], ecx
jne 0x49b0f7
push eax
call dword [0x6c74ac]
add esp, 4
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], vtable.wxObject.0
call fcn.0056f8d0
mov eax, dword [esi + 0x13c]
inc ebp
cmp ebp, eax
jl 0x49af65
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x14c]
test eax, eax
jne 0x49b12f
xor edx, edx
jmp 0x49b148
mov ecx, dword [esi + 0x150]
sub ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp dword [esp + 0x10], edx
jge 0x49b2d3
mov ecx, dword [esi + 0x5c]
xor eax, eax
test ecx, ecx
mov dword [esp + 0x14], eax
jle 0x49b200
mov ecx, dword [esi + 0x60]
mov edi, dword [esi + 0x14c]
mov ebx, dword [ecx + eax*4]
mov ecx, dword [esp + 0x18]
add edi, ecx
mov ecx, dword [ebx]
mov edx, dword [edi]
mov ebp, dword [ecx - 8]
mov edx, dword [edx - 8]
cmp edx, ebp
jne 0x49b1f0
push ebx
mov ecx, edi
call fcn.00571b90
test eax, eax
jne 0x49b1ec
mov ebp, dword [edi + 4]
mov edx, dword [ebx + 4]
lea ecx, [edi + 4]
lea eax, [ebx + 4]
mov ebp, dword [ebp - 8]
cmp ebp, dword [edx - 8]
jne 0x49b1ec
push eax
call fcn.00571b90
test eax, eax
jne 0x49b1ec
mov edx, dword [edi + 8]
mov ebp, dword [ebx + 8]
lea ecx, [edi + 8]
lea eax, [ebx + 8]
mov edx, dword [edx - 8]
cmp edx, dword [ebp - 8]
jne 0x49b1ec
push eax
call fcn.00571b90
test eax, eax
jne 0x49b1ec
mov al, byte [edi + 0xc]
test al, al
je 0x49b1e1
mov cl, byte [ebx + 0xc]
test cl, cl
jne 0x49b2be
test al, al
jne 0x49b1ec
mov al, byte [ebx + 0xc]
test al, al
je 0x49b2be
mov eax, dword [esp + 0x14]
mov ecx, dword [esi + 0x5c]
inc eax
cmp eax, ecx
mov dword [esp + 0x14], eax
jl 0x49b163
mov eax, dword [esp + 0x18]
mov ebx, dword [esi + 0x14c]
test eax, eax
jle 0x49b210
add ebx, eax
mov ebp, dword [esi + 0x150]
add ebx, 0x14
cmp ebx, ebp
je 0x49b256
lea edi, [ebx - 0xc]
push ebx
lea ecx, [edi - 8]
call fcn.00571160
lea eax, [edi + 0x10]
lea ecx, [edi - 4]
push eax
call fcn.00571160
lea ecx, [edi + 0x14]
push ecx
mov ecx, edi
call fcn.00571160
mov dl, byte [edi + 0x18]
add ebx, 0x14
mov byte [edi + 4], dl
mov eax, dword [edi + 0x1c]
mov dword [edi + 8], eax
add edi, 0x14
cmp ebx, ebp
jne 0x49b220
mov ebp, dword [esi + 0x150]
lea edi, [ebp - 0x14]
cmp edi, ebp
je 0x49b29b
lea ebx, [edi + 4]
lea ecx, [ebx + 4]
call fcn.004327c0
mov ecx, eax
call fcn.004327a0
mov ecx, ebx
call fcn.004327c0
mov ecx, eax
call fcn.004327a0
mov ecx, edi
call fcn.004327c0
mov ecx, eax
call fcn.004327a0
add edi, 0x14
add ebx, 0x14
cmp edi, ebp
jne 0x49b266
mov edx, dword [esi + 0x150]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
add edx, 0xffffffec
dec ecx
sub eax, 0x14
mov dword [esi + 0x150], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
inc ecx
add eax, 0x14
mov dword [esp + 0x10], ecx
jmp 0x49b11d
mov ecx, dword [esp + 0x1c]
pop edi
pop esi
pop ebp
lea eax, [ecx - 0xc]
pop ebx
mov ecx, dword [eax]
cmp ecx, 0xffffffff
je 0x49b2f6
dec ecx
test ecx, ecx
mov dword [eax], ecx
jne 0x49b2f6
push eax
call dword [0x6c74ac]
add esp, 4
mov edx, dword [esp + 0x10]
mov ecx, dword [edx - 0xc]
lea eax, [edx - 0xc]
cmp ecx, 0xffffffff
je 0x49b316
dec ecx
test ecx, ecx
mov dword [eax], ecx
jne 0x49b316
push eax
call dword [0x6c74ac]
add esp, 4
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
add esp, 0x3c
ret