Function at 0x4f34a0
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x6c3baf
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x38
push ebx
push ebp
xor ebp, ebp
push esi
push edi
mov esi, ecx
mov dword [esp + 0x1c], ebp
mov al, byte [esp + 0x5c]
mov dword [esp + 0x50], 1
mov byte [esp + 0x24], al
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], ebp
push 6
push 0x7147a4
lea ecx, [esp + 0x28]
mov byte [esp + 0x58], 2
call fcn.0061d820
push 4
lea ecx, [esp + 0x60]
mov byte [esp + 0x54], 3
call fcn.0061daa0
push 5
lea ecx, [esp + 0x60]
mov byte [esp + 0x18], al
call fcn.0061daa0
mov byte [esp + 0x10], al
mov eax, dword [esp + 0x14]
and eax, 0xff
sub eax, ebp
je 0x4f3960
dec eax
je 0x4f372e
dec eax
jne case.default.0x4f3744
mov ecx, dword [esp + 0x10]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xe
ja case.default.0x4f3744
jmp dword [eax*4 + 0x4f3dec]
lea edx, [esp + 0x24]
lea ecx, [esi + 8]
push edx
push 0x64
push 0x63
push 5
call fcn.0061daa0
and al, 1
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea eax, [esp + 0x24]
lea ecx, [esi + 8]
push eax
push 0x64
push 0x63
push 5
call fcn.0061daa0
and al, 2
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea ecx, [esp + 0x24]
push ecx
push 0x64
push 0x63
push 5
lea ecx, [esi + 8]
call fcn.0061daa0
and al, 4
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea edx, [esp + 0x24]
lea ecx, [esi + 8]
push edx
push 0x64
push 0x63
push 5
call fcn.0061daa0
and al, 8
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea eax, [esp + 0x24]
lea ecx, [esi + 8]
push eax
push 0x64
push 0x63
push 5
call fcn.0061daa0
and al, 0x10
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea ecx, [esp + 0x24]
push ecx
push 0x64
push 0x63
push 5
lea ecx, [esi + 8]
call fcn.0061daa0
and al, 0x20
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea edx, [esp + 0x24]
push edx
push 0x64
push 0x63
push 5
jmp 0x4f3949
lea eax, [esp + 0x24]
lea ecx, [esi + 8]
push eax
push 0x64
push 0x63
push 5
call fcn.0061daa0
and al, 0x80
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea ecx, [esp + 0x24]
push ecx
push 0x64
push 0x63
push 6
lea ecx, [esi + 8]
call fcn.0061daa0
and al, 2
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea edx, [esp + 0x24]
lea ecx, [esi + 8]
push edx
push 0x64
push 0x63
push 6
call fcn.0061daa0
and al, 4
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea eax, [esp + 0x24]
lea ecx, [esi + 8]
push eax
push 0x64
push 0x63
push 6
call fcn.0061daa0
and al, 8
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea ecx, [esp + 0x24]
push ecx
push 0x64
push 0x63
push 6
lea ecx, [esi + 8]
call fcn.0061daa0
and al, 0x10
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea edx, [esp + 0x24]
lea ecx, [esi + 8]
push edx
push 0x64
push 0x63
push 6
call fcn.0061daa0
and al, 0x20
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea eax, [esp + 0x24]
push eax
push 0x64
push 0x63
push 6
jmp 0x4f3949
lea ecx, [esp + 0x24]
push ecx
push 0x64
push 0x63
push 6
lea ecx, [esi + 8]
call fcn.0061daa0
and al, 0x80
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
mov edx, dword [esp + 0x10]
and edx, 0xff
lea eax, [edx - 1]
cmp eax, 0x10
ja case.default.0x4f3744
jmp dword [eax*4 + 0x4f3e28]
lea eax, [esp + 0x24]
lea ecx, [esi + 8]
push eax
push 0x64
push 0x63
push 5
call fcn.0061daa0
and al, 1
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea ecx, [esp + 0x24]
push ecx
push 0x64
push 0x63
push 5
lea ecx, [esi + 8]
call fcn.0061daa0
and al, 2
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea edx, [esp + 0x24]
lea ecx, [esi + 8]
push edx
push 0x64
push 0x63
push 5
call fcn.0061daa0
and al, 4
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea eax, [esp + 0x24]
lea ecx, [esi + 8]
push eax
push 0x64
push 0x63
push 5
call fcn.0061daa0
and al, 8
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea ecx, [esp + 0x24]
push ecx
push 0x64
push 0x63
push 5
lea ecx, [esi + 8]
call fcn.0061daa0
and al, 0x10
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
lea edx, [esp + 0x24]
lea ecx, [esi + 8]
push edx
push 0x64
push 0x63
push 5
call fcn.0061daa0
and al, 0x20
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
push 6
lea ecx, [esi + 8]
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul qword [0x6df3f8]
fstp qword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
push eax
push ecx
lea edx, [esp + 0x3c]
push str._.2f
push edx
call fcn.006a6fa5
add esp, 0x10
jmp 0x4f3c0e
push 7
lea ecx, [esi + 8]
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
jmp 0x4f382e
push 8
lea ecx, [esi + 8]
call fcn.0061daa0
and eax, 0xff
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
jmp 0x4f382e
push 8
lea ecx, [esi + 8]
call fcn.0061daa0
and eax, 0xff
mov ecx, eax
lea eax, [ecx*8]
sub eax, ecx
lea ecx, [eax + eax*4]
mov eax, 0x80808081
shl ecx, 2
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
lea ecx, [edx + eax - 0x11]
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
jmp 0x4f3834
push 9
lea ecx, [esi + 8]
call fcn.0061daa0
and eax, 0xff
mov ebp, eax
jmp case.default.0x4f3744
push 5
lea ecx, [esi + 8]
call fcn.0061daa0
and eax, 0xff
mov ebp, eax
jmp case.default.0x4f3744
push 6
lea ecx, [esi + 8]
call fcn.0061daa0
and eax, 0xff
mov ebp, eax
jmp case.default.0x4f3744
push 7
lea ecx, [esi + 8]
call fcn.0061daa0
and eax, 0xff
mov ebp, eax
jmp case.default.0x4f3744
push 8
lea ecx, [esi + 8]
call fcn.0061daa0
and eax, 0xff
mov ebp, eax
jmp case.default.0x4f3744
lea edx, [esp + 0x24]
push edx
push 0x6d
push 0x8c
push 0xa
lea ecx, [esi + 8]
call fcn.0061daa0
and al, 0x40
mov ecx, esi
push eax
call fcn.004f3e70
jmp case.default.0x4f3744
mov eax, dword [esp + 0x10]
and eax, 0xff
dec eax
je 0x4f3b12
dec eax
je 0x4f3a66
dec eax
jne case.default.0x4f3744
add esi, 8
push 8
mov ecx, esi
call fcn.0061daa0
and eax, 0xff
mov ecx, esi
push eax
push 7
call fcn.0061daa0
and eax, 0xff
mov ecx, esi
push eax
push 6
call fcn.0061daa0
and eax, 0xff
mov ecx, esi
push eax
push 5
call fcn.0061daa0
and eax, 0xff
push eax
lea eax, [esp + 0x44]
push str._02x_02x_02x_02x
push eax
call fcn.006a6fa5
lea edi, [esp + 0x4c]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x18
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [esp + 0x24]
call fcn.00414a50
cmp eax, ebx
jae 0x4f39f1
call fcn.006a64db
mov edi, dword [esp + 0x28]
test edi, edi
je 0x4f3a13
mov al, byte [edi - 1]
test al, al
je 0x4f3a13
cmp al, 0xff
je 0x4f3a13
test ebx, ebx
jne 0x4f3a33
dec al
push ebx
mov byte [edi - 1], al
jmp 0x4f3bf0
test ebx, ebx
je 0x4f3bee
mov eax, dword [esp + 0x30]
cmp eax, 0x1f
ja 0x4f3a28
cmp eax, ebx
jae 0x4f3a41
push 1
lea ecx, [esp + 0x28]
call fcn.004138c0
push ebx
lea ecx, [esp + 0x28]
call fcn.00414a60
mov edi, dword [esp + 0x28]
mov ecx, ebx
lea esi, [esp + 0x34]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], ebx
mov byte [eax + ebx], 0
jmp case.default.0x4f3744
add esi, 8
push 8
mov ecx, esi
call fcn.0061daa0
and eax, 0xff
mov ecx, esi
push eax
push 7
call fcn.0061daa0
and eax, 0xff
mov ecx, esi
push eax
push 6
call fcn.0061daa0
and eax, 0xff
mov ecx, esi
push eax
push 5
call fcn.0061daa0
and eax, 0xff
lea ecx, [esp + 0x40]
push eax
push str._02x_02x_02x_02x
push ecx
call fcn.006a6fa5
lea edi, [esp + 0x4c]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x18
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [esp + 0x24]
call fcn.00414a50
cmp eax, ebx
jae 0x4f3ad9
call fcn.006a64db
mov edi, dword [esp + 0x28]
test edi, edi
je 0x4f3af0
mov al, byte [edi - 1]
test al, al
je 0x4f3af0
cmp al, 0xff
jne 0x4f3b98
test ebx, ebx
je 0x4f3bee
mov eax, dword [esp + 0x30]
cmp eax, 0x1f
ja 0x4f3bb5
cmp eax, ebx
jae 0x4f3bce
jmp 0x4f3bb5
add esi, 8
push 8
mov ecx, esi
call fcn.0061daa0
and eax, 0xff
mov ecx, esi
push eax
push 7
call fcn.0061daa0
and eax, 0xff
mov ecx, esi
push eax
push 6
call fcn.0061daa0
and eax, 0xff
mov ecx, esi
push eax
push 5
call fcn.0061daa0
and eax, 0xff
push eax
lea eax, [esp + 0x44]
push str._02x_02x_02x_02x
push eax
call fcn.006a6fa5
lea edi, [esp + 0x4c]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x18
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [esp + 0x24]
call fcn.00414a50
cmp eax, ebx
jae 0x4f3b85
call fcn.006a64db
mov edi, dword [esp + 0x28]
test edi, edi
je 0x4f3ba4
mov al, byte [edi - 1]
test al, al
je 0x4f3ba4
cmp al, 0xff
je 0x4f3ba4
test ebx, ebx
jne 0x4f3bc0
dec al
push ebx
mov byte [edi - 1], al
jmp 0x4f3bf0
test ebx, ebx
je 0x4f3bee
mov eax, dword [esp + 0x30]
cmp eax, 0x1f
ja 0x4f3bb5
cmp eax, ebx
jae 0x4f3bce
push 1
lea ecx, [esp + 0x28]
call fcn.004138c0
push ebx
lea ecx, [esp + 0x28]
call fcn.00414a60
mov edi, dword [esp + 0x28]
mov ecx, ebx
lea esi, [esp + 0x34]
mov edx, ecx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x28]
call fcn.00414210
jmp case.default.0x4f3744
push 1
lea ecx, [esp + 0x28]
call fcn.004138c0
push ebp
lea eax, [esp + 0x38]
push 0x713498
push eax
call fcn.006a6fa5
add esp, 0xc
xor ebp, ebp
cmp dword [esp + 0x2c], ebp
jne 0x4f3cb1
lea edi, [esp + 0x34]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
cmp ebx, 0xfffffffd
jbe 0x4f3c32
call fcn.006a64db
mov edi, dword [esp + 0x28]
test edi, edi
je 0x4f3c5a
mov al, byte [edi - 1]
test al, al
je 0x4f3c5a
cmp al, 0xff
je 0x4f3c5a
test ebx, ebx
jne 0x4f3c83
dec al
push ebx
lea ecx, [esp + 0x28]
mov byte [edi - 1], al
call fcn.004138c0
jmp 0x4f3cb1
test ebx, ebx
jne 0x4f3c6b
push 1
lea ecx, [esp + 0x28]
call fcn.004138c0
jmp 0x4f3cb1
mov eax, dword [esp + 0x30]
cmp eax, 0x1f
ja 0x4f3c78
cmp eax, ebx
jae 0x4f3c91
push 1
lea ecx, [esp + 0x28]
call fcn.004138c0
push ebx
lea ecx, [esp + 0x28]
call fcn.00414a60
mov edi, dword [esp + 0x28]
mov ecx, ebx
lea esi, [esp + 0x34]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], ebx
mov byte [eax + ebx], 0
mov ebx, dword [esp + 0x58]
mov cl, byte [esp + 0x24]
xor edi, edi
mov byte [ebx], cl
mov ecx, dword [esp + 0x2c]
mov dword [ebx + 4], edi
mov dword [ebx + 8], edi
mov dword [ebx + 0xc], edi
mov eax, dword [0x6dd1fc]
mov ebp, ecx
cmp eax, ebp
jae 0x4f3cd7
mov ebp, eax
lea edx, [esp + 0x24]
cmp ebx, edx
jne 0x4f3cf6
push eax
push ebp
mov ecx, ebx
call fcn.004140f0
push edi
push edi
mov ecx, ebx
call fcn.004140f0
jmp 0x4f3d7e
cmp ebp, edi
jbe 0x4f3d42
cmp ebp, ecx
jne 0x4f3d42
mov eax, dword [esp + 0x28]
cmp eax, edi
jne 0x4f3d0b
mov eax, 0x6dd1f8
cmp byte [eax - 1], 0xfe
jae 0x4f3d42
push 1
mov ecx, ebx
call fcn.004138c0
mov eax, dword [esp + 0x28]
cmp eax, edi
jne 0x4f3d27
mov eax, 0x6dd1f8
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov dword [ebx + 4], eax
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], edx
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x4f3d7e
push 1
push ebp
mov ecx, ebx
call fcn.00414230
test al, al
je 0x4f3d7e
mov esi, dword [esp + 0x28]
cmp esi, edi
jne 0x4f3d5d
mov esi, 0x6dd1f8
mov edi, dword [ebx + 4]
mov ecx, ebp
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
mov dword [ebx + 8], ebp
add ebp, eax
xor edi, edi
mov byte [ebp], 0
mov dword [esp + 0x1c], 1
lea ecx, [esp + 0x20]
mov byte [esp + 0x50], 2
call fcn.0061d8c0
mov eax, dword [esp + 0x28]
cmp eax, edi
je 0x4f3db9
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4f3db0
cmp al, 0xff
je 0x4f3db0
dec al
mov byte [ecx], al
jmp 0x4f3db9
push ecx
call fcn.006a64d0
add esp, 4
lea ecx, [esp + 0x5c]
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], edi
mov byte [esp + 0x50], 0
call fcn.0061d8c0
mov ecx, dword [esp + 0x48]
pop edi
pop esi
mov eax, ebx
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x44
ret 8