Function at 0x5405e0
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x58f69c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x64
push ebx
push ebp
push esi
push edi
xor edi, edi
push edi
mov esi, ecx
call fcn.0053fe90
mov ecx, eax
call fcn.0054b1c0
call fcn.0048bc00
mov ebx, eax
push ebx
mov ecx, esi
mov dword [esp + 0x1c], ebx
call fcn.0053fe90
mov ebp, eax
mov eax, dword [esi + 0x1c]
push 2
push eax
lea ecx, [esp + 0x38]
mov dword [esp + 0x2c], edi
call fcn.0054a760
mov eax, dword [esi + 0x18]
cmp eax, 0x2c0000
mov dword [esp + 0x7c], edi
jg 0x5409a7
je 0x54098c
cmp eax, 0x250000
jg 0x5407cc
je 0x5407a2
cmp eax, 0x220000
jg 0x540751
je 0x54070a
cmp eax, 0x1f0000
je 0x5406f4
cmp eax, 0x200000
je 0x5406ca
cmp eax, 0x210000
jne 0x540dce
cmp ebx, edi
jle 0x5406b5
mov edi, ebx
push edi
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
push eax
lea ecx, [esp + 0x34]
call fcn.0054ac40
sub edi, 1
sub ebx, 1
jne 0x540694
lea eax, [esp + 0x30]
push eax
mov ecx, ebp
call fcn.0054aff0
mov ebx, dword [esp + 0x18]
jmp 0x540de7
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b1c0
sub esp, 8
fstp qword [esp]
call fcn.0056cf00
mov ecx, ebp
fstp qword [esp]
call fcn.0054ae00
jmp 0x540de7
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b180
push eax
jmp 0x540de0
push 2
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
mov edi, eax
test edi, edi
je 0x540749
push 1
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
push eax
mov ecx, edi
call fcn.0054a8a0
xor ecx, ecx
test eax, eax
setg cl
mov eax, ecx
push eax
jmp 0x540de0
xor eax, eax
push eax
jmp 0x540de0
cmp eax, 0x230000
je 0x540769
cmp eax, 0x240000
jne 0x540dce
push edi
jmp 0x540de0
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b120
cmp eax, edi
je 0x540de7
mov ecx, dword [esi + 0x1c]
mov edx, dword [ecx + 0x14]
push eax
push ecx
call edx
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
mov ecx, ebp
fstp qword [esp]
call fcn.0054ae00
jmp 0x540de7
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b1c0
sub esp, 8
fstp qword [esp]
call fcn.0056cdd0
mov ecx, ebp
fstp qword [esp]
call fcn.0054ae00
jmp 0x540de7
cmp eax, 0x290000
jg 0x5408b0
je 0x5407f2
cmp eax, 0x260000
je 0x540824
cmp eax, 0x270000
je 0x54080f
cmp eax, 0x280000
jne 0x540dce
cmp ebx, edi
je 0x540918
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b120
jmp 0x54091b
fild dword [esi + 0x28]
sub esp, 8
mov ecx, ebp
fstp qword [esp]
call fcn.0054ae00
jmp 0x540de7
push 0xffffffffffffffff
push str.xml:lang
lea ecx, [esp + 0x38]
call fcn.0054ab60
mov edi, dword [esi + 0x1c]
lea eax, [esp + 0x24]
push eax
push 0
lea ecx, [esp + 0x38]
add edi, 4
call fcn.0054a890
mov ecx, dword [esi + 0x20]
mov edx, dword [esi + 0x1c]
push eax
mov eax, dword [edi]
push 5
push 9
push ecx
push edx
call eax
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x5408a9
cmp dword [esp + 0x24], 0
je 0x54087b
lea ecx, [esp + 0x28]
push ecx
mov ecx, esi
mov dword [esp + 0x2c], edi
call fcn.0054a780
push edi
mov ecx, ebp
call fcn.0054ae60
mov ecx, ebp
call fcn.0054b020
push 1
mov ecx, esi
mov edi, eax
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
mov ecx, edi
call fcn.005401d0
push eax
jmp 0x540de0
push 0
jmp 0x540de0
cmp eax, 0x2a0000
je 0x5407f2
cmp eax, 0x2b0000
jne 0x540dce
cmp ebx, edi
mov ecx, esi
jne 0x5408e2
mov edx, dword [esi + 0x20]
push edx
push edi
call fcn.0053fe90
mov ecx, eax
call fcn.0054ae60
push edi
mov ecx, esi
jmp 0x5408e4
push 1
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
cmp eax, edi
je 0x540907
push eax
lea ecx, [esp + 0x34]
call fcn.0054ac40
lea ecx, [esp + 0x30]
call fcn.0054a9c0
lea eax, [esp + 0x30]
push eax
mov ecx, ebp
call fcn.0054aff0
jmp 0x540de7
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x18]
mov ecx, dword [esi + 0x1c]
sub edx, 0x280000
push edx
push eax
mov eax, dword [ecx + 0x1c]
push ecx
call eax
mov edx, eax
add esp, 0xc
cmp edx, edi
jne 0x540969
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
sub ecx, 0x290000
neg ecx
sbb ecx, ecx
and ecx, 6
add ecx, 8
push ecx
push edx
call fcn.0053b850
add esp, 8
lea eax, [esp + 0x30]
push eax
mov ecx, ebp
call fcn.0054aff0
jmp 0x540de7
mov ecx, edx
call fcn.0053fc90
push eax
push edx
lea ecx, [esp + 0x38]
call fcn.0054ab10
lea eax, [esp + 0x30]
push eax
mov ecx, ebp
call fcn.0054aff0
jmp 0x540de7
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b180
test al, al
sete cl
push ecx
jmp 0x540de0
cmp eax, 0x330000
jg 0x540bfc
je 0x540b81
cmp eax, 0x300000
jg 0x540ac2
je 0x540a7f
cmp eax, 0x2d0000
je 0x540a5d
cmp eax, 0x2e0000
je 0x540a48
cmp eax, 0x2f0000
jne 0x540dce
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b1c0
fldz
fcomp st(1)
mov dword [esp + 0x18], 0xffffffff
fnstsw ax
test ah, 0x41
je 0x540a11
mov dword [esp + 0x18], 1
fadd qword [0x5cb9a0]
sub esp, 8
fstp qword [esp]
call fcn.0056cdd0
fldz
add esp, 8
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x540a32
fchs
fimul dword [esp + 0x18]
sub esp, 8
mov ecx, ebp
fstp qword [esp]
call fcn.0054ae00
jmp 0x540de7
fild dword [esi + 0x24]
sub esp, 8
mov ecx, ebp
fstp qword [esp]
call fcn.0054ae00
jmp 0x540de7
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b1c0
sub esp, 8
mov ecx, ebp
fstp qword [esp]
call fcn.0054ae00
jmp 0x540de7
push 2
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
mov edi, eax
test edi, edi
je 0x540749
push 0
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
push eax
mov ecx, edi
call fcn.0054a8a0
xor edx, edx
test eax, eax
setg dl
mov eax, edx
push eax
jmp 0x540de0
cmp eax, 0x310000
je 0x540b25
cmp eax, 0x320000
jne 0x540dce
cmp ebx, edi
mov ecx, esi
jne 0x540af0
mov eax, dword [esi + 0x20]
push eax
push edi
call fcn.0053fe90
mov ecx, eax
call fcn.0054ae60
push edi
mov ecx, esi
jmp 0x540af2
push 1
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
cmp eax, edi
je 0x540b0b
mov ecx, dword [eax + 8]
mov dword [esp + 0x18], ecx
jmp 0x540b0f
mov dword [esp + 0x18], edi
fild dword [esp + 0x18]
sub esp, 8
mov ecx, ebp
fstp qword [esp]
call fcn.0054ae00
jmp 0x540de7
cmp ebx, edi
mov ecx, esi
jne 0x540b5f
mov edx, dword [esi + 0x20]
push edx
push edi
call fcn.0053fe90
mov ecx, eax
call fcn.0054ae60
push edi
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
mov ecx, eax
call fcn.0054a890
push eax
mov ecx, ebp
call fcn.0054ae20
jmp 0x540de7
push 1
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
mov ecx, eax
call fcn.0054a890
push eax
mov ecx, ebp
call fcn.0054ae20
jmp 0x540de7
push 2
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b1c0
fstp qword [esp + 0x28]
cmp ebx, 2
jne 0x540ba2
fld qword [0x5ca170]
jmp 0x540bb2
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b1c0
push ebx
fstp qword [esp + 0x1c]
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
cmp eax, edi
je 0x540de7
fld qword [esp + 0x18]
sub esp, 0x10
fstp qword [esp + 8]
lea ecx, [esp + 0x40]
fld qword [esp + 0x38]
fstp qword [esp]
push ecx
mov ecx, eax
call fcn.0054ac90
lea edx, [esp + 0x30]
push edx
mov ecx, ebp
call fcn.0054aff0
jmp 0x540de7
cmp eax, 0x370000
jg 0x540db2
je 0x540d5b
cmp eax, 0x340000
je 0x540ce3
cmp eax, 0x350000
je 0x540c77
cmp eax, 0x360000
jne 0x540dce
cmp ebx, edi
fldz
fst qword [esp + 0x28]
jle 0x540c61
mov edi, dword [esp + 0x18]
mov ebx, edi
lea ebx, [ebx]
push edi
fstp st(0)
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b1c0
fadd qword [esp + 0x28]
sub edi, 1
sub ebx, 1
fst qword [esp + 0x28]
jne 0x540c40
sub esp, 8
mov ecx, ebp
fstp qword [esp]
call fcn.0054ae00
mov ebx, dword [esp + 0x18]
jmp 0x540de7
push 2
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
mov edi, eax
test edi, edi
je 0x540cd2
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
test eax, eax
je 0x540cd2
push 1
push eax
mov ecx, edi
call fcn.0054a8a0
test eax, eax
jl 0x540cd2
add eax, 0xffffffff
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
sub esp, 0x10
lea eax, [esp + 0x40]
fstp qword [esp + 8]
mov ecx, edi
fld1
fstp qword [esp]
push eax
call fcn.0054ac90
lea ecx, [esp + 0x30]
push ecx
mov ecx, ebp
call fcn.0054aff0
jmp 0x540de7
push 2
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
mov ebx, eax
test ebx, ebx
je 0x540d46
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
mov edi, eax
test edi, edi
je 0x540d46
push 1
push edi
mov ecx, ebx
call fcn.0054a8a0
test eax, eax
jle 0x540d46
mov edi, dword [edi + 8]
fld qword [0x5ca170]
sub esp, 0x10
fstp qword [esp + 8]
add edi, eax
mov dword [esp + 0x38], edi
fild dword [esp + 0x38]
lea edx, [esp + 0x40]
mov ecx, ebx
fstp qword [esp]
push edx
call fcn.0054ac90
lea eax, [esp + 0x30]
push eax
mov ecx, ebp
call fcn.0054aff0
mov ebx, dword [esp + 0x18]
jmp 0x540de7
push 3
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
cmp eax, edi
je 0x540de7
push eax
lea ecx, [esp + 0x34]
call fcn.0054ac40
push 1
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
push eax
push 2
mov ecx, esi
call fcn.0053fe90
mov ecx, eax
call fcn.0054b020
push eax
lea ecx, [esp + 0x38]
call fcn.0054aa40
lea ecx, [esp + 0x30]
push ecx
mov ecx, ebp
call fcn.0054aff0
jmp 0x540de7
cmp eax, 0x380000
je 0x540dde
cmp eax, 0x390000
jne 0x540dce
mov edx, dword [esi + 0x1c]
push 0xf
push edx
call fcn.0053b850
add esp, 8
mov eax, dword [esi + 0x1c]
push 9
push eax
call fcn.0053b850
add esp, 8
jmp 0x540de7
push 1
mov ecx, ebp
call fcn.0054add0
test ebx, ebx
jle 0x540dfe
jmp 0x540df0
mov ecx, esi
sub ebx, 1
call fcn.00540270
test ebx, ebx
jg 0x540df0
lea ecx, [esp + 0x30]
mov dword [esp + 0x7c], 0xffffffff
call fcn.0054ab00
mov ecx, dword [esp + 0x74]
pop edi
mov dword fs:[0], ecx
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret