Function at 0x41504d
Capabilities:
Get number of processors

Disassembly:
push ebp
lea ebp, [esp - 0x30]
sub esp, 0x30
push 0xffffffffffffffff
push 0x487d59
mov eax, dword fs:[0]
push eax
sub esp, 0x9c
mov eax, dword [0x4d0284]
xor eax, ebp
mov dword [ebp + 0x2c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 0x38]
lea ecx, [ebp - 0xa8]
mov ebx, dword [ebp + 0x3c]
mov esi, dword [ebp + 0x44]
push 1
push 2
mov dword [ebp + 4], eax
mov dword [ebp], eax
mov dword [ebp + 0x10], ebx
call fcn.0040b6ba
and dword [ebp - 4], 0
call fcn.0042e6b8
push eax
lea eax, [ebp + 8]
push eax
mov eax, dword [ebp - 0xa8]
lea ecx, [ebp - 0xa8]
mov eax, dword [eax + 4]
add ecx, eax
call fcn.00415410
lea ecx, [ebp + 8]
call fcn.004064cc
mov edi, dword [ebp + 0x40]
lea eax, [ebp - 0xa8]
push edi
push ebx
push eax
mov byte [ebp - 4], 1
call fcn.004154ae
push esi
push edi
lea eax, [ebp - 0xa8]
push ebx
push eax
call fcn.0041564c
add esp, 0x1c
lea eax, [ebp - 0xa8]
push esi
push edi
push ebx
push eax
call fcn.004155c1
add esp, 0x10
push edi
push ebx
call fcn.00415593
mov bh, al
mov eax, dword [ebp + 0x10]
pop ecx
pop ecx
mov edx, dword [eax]
cmp edx, dword [edi]
je 0x41539d
lea ecx, [edx + 1]
mov dword [eax], ecx
lea eax, [ebp - 0xa8]
mov bl, byte [edx]
mov byte [ebp + 0x10], bl
push dword [ebp + 0x10]
push eax
call fcn.004156c7
movsx eax, bl
pop ecx
pop ecx
cmp eax, 0x69
jg 0x4152d5
je 0x415255
cmp eax, 0x45
je 0x41517e
cmp eax, 0x58
je 0x41531f
cmp eax, 0x62
je 0x4151de
cmp eax, 0x63
je 0x4151be
cmp eax, 0x64
je 0x415255
jle 0x4152f0
cmp eax, 0x66
jg 0x4152f0
mov eax, dword [esi]
push eax
lea ecx, [eax + 4]
mov dword [esi], ecx
cmp bh, 0x4c
je 0x415230
cmp bh, 0x68
je 0x41520c
cmp bh, 0x6c
je 0x4151fd
call fcn.00414222
pop ecx
push ecx
push ecx
fstp qword [ebp + 8]
movsd xmm0, qword [ebp + 8]
lea ecx, [ebp - 0xa8]
movsd qword [esp], xmm0
call fcn.0041499b
jmp 0x41539d
mov ecx, dword [esi]
push ecx
lea eax, [ecx + 4]
mov dword [esi], eax
call fcn.00413fc5
pop ecx
push eax
lea eax, [ebp - 0xa8]
push eax
call fcn.00413466
jmp 0x41539b
mov ecx, dword [esi]
push ecx
lea eax, [ecx + 4]
mov dword [esi], eax
call fcn.004143a4
pop ecx
push eax
lea ecx, [ebp - 0xa8]
call fcn.00414d9f
jmp 0x41539d
call fcn.00414265
fstp qword [ebp + 8]
movsd xmm0, qword [ebp + 8]
jmp 0x41523d
call fcn.004141df
pop ecx
fstp dword [ebp + 0x10]
movss xmm0, dword [ebp + 0x10]
push ecx
lea ecx, [ebp - 0xa8]
movss dword [esp], xmm0
call fcn.00414894
jmp 0x41539d
call fcn.00414265
fstp qword [ebp + 8]
movsd xmm0, qword [ebp + 8]
pop ecx
push ecx
push ecx
lea ecx, [ebp - 0xa8]
movsd qword [esp], xmm0
call fcn.00414a9f
jmp 0x41539d
mov eax, dword [esi]
push eax
lea ecx, [eax + 4]
mov dword [esi], ecx
cmp bh, 0x3f
je 0x41538f
cmp bh, 0x4c
je 0x4152bd
cmp bh, 0x68
je 0x4152a3
cmp bh, 0x6c
je 0x41528c
call fcn.004140d3
pop ecx
push eax
lea ecx, [ebp - 0xa8]
call fcn.0040b8c2
jmp 0x41539d
call fcn.00414159
pop ecx
push eax
lea ecx, [ebp - 0xa8]
call fcn.00414799
jmp 0x41539d
call fcn.0041404b
pop ecx
movzx eax, ax
lea ecx, [ebp - 0xa8]
push eax
call fcn.00414486
jmp 0x41539d
call fcn.00414314
pop ecx
push edx
push eax
lea ecx, [ebp - 0xa8]
call fcn.00414ba3
jmp 0x41539d
sub eax, 0x6f
je 0x41531f
sub eax, 4
je 0x415302
dec eax
sub eax, 1
je 0x41531f
sub eax, 3
je 0x41531f
dec eax
sub eax, 1
je 0x4152f8
push dword [ebp + 0x10]
jmp 0x4151cd
mov ecx, dword [esi]
push ecx
lea eax, [ecx + 4]
mov dword [esi], eax
jmp 0x41533b
mov ecx, dword [esi]
push ecx
lea eax, [ecx + 4]
mov dword [esi], eax
call fcn.004143b1
pop ecx
push eax
lea eax, [ebp - 0xa8]
push eax
call fcn.00404083
jmp 0x41539b
mov eax, dword [esi]
push eax
lea ecx, [eax + 4]
mov dword [esi], ecx
cmp bh, 0x3f
je 0x41538f
cmp bh, 0x4c
je 0x41537a
cmp bh, 0x68
je 0x415363
cmp bh, 0x6c
je 0x41534f
call fcn.00414116
pop ecx
push eax
lea ecx, [ebp - 0xa8]
call fcn.0041469e
jmp 0x41539d
call fcn.0041419c
pop ecx
push eax
lea ecx, [ebp - 0xa8]
call fcn.0041469e
jmp 0x41539d
call fcn.0041408f
pop ecx
movzx eax, ax
lea ecx, [ebp - 0xa8]
push eax
call fcn.004145a1
jmp 0x41539d
call fcn.0041435c
pop ecx
push edx
push eax
lea ecx, [ebp - 0xa8]
call fcn.00414ca1
jmp 0x41539d
lea eax, [ebp - 0xa8]
push eax
call fcn.0041580e
pop ecx
pop ecx
mov esi, dword [ebp + 4]
jmp 0x4153be
and dword [ebp - 4], 0
lea eax, [ebp + 0x14]
push eax
lea ecx, [ebp - 0xa4]
call fcn.0040d3f4
lea eax, [ebp + 0x14]
mov byte [ebp - 4], 3
push eax
mov ecx, esi
call fcn.00407928
lea ecx, [ebp + 0x14]
call fcn.004078b0
lea ecx, [ebp - 0xa8]
call fcn.0040ba67
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x2c]
xor ecx, ebp
call fcn.00430d3e
add ebp, 0x30
leave
ret