Function at 0x426660
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x4fb7d6
mov eax, dword fs:[0]
push eax
mov eax, 0x1048
call fcn.004e6a80
mov eax, dword [0x519bc0]
xor eax, esp
mov dword [esp + 0x1044], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x519bc0]
xor eax, esp
push eax
lea eax, [esp + 0x105c]
mov dword fs:[0], eax
mov edi, dword [esp + 0x106c]
xor esi, esi
mov ebx, ecx
xor ebp, ebp
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x30], edi
cmp dword [edi + 0x10], esi
jbe 0x426b90
lea ecx, [ecx]
push esi
mov ecx, edi
call fcn.0042a850
mov ecx, dword [eax + 0x2c]
cmp ecx, 2
je 0x4266d5
cmp ecx, 3
jne 0x4266f7
mov ecx, dword [ebx + 0x38]
mov edx, dword [eax + 0xc]
cmp edx, dword [ecx + 0x61b4]
jb 0x4266f7
ja 0x4266f0
mov edx, dword [eax + 8]
cmp edx, dword [ecx + 0x61b0]
jb 0x4266f7
cmp byte [eax + 0x4c], 0
jne 0x4266f7
inc ebp
inc esi
cmp esi, dword [edi + 0x10]
jb 0x4266c0
mov dword [esp + 0x14], ebp
test ebp, ebp
je 0x426b90
xor ecx, ecx
mov eax, ebp
mov edx, 0x38
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004e687d
xor esi, esi
add esp, 4
mov dword [esp + 0x18], eax
cmp dword [edi + 0x10], esi
jbe 0x4267ac
mov ebx, eax
push esi
mov ecx, edi
call fcn.0042a850
mov ecx, dword [eax + 0x2c]
cmp ecx, 2
je 0x42674a
cmp ecx, 3
jne 0x4267a2
mov ecx, dword [esp + 0x1c]
mov ecx, dword [ecx + 0x38]
mov edx, dword [eax + 0xc]
cmp edx, dword [ecx + 0x61b4]
jb 0x4267a2
ja 0x426769
mov edx, dword [eax + 8]
cmp edx, dword [ecx + 0x61b0]
jb 0x4267a2
cmp byte [eax + 0x4c], 0
jne 0x4267a2
mov ecx, ebx
mov dword [ecx], esi
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
add ebx, 0x38
xor eax, eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], eax
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x24], eax
mov dword [ecx + 0x28], eax
mov dword [ecx + 0x2c], eax
mov byte [ecx + 0x30], al
mov byte [ecx + 0x31], al
inc esi
cmp esi, dword [edi + 0x10]
jb 0x426735
mov eax, dword [esp + 0x18]
push 0x424af0
push 0x38
push ebp
xor ebx, ebx
push eax
mov dword [0x5282d8], ebx
call fcn.004e9a50
add esp, 0x10
test ebp, ebp
jbe 0x4268b6
mov esi, dword [esp + 0x18]
add esi, 0x40
lea eax, [ebp - 1]
cmp ebx, eax
jae 0x4267f6
cmp byte [esi - 0xf], 0
jne 0x4267f6
cmp byte [esi + 0x29], 0
jne 0x4267f6
mov ecx, dword [esi - 0x38]
cmp ecx, dword [esi]
jne 0x4267f6
mov edx, dword [esi - 0x34]
cmp edx, dword [esi + 4]
je 0x42682a
test ebx, ebx
jbe 0x4268aa
cmp byte [esi - 0xf], 0
jne 0x4268aa
cmp byte [esi - 0x47], 0
jne 0x4268aa
mov eax, dword [esi - 0x38]
cmp eax, dword [esi - 0x70]
jne 0x4268aa
mov ecx, dword [esi - 0x34]
cmp ecx, dword [esi - 0x6c]
jne 0x4268aa
call fcn.00469c30
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea edx, [ebp + ebp]
push edx
push 0
push ebx
call fcn.0046b060
mov eax, dword [esi - 0x40]
push eax
mov ecx, edi
call fcn.0042a850
mov ebp, dword [eax]
lea ecx, [esp + 0x34]
call fcn.00443ed0
mov dword [esp + 0x1064], 0
push 0
push ebp
lea ecx, [esp + 0x3c]
call fcn.00443f60
test al, al
je 0x42688e
lea ecx, [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x20]
call fcn.00424c60
mov dword [esi - 0x3c], eax
jmp 0x426892
mov byte [esi - 0xf], 1
mov dword [esp + 0x1064], 0xffffffff
lea ecx, [esp + 0x34]
call fcn.00444640
mov ebp, dword [esp + 0x14]
inc ebx
add esi, 0x38
cmp ebx, ebp
jb 0x4267d4
mov edx, dword [esp + 0x18]
push 0x424af0
push 0x38
push ebp
push edx
mov dword [0x5282d8], 1
call fcn.004e9a50
add esp, 0x10
call fcn.0046a5d0
mov ecx, dword [esp + 0x1c]
mov dword [ecx], eax
xor ebp, ebp
xor ebx, ebx
xor eax, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x20], eax
mov edx, dword [esp + 0x14]
xor eax, eax
mov dword [esp + 0x24], eax
test edx, edx
jbe 0x426a62
mov esi, dword [esp + 0x18]
add esi, 0x40
jmp 0x426910
lea ecx, [edx - 1]
cmp eax, ecx
jae 0x42693a
cmp byte [esi - 0xf], 0
jne 0x42693a
cmp byte [esi + 0x29], 0
jne 0x42693a
mov ecx, dword [esi - 0x38]
cmp ecx, dword [esi]
jne 0x42693a
mov ecx, dword [esi - 0x34]
cmp ecx, dword [esi + 4]
jne 0x42693a
mov ecx, dword [esi - 0x3c]
cmp ecx, dword [esi - 4]
je 0x42697a
test eax, eax
jbe 0x426a52
cmp byte [esi - 0xf], 0
jne 0x426a52
cmp byte [esi - 0x47], 0
jne 0x426a52
mov ecx, dword [esi - 0x38]
cmp ecx, dword [esi - 0x70]
jne 0x426a52
mov ecx, dword [esi - 0x34]
cmp ecx, dword [esi - 0x6c]
jne 0x426a52
mov ecx, dword [esi - 0x3c]
cmp ecx, dword [esi - 0x74]
jne 0x426a52
cmp dword [esp + 0x20], 0
jne 0x42699b
mov edx, dword [esi - 0x40]
push edx
mov ecx, edi
call fcn.0042a850
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
add ebp, ecx
adc ebx, edx
jmp 0x426a4a
call fcn.00469c30
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 2
push ebx
push ebp
call fcn.004e79f0
mov ecx, dword [esp + 0x44]
push edx
push eax
mov eax, dword [esp + 0x48]
add eax, ebp
adc ecx, ebx
push ecx
push eax
call fcn.0046b060
mov edx, dword [esi - 0x40]
push edx
mov ecx, edi
call fcn.0042a850
mov ecx, dword [eax + 8]
add dword [esp + 0x28], ecx
mov edx, dword [eax + 0xc]
mov eax, dword [esi - 0x40]
adc dword [esp + 0x2c], edx
push eax
mov ecx, edi
call fcn.0042a850
mov edi, dword [eax]
lea ecx, [esp + 0x34]
call fcn.00443ed0
mov dword [esp + 0x1064], 1
push 0
push edi
lea ecx, [esp + 0x3c]
call fcn.00443f60
test al, al
je 0x426a2e
lea ecx, [esi - 0x30]
push ecx
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x38]
push edx
call fcn.00426520
mov byte [esi - 0x10], 1
jmp 0x426a32
mov byte [esi - 0xf], 1
mov dword [esp + 0x1064], 0xffffffff
lea ecx, [esp + 0x34]
call fcn.00444640
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x14]
inc eax
add esi, 0x38
mov dword [esp + 0x24], eax
cmp eax, edx
jb 0x426910
mov eax, dword [esp + 0x20]
inc eax
cmp eax, 2
mov dword [esp + 0x20], eax
jl 0x4268f2
mov edi, dword [esp + 0x18]
push 0x424af0
push 0x38
push edx
push edi
mov dword [0x5282d8], 2
call fcn.004e9a50
add esp, 0x10
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x64
push 0
push 0x64
call fcn.0046b060
mov eax, dword [esp + 0x14]
xor ebp, ebp
add eax, 0xffffffff
mov dword [esp + 0x20], eax
je 0x426b6a
lea ecx, [ebp*8]
sub ecx, ebp
inc ebp
lea esi, [edi + ecx*8]
cmp ebp, dword [esp + 0x14]
jae 0x426b62
lea edx, [ebp*8]
sub edx, ebp
lea edi, [edi + edx*8 + 8]
cmp byte [esi + 0x31], 0
jne 0x426b5a
cmp byte [edi + 0x29], 0
jne 0x426b5a
mov eax, dword [esi + 8]
cmp eax, dword [edi]
jne 0x426b5a
mov ecx, dword [esi + 0xc]
cmp ecx, dword [edi + 4]
jne 0x426b5a
cmp byte [esi + 0x30], 0
je 0x426b5a
cmp byte [edi + 0x28], 0
je 0x426b5a
lea eax, [edi + 8]
mov edx, esi
sub edx, eax
mov ecx, 0x20
add edx, 0x10
lea esp, [esp]
mov ebx, dword [edx + eax]
cmp ebx, dword [eax]
jne 0x426b5a
sub ecx, 4
add eax, 4
cmp ecx, 4
jae 0x426b20
mov eax, dword [esi]
mov ebx, dword [esp + 0x30]
push eax
mov ecx, ebx
call fcn.0042a850
mov ecx, dword [edi - 8]
push ecx
mov ecx, ebx
call fcn.0042a850
mov edx, dword [esi]
inc ebp
add edi, 0x38
mov dword [eax + 0x48], edx
cmp ebp, dword [esp + 0x14]
jb 0x426ae3
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x20]
cmp ebp, eax
jb 0x426abf
push edi
call fcn.004e7a24
mov esi, dword [esp + 0x20]
mov eax, dword [esi]
add esp, 4
push eax
call fcn.0046a7f0
mov ecx, dword [esi + 0x38]
cmp byte [ecx + 0xa3e5], 0
jne 0x426b90
call fcn.004b59f0
mov ecx, dword [esp + 0x105c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1044]
xor ecx, esp
call fcn.004e6a64
add esp, 0x1054
ret 4