Function at 0x4d6660
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x74400a
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push esi
push edi
mov eax, dword [0x8312b0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x14], ecx
push 0x5c4
mov dword [ebp - 4], 1
call fcn.006f4f3d
mov ebx, eax
add esp, 4
mov dword [ebp - 0x10], ebx
lea eax, [ebp + 8]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x38]
call fcn.004609e0
sub esp, 0x18
mov byte [ebp - 4], 3
lea eax, [ebp - 0x38]
mov ecx, esp
push eax
call fcn.004609e0
mov ecx, ebx
call fcn.004ed740
lea ecx, [ebp - 0x38]
mov dword [ebx], vtable.DiscountCefCommonWnd.5.0
mov dword [ebx + 0x10], vtable.DiscountCefCommonWnd.4.0
mov dword [ebx + 0x24], vtable.DiscountCefCommonWnd.3.0
mov dword [ebx + 0x28], vtable.DiscountCefCommonWnd.2.0
mov dword [ebx + 0x2c], vtable.DiscountCefCommonWnd.1.0
mov dword [ebx + 0x30], vtable.DiscountCefCommonWnd.0
call fcn.0044bf40
mov byte [ebp - 4], 1
lea ecx, [ebx + 0x550]
mov esi, dword [ebp + 0x20]
lea eax, [ebp + 0x28]
mov edi, dword [ebp + 0x24]
mov dword [ebx + 0x548], esi
mov dword [ebx + 0x54c], edi
cmp ecx, eax
je 0x4d6732
cmp dword [ebp + 0x3c], 8
push dword [ebp + 0x38]
cmovae eax, dword [ebp + 0x28]
push eax
call fcn.0044bdc0
cmp dword [ebp + 0x3c], 8
lea ecx, [ebp + 0x28]
push 0
cmovae ecx, dword [ebp + 0x28]
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysReAllocString
push 0x80
push 0x90000000
sub esp, 8
lea eax, [ecx + 2]
mov edx, esp
mov dword [ebp - 0x10], eax
mov dword [edx], ecx
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4d6770
sub ecx, dword [ebp - 0x10]
push dword [ebp - 0x14]
sar ecx, 1
mov dword [edx + 4], ecx
mov ecx, ebx
call dword [sym.imp.DuiLib.dll_public:_struct_HWND______thiscall_DuiLib::CWindowWnd::Create_struct_HWND_____class_std::basic_string_view_wchar_t__struct_std::char_traits_wchar_t____unsigned_long_int__unsigned_long_int__int__int__int__int__struct_HMENU____]
lea ecx, [ebp - 0x18]
call fcn.004a81d0
mov byte [ebp - 4], 4
mov ecx, dword [eax]
mov eax, dword [sym.imp.KERNEL32.dll_MulDiv]
mov edx, dword [ecx + 0x14]
test edx, edx
je 0x4d67bc
push 0x64
cmp edx, 1
jne 0x4d67b4
push dword [ecx + 0x10]
jmp 0x4d67b7
push dword [ecx + 0xc]
push edi
call eax
mov edi, eax
lea ecx, [ebp - 0x20]
call fcn.004a81d0
mov byte [ebp - 4], 5
mov eax, dword [eax]
mov ecx, dword [eax + 0x14]
test ecx, ecx
je 0x4d67ea
push 0x64
cmp ecx, 1
jne 0x4d67dd
push dword [eax + 0x10]
jmp 0x4d67e0
push dword [eax + 0xc]
mov eax, dword [sym.imp.KERNEL32.dll_MulDiv]
push esi
call eax
mov esi, eax
push edi
push esi
mov ecx, ebx
call dword [sym.imp.DuiLib.dll_public:_void___thiscall_DuiLib::CWindowWnd::ResizeClient_int__int_]
mov byte [ebp - 4], 6
or edi, 0xffffffff
mov esi, dword [ebp - 0x1c]
test esi, esi
je 0x4d6821
mov eax, edi
lock xadd dword [esi + 4], eax
jne 0x4d6821
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
mov eax, edi
lock xadd dword [esi + 8], eax
jne 0x4d6821
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov byte [ebp - 4], 7
mov esi, dword [ebp - 0x14]
test esi, esi
je 0x4d684a
mov eax, edi
lock xadd dword [esi + 4], eax
jne 0x4d684a
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
lock xadd dword [esi + 8], edi
dec edi
jne 0x4d684a
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov ecx, ebx
mov byte [ebp - 4], 1
call dword [sym.imp.DuiLib.dll_public:_void___thiscall_DuiLib::CWindowWnd::CenterWindow_void_]
mov ecx, ebx
call dword [sym.imp.DuiLib.dll_public:_unsigned_int___thiscall_DuiLib::CWindowWnd::ShowModal_void_]
lea ecx, [ebp + 8]
mov esi, eax
call fcn.0044bf40
lea ecx, [ebp + 0x28]
call fcn.0044bf40
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret