Function at 0x41955b
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4a6ede
mov eax, dword fs:[0]
push eax
sub esp, 0x48
push ebx
push esi
push edi
mov eax, dword [0x4d6674]
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 fcn.0046e7df
push eax
lea ecx, [esp + 0x1c]
call fcn.00401764
mov dword [esp + 0x60], edi
call fcn.0046e7df
push eax
lea ecx, [esp + 0x18]
call fcn.00401764
mov byte [esp + 0x60], 1
call fcn.0046e7df
push eax
lea ecx, [esp + 0x14]
call fcn.00401764
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.004179ed
cmp dword [esp + 0x38], 0
jl 0x41964b
jg 0x419607
cmp dword [esp + 0x34], 0x3e8
jbe 0x41964b
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 fcn.0048f110
add edi, dword [esp + 0x2c]
push edx
adc ebx, dword [esp + 0x34]
push eax
push ebx
push edi
call fcn.0048f110
push edx
push eax
lea eax, [esp + 0x20]
push str._lu__
push eax
call fcn.00401a35
add esp, 0x10
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x38]
push eax
lea ebx, [esp + 0x24]
call fcn.00417f62
xor ebx, ebx
cmp dword [esp + 0x38], ebx
jl 0x419711
jg 0x41967a
cmp dword [esp + 0x34], 0x3e8
jbe 0x419711
mov ecx, esi
call fcn.0041794b
test eax, eax
jne 0x419711
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x3c]
mov edx, esi
call fcn.00417d7e
cmp dword [esi + 0x2180], ebx
mov dword [0x4db25c], eax
je 0x419711
cmp eax, dword [esi + 0x2780]
je 0x419711
push eax
lea eax, [esp + 0x28]
push eax
call fcn.00461d62
mov edi, eax
lea eax, [esp + 0x30]
push str.g2gSetTotalPercent
push eax
mov byte [esp + 0x70], 3
call fcn.00461ac5
add esp, 0x10
push edi
mov byte [esp + 0x64], 4
mov ecx, dword [esi + 0x2180]
push eax
call fcn.00448bc5
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
call fcn.0040174a
mov byte [esp + 0x60], 2
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.0040174a
mov eax, dword [0x4db25c]
mov dword [esi + 0x2780], eax
lea edi, [esi + 0x2378]
mov ecx, edi
call fcn.00461052
test eax, eax
je 0x419750
mov ecx, dword [esi + 0x1f6c]
lea eax, [esp + 0x28]
push eax
call fcn.0040d2d0
push eax
mov ecx, edi
mov byte [esp + 0x64], 5
call fcn.004018c1
mov byte [esp + 0x60], 2
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
call fcn.0040174a
mov eax, dword [esp + 0x34]
or eax, dword [esp + 0x38]
jne 0x41978d
mov ecx, dword [esi + 0x1f6c]
mov edi, dword [ecx + 0x68]
mov ebx, dword [ecx + 0x6c]
call fcn.0040af4a
sub edi, eax
sbb ebx, edx
test ebx, ebx
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], ebx
jg 0x41978b
jl 0x419781
test edi, edi
jae 0x41978b
and dword [esp + 0x34], 0
and dword [esp + 0x38], 0
xor ebx, ebx
lea eax, [esp + 0x24]
push str.TotalFiles
push eax
call fcn.00461ac5
mov edi, eax
lea eax, [esp + 0x30]
push str.ToGo
push eax
mov byte [esp + 0x70], 6
call fcn.00461ac5
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.0044a7ed
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
mov edi, eax
call fcn.0040174a
mov byte [esp + 0x60], 2
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.0040174a
mov eax, dword [esi + 0x1f88]
cmp eax, ebx
je 0x4198b4
mov ecx, dword [esi + 0x1f7c]
inc ecx
cmp ecx, edi
jge 0x41988c
cmp edi, 1
jle 0x41988c
cmp dword [esp + 0x38], ebx
jl 0x4199e7
jg 0x419827
cmp dword [esp + 0x34], 0x3e8
jbe 0x4199e7
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 fcn.0048f110
add edi, dword [esp + 0x2c]
push edx
adc ebx, dword [esp + 0x34]
push eax
push ebx
push edi
call fcn.0048f110
push edx
push eax
lea eax, [esp + 0x18]
push str._lu__
push eax
call fcn.00401a35
add esp, 0x10
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
call fcn.004018c1
push 0x4b7800
lea ecx, [esp + 0x1c]
call fcn.00403370
jmp 0x4199e7
cmp eax, ebx
je 0x4198b4
lea eax, [esp + 0x10]
push str.100__
push eax
call fcn.00401a35
pop ecx
pop ecx
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x1c]
call fcn.004018c1
jmp 0x4199b3
mov eax, dword [esp + 0x34]
or eax, dword [esp + 0x38]
jne 0x41995d
mov eax, dword [esp + 0x2c]
or eax, dword [esp + 0x30]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
jne 0x4198f0
mov edx, ecx
or edx, eax
jne 0x4198f0
lea eax, [esp + 0x10]
push 0x4b7800
push eax
call fcn.00401a35
pop ecx
pop ecx
jmp 0x4199e7
add ecx, dword [esp + 0x2c]
adc eax, dword [esp + 0x30]
js 0x419932
jg 0x419904
cmp ecx, 0x989680
jbe 0x419932
push ebx
push 0x400
push eax
push ecx
call fcn.0048f110
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edx
fild qword [esp + 0x34]
push ecx
push ecx
fmul qword [0x4bd840]
fstp qword [esp]
push str._.2fMB
jmp 0x4199da
cmp eax, ebx
jg 0x419947
jl 0x419940
cmp ecx, 0x3e8
jae 0x419947
push eax
push ecx
jmp 0x4199d5
push ebx
push 0x400
push eax
push ecx
call fcn.0048f110
push edx
push eax
push str._luk
jmp 0x4199da
cmp dword [esp + 0x38], ebx
jl 0x4199c3
jg 0x41996f
cmp dword [esp + 0x34], 0x3e8
jbe 0x4199c3
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 fcn.0048f110
add edi, dword [esp + 0x2c]
push edx
adc ebx, dword [esp + 0x34]
push eax
push ebx
push edi
call fcn.0048f110
push edx
push eax
lea eax, [esp + 0x18]
push str._lu__
push eax
call fcn.00401a35
add esp, 0x10
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
call fcn.004018c1
jmp 0x4199e7
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 str._lu_bytes
lea eax, [esp + 0x1c]
push eax
call fcn.00401a35
add esp, 0x10
mov edi, dword [esi + 0x1f6c]
lea eax, [esp + 0x28]
push eax
call fcn.0040d4ae
mov byte [esp + 0x60], 8
push dword [eax]
lea ecx, [esp + 0x14]
call fcn.00403f56
test eax, eax
mov byte [esp + 0x60], 2
mov ecx, dword [esp + 0x28]
setne bl
add ecx, 0xfffffff0
call fcn.0040174a
test bl, bl
je 0x419a31
mov edi, dword [esi + 0x1f6c]
lea eax, [esp + 0x10]
push eax
call fcn.0040b347
mov edi, dword [esi + 0x1f6c]
lea eax, [esp + 0x24]
push eax
call fcn.0040d630
lea ecx, [esp + 0x24]
mov byte [esp + 0x60], 9
call fcn.00461052
test eax, eax
jne 0x419a84
push dword [0x4db524]
push dword [esp + 0x28]
call fcn.00489523
test eax, eax
pop ecx
pop ecx
je 0x419a84
lea eax, [esp + 0x28]
push 0x4b77cc
push eax
lea ecx, [esp + 0x2c]
call fcn.00404dd4
pop ecx
pop ecx
mov byte [esp + 0x60], 0xa
jmp 0x419aa0
lea eax, [esp + 0x28]
push 0x4b77cc
push eax
lea ecx, [esi + 0x2378]
call fcn.00404dd4
pop ecx
pop ecx
mov byte [esp + 0x60], 0xb
push eax
lea ecx, [esp + 0x14]
call fcn.0040157b
mov byte [esp + 0x60], 9
mov ecx, dword [esp + 0x28]
add ecx, 0xfffffff0
call fcn.0040174a
lea eax, [esp + 0x34]
push str.TotalFiles
push eax
call fcn.00461ac5
mov edi, eax
lea eax, [esp + 0x34]
push str.ToGo
push eax
mov byte [esp + 0x70], 0xc
call fcn.00461ac5
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.0044a7ed
mov ecx, dword [esp + 0x2c]
add ecx, 0xfffffff0
mov dword [esp + 0x1c], eax
call fcn.0040174a
mov byte [esp + 0x60], 9
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.0040174a
xor ebx, ebx
inc ebx
cmp dword [esp + 0x1c], ebx
jle 0x419b86
call fcn.0046e7df
push eax
lea ecx, [esp + 0x2c]
call fcn.00401764
mov byte [esp + 0x60], 0xe
push dword [esp + 0x1c]
mov eax, dword [esi + 0x1f7c]
inc eax
push eax
lea eax, [esp + 0x30]
push str.___i_of__i_
push eax
call fcn.00401a35
mov edi, dword [esp + 0x38]
add esp, 0x10
push dword [edi - 0xc]
lea ecx, [esp + 0x14]
push edi
call fcn.00401662
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.0040174a
jmp 0x419b8e
mov dword [esp + 0x28], 1
cmp dword [esi + 0x2180], 0
je 0x419d42
lea ecx, [esp + 0x40]
call fcn.004713ad
mov byte [esp + 0x60], 0xf
call fcn.0046e7df
push eax
lea ecx, [esp + 0x20]
call fcn.00401764
lea eax, [esi + 0x2378]
push eax
mov byte [esp + 0x64], 0x10
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call fcn.00471796
mov edi, dword [esi + 0x1f6c]
lea eax, [esp + 0x34]
push eax
call fcn.0040d630
push eax
mov byte [esp + 0x64], 0x11
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call fcn.00471796
mov byte [esp + 0x60], 0x10
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.0040174a
lea eax, [esp + 0x18]
push eax
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call fcn.00471796
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call fcn.00471796
lea eax, [esp + 0x34]
push ebx
push eax
call fcn.00461d62
pop ecx
pop ecx
push eax
mov byte [esp + 0x64], 0x12
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call fcn.00471796
mov byte [esp + 0x60], 0x10
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.0040174a
push dword [esp + 0x28]
lea eax, [esp + 0x38]
push eax
call fcn.00461d62
pop ecx
pop ecx
push eax
mov byte [esp + 0x64], 0x13
push dword [esp + 0x4c]
lea ecx, [esp + 0x48]
call fcn.00471796
mov byte [esp + 0x60], 0x10
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.0040174a
lea eax, [esp + 0x2c]
push str.g2gMakeTitle
push eax
call fcn.00461ac5
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.00448ce5
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x64], 0x15
call fcn.004018c1
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.0040174a
mov byte [esp + 0x60], 0x10
mov ecx, dword [esp + 0x2c]
add ecx, 0xfffffff0
call fcn.0040174a
lea ecx, [esp + 0x1c]
call fcn.00461052
test eax, eax
jne 0x419d28
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x1c]
push eax
call fcn.00401a17
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.0040174a
lea ecx, [esp + 0x40]
mov byte [esp + 0x60], 9
call fcn.0047167f
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.0040174a
jmp 0x419d8c
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.0040174a
lea ecx, [esp + 0x40]
mov byte [esp + 0x60], 9
call fcn.0047167f
lea eax, [esp + 0x34]
push 0x33e
push eax
call fcn.00461b1e
pop ecx
pop ecx
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x64], 0x16
call fcn.0040157b
mov ecx, dword [esp + 0x34]
add ecx, 0xfffffff0
call fcn.0040174a
mov byte [esp + 0x60], 2
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.0040174a
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x10]
push eax
call fcn.00401a17
mov ecx, dword [esp + 0x10]
add ecx, 0xfffffff0
call fcn.0040174a
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.0040174a
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.0040174a
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