Function at 0x4d71e6
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4a733c
mov eax, dword fs:[0]
push eax
sub esp, 0x48
push ebx
push esi
push edi
mov eax, dword [0x4d8684]
xor eax, esp
push eax
lea eax, [esp + 0x58]
mov dword fs:[0], eax
mov esi, ecx
xor edi, edi
mov dword [esp + 0x2c], edi
call 0x52cc48
push eax
lea ecx, [esp + 0x1c]
call fcn.004bf36f
mov dword [esp + 0x60], edi
call 0x52cc48
push eax
lea ecx, [esp + 0x18]
call fcn.004bf36f
mov byte [esp + 0x60], 1
call 0x52cc48
push eax
lea ecx, [esp + 0x14]
call fcn.004bf36f
mov byte [esp + 0x60], 2
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], edi
push esi
lea edi, [esp + 0x20]
lea edx, [esp + 0x30]
lea ebx, [esp + 0x38]
call fcn.004d5678
cmp dword [esp + 0x38], 0
jl 0x4d72d6
jg 0x4d7292
cmp dword [esp + 0x34], 0x3e8
jbe 0x4d72d6
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov eax, edi
add eax, dword [esp + 0x34]
push 0
mov ecx, ebx
adc ecx, dword [esp + 0x3c]
push 0x64
push ecx
push eax
call 0x54d3d0
add edi, dword [esp + 0x2c]
push edx
adc ebx, dword [esp + 0x34]
push eax
push ebx
push edi
call 0x54d3d0
push edx
push eax
lea eax, [esp + 0x20]
push 0x4b8854
push eax
call fcn.004bf640
add esp, 0x10
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x38]
push eax
lea ebx, [esp + 0x24]
call fcn.004d5bed
xor ebx, ebx
cmp dword [esp + 0x38], ebx
jl 0x4d739c
jg 0x4d7305
cmp dword [esp + 0x34], 0x3e8
jbe 0x4d739c
mov ecx, esi
call fcn.004d55d6
test eax, eax
jne 0x4d739c
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x3c]
mov edx, esi
call fcn.004d5a09
cmp dword [esi + 0x2180], ebx
mov dword [0x4dd288], eax
je 0x4d739c
cmp eax, dword [esi + 0x2780]
je 0x4d739c
push eax
lea eax, [esp + 0x28]
push eax
call 0x5201d8
mov edi, eax
lea eax, [esp + 0x30]
push 0x4b885c
push eax
mov byte [esp + 0x70], 3
call 0x51ff3b
add esp, 0x10
push edi
mov byte [esp + 0x64], 4
mov ecx, dword [esi + 0x2180]
push eax
call fcn.00506e02
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
call fcn.004bf355
mov byte [esp + 0x60], 2
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.004bf355
mov eax, dword [0x4dd288]
mov dword [esi + 0x2780], eax
lea edi, [esi + 0x2378]
mov ecx, edi
call 0x51f4c8
test eax, eax
je 0x4d73db
mov ecx, dword [esi + 0x1f6c]
lea eax, [esp + 0x28]
push eax
call fcn.004caf58
push eax
mov ecx, edi
mov byte [esp + 0x64], 5
call fcn.004bf4cc
mov byte [esp + 0x60], 2
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
call fcn.004bf355
mov eax, dword [esp + 0x34]
or eax, dword [esp + 0x38]
jne 0x4d7418
mov ecx, dword [esi + 0x1f6c]
mov edi, dword [ecx + 0x68]
mov ebx, dword [ecx + 0x6c]
call fcn.004c8bd2
sub edi, eax
sbb ebx, edx
test ebx, ebx
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], ebx
jg 0x4d7416
jl 0x4d740c
test edi, edi
jae 0x4d7416
and dword [esp + 0x34], 0
and dword [esp + 0x38], 0
xor ebx, ebx
lea eax, [esp + 0x24]
push 0x4b8420
push eax
call 0x51ff3b
mov edi, eax
lea eax, [esp + 0x30]
push 0x4b819c
push eax
mov byte [esp + 0x70], 6
call 0x51ff3b
add esp, 0x10
mov byte [esp + 0x60], 7
mov edi, dword [edi]
mov eax, dword [eax]
push ebx
push edi
mov edi, dword [esi + 0x1f70]
push eax
call fcn.00508a46
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
mov edi, eax
call fcn.004bf355
mov byte [esp + 0x60], 2
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.004bf355
mov eax, dword [esi + 0x1f88]
cmp eax, ebx
je 0x4d753f
mov ecx, dword [esi + 0x1f7c]
inc ecx
cmp ecx, edi
jge 0x4d7517
cmp edi, 1
jle 0x4d7517
cmp dword [esp + 0x38], ebx
jl 0x4d7672
jg 0x4d74b2
cmp dword [esp + 0x34], 0x3e8
jbe 0x4d7672
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov eax, edi
add eax, dword [esp + 0x34]
push 0
mov ecx, ebx
adc ecx, dword [esp + 0x3c]
push 0x64
push ecx
push eax
call 0x54d3d0
add edi, dword [esp + 0x2c]
push edx
adc ebx, dword [esp + 0x34]
push eax
push ebx
push edi
call 0x54d3d0
push edx
push eax
lea eax, [esp + 0x18]
push 0x4b8854
push eax
call fcn.004bf640
add esp, 0x10
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
call fcn.004bf4cc
push 0x4b8870
lea ecx, [esp + 0x1c]
call fcn.004c0f7b
jmp 0x4d7672
cmp eax, ebx
je 0x4d753f
lea eax, [esp + 0x10]
push 0x4b8874
push eax
call fcn.004bf640
pop ecx
pop ecx
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x1c]
call fcn.004bf4cc
jmp 0x4d763e
mov eax, dword [esp + 0x34]
or eax, dword [esp + 0x38]
jne 0x4d75e8
mov eax, dword [esp + 0x2c]
or eax, dword [esp + 0x30]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
jne 0x4d757b
mov edx, ecx
or edx, eax
jne 0x4d757b
lea eax, [esp + 0x10]
push 0x4b8870
push eax
call fcn.004bf640
pop ecx
pop ecx
jmp 0x4d7672
add ecx, dword [esp + 0x2c]
adc eax, dword [esp + 0x30]
js 0x4d75bd
jg 0x4d758f
cmp ecx, 0x989680
jbe 0x4d75bd
push ebx
push 0x400
push eax
push ecx
call 0x54d3d0
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edx
fild qword [esp + 0x34]
push ecx
push ecx
fmul qword [0x4be9b8]
fstp qword [esp]
push 0x4b748c
jmp 0x4d7665
cmp eax, ebx
jg 0x4d75d2
jl 0x4d75cb
cmp ecx, 0x3e8
jae 0x4d75d2
push eax
push ecx
jmp 0x4d7660
push ebx
push 0x400
push eax
push ecx
call 0x54d3d0
push edx
push eax
push 0x4b74a0
jmp 0x4d7665
cmp dword [esp + 0x38], ebx
jl 0x4d764e
jg 0x4d75fa
cmp dword [esp + 0x34], 0x3e8
jbe 0x4d764e
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov eax, edi
add eax, dword [esp + 0x34]
push 0
mov ecx, ebx
adc ecx, dword [esp + 0x3c]
push 0x64
push ecx
push eax
call 0x54d3d0
add edi, dword [esp + 0x2c]
push edx
adc ebx, dword [esp + 0x34]
push eax
push ebx
push edi
call 0x54d3d0
push edx
push eax
lea eax, [esp + 0x18]
push 0x4b8854
push eax
call fcn.004bf640
add esp, 0x10
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
call fcn.004bf4cc
jmp 0x4d7672
mov eax, dword [esp + 0x1c]
add eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x20]
adc ecx, dword [esp + 0x30]
push ecx
push eax
push 0x4b7494
lea eax, [esp + 0x1c]
push eax
call fcn.004bf640
add esp, 0x10
mov edi, dword [esi + 0x1f6c]
lea eax, [esp + 0x28]
push eax
call fcn.004cb136
mov byte [esp + 0x60], 8
push dword [eax]
lea ecx, [esp + 0x14]
call fcn.004c1bf4
test eax, eax
mov byte [esp + 0x60], 2
mov ecx, dword [esp + 0x28]
setne bl
add ecx, 0xfffffff0
call fcn.004bf355
test bl, bl
je 0x4d76bc
mov edi, dword [esi + 0x1f6c]
lea eax, [esp + 0x10]
push eax
call fcn.004c8fcf
mov edi, dword [esi + 0x1f6c]
lea eax, [esp + 0x24]
push eax
call fcn.004cb2b8
lea ecx, [esp + 0x24]
mov byte [esp + 0x60], 9
call 0x51f4c8
test eax, eax
jne 0x4d770f
push dword [0x4dd550]
push dword [esp + 0x28]
call 0x5479c3
test eax, eax
pop ecx
pop ecx
je 0x4d770f
lea eax, [esp + 0x28]
push 0x4b883c
push eax
lea ecx, [esp + 0x2c]
call fcn.004c2a78
pop ecx
pop ecx
mov byte [esp + 0x60], 0xa
jmp 0x4d772b
lea eax, [esp + 0x28]
push 0x4b883c
push eax
lea ecx, [esi + 0x2378]
call fcn.004c2a78
pop ecx
pop ecx
mov byte [esp + 0x60], 0xb
push eax
lea ecx, [esp + 0x14]
call fcn.004bf17b
mov byte [esp + 0x60], 9
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
call fcn.004bf355
lea eax, [esp + 0x34]
push 0x4b8420
push eax
call 0x51ff3b
mov edi, eax
lea eax, [esp + 0x34]
push 0x4b819c
push eax
mov byte [esp + 0x70], 0xc
call 0x51ff3b
add esp, 0x10
mov byte [esp + 0x60], 0xd
mov edi, dword [edi]
mov eax, dword [eax]
push 0
push edi
mov edi, dword [esi + 0x1f70]
push eax
call fcn.00508a46
mov ecx, dword [esp + 0x2c]
add ecx, 0xfffffff0
mov dword [esp + 0x1c], eax
call fcn.004bf355
mov byte [esp + 0x60], 9
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.004bf355
xor ebx, ebx
inc ebx
cmp dword [esp + 0x1c], ebx
jle 0x4d7811
call 0x52cc48
push eax
lea ecx, [esp + 0x2c]
call fcn.004bf36f
mov byte [esp + 0x60], 0xe
push dword [esp + 0x1c]
mov eax, dword [esi + 0x1f7c]
inc eax
push eax
lea eax, [esp + 0x30]
push 0x4b887c
push eax
call fcn.004bf640
mov edi, dword [esp + 0x38]
add esp, 0x10
push dword [edi - 0xc]
lea ecx, [esp + 0x14]
push edi
call fcn.004bf262
mov ebx, dword [esi + 0x1f7c]
mov eax, dword [esp + 0x1c]
lea ecx, [edi - 0x10]
inc ebx
mov dword [esp + 0x28], eax
mov byte [esp + 0x60], 9
call fcn.004bf355
jmp 0x4d7819
mov dword [esp + 0x28], 1
cmp dword [esi + 0x2180], 0
je 0x4d79cd
lea ecx, [esp + 0x40]
call 0x52f7b1
mov byte [esp + 0x60], 0xf
call 0x52cc48
push eax
lea ecx, [esp + 0x20]
call fcn.004bf36f
lea eax, [esi + 0x2378]
push eax
mov byte [esp + 0x64], 0x10
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call 0x52fb9a
mov edi, dword [esi + 0x1f6c]
lea eax, [esp + 0x34]
push eax
call fcn.004cb2b8
push eax
mov byte [esp + 0x64], 0x11
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call 0x52fb9a
mov byte [esp + 0x60], 0x10
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.004bf355
lea eax, [esp + 0x18]
push eax
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call 0x52fb9a
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call 0x52fb9a
lea eax, [esp + 0x34]
push ebx
push eax
call 0x5201d8
pop ecx
pop ecx
push eax
mov byte [esp + 0x64], 0x12
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call 0x52fb9a
mov byte [esp + 0x60], 0x10
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.004bf355
push dword [esp + 0x28]
lea eax, [esp + 0x38]
push eax
call 0x5201d8
pop ecx
pop ecx
push eax
mov byte [esp + 0x64], 0x13
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call 0x52fb9a
mov byte [esp + 0x60], 0x10
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.004bf355
lea eax, [esp + 0x2c]
push 0x4b8888
push eax
call 0x51ff3b
pop ecx
pop ecx
lea ecx, [esp + 0x40]
mov byte [esp + 0x60], 0x14
push ecx
mov ecx, dword [esi + 0x2180]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.00506f22
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x64], 0x15
call fcn.004bf4cc
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.004bf355
mov byte [esp + 0x60], 0x10
mov ecx, dword [esp + 0x2c]
add ecx, 0xfffffff0
call fcn.004bf355
lea ecx, [esp + 0x1c]
call 0x51f4c8
test eax, eax
jne 0x4d79b3
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x1c]
push eax
call fcn.004bf622
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.004bf355
lea ecx, [esp + 0x40]
mov byte [esp + 0x60], 9
call 0x52fa83
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.004bf355
jmp 0x4d7a17
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.004bf355
lea ecx, [esp + 0x40]
mov byte [esp + 0x60], 9
call 0x52fa83
lea eax, [esp + 0x34]
push 0x33e
push eax
call 0x51ff94
pop ecx
pop ecx
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x64], 0x16
call fcn.004bf17b
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.004bf355
mov byte [esp + 0x60], 2
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.004bf355
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x10]
push eax
call fcn.004bf622
mov ecx, dword [esp + 0x10]
add ecx, 0xfffffff0
call fcn.004bf355
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.004bf355
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.004bf355
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x58]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4