Function at 0x4ab6c0
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x527dba
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x64
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov ebp, 1
push esi
lea ecx, [esp + 0x64]
mov dword [esi + 0x19c], ebp
call fcn.00505af6
xor ebx, ebx
mov ecx, esi
mov dword [esp + 0x7c], ebx
call fcn.0044ea60
mov edx, dword [eax]
push ebx
push esi
mov ecx, eax
call dword [edx + 0xd0]
push eax
lea eax, [esp + 0x64]
push eax
lea ecx, [esp + 0x48]
call fcn.004675a0
push ebx
lea ecx, [esp + 0x54]
push ecx
push ebx
push 0x30
mov byte [esp + 0x8c], 1
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
mov edx, dword [esi]
lea eax, [esp + 0x30]
push eax
mov ecx, esi
call dword [edx + 0x19c]
cmp dword [esi + 0x1ac], ebx
mov dword [esp + 0x24], ebx
je 0x4ab794
mov ecx, esi
call fcn.0044ea60
push ebx
push ebx
sub esp, 0x10
mov edi, eax
mov dword [esp + 0x28], esp
mov eax, esp
push ebx
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov edx, dword [edi]
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x44]
push ecx
mov ecx, edi
call dword [edx + 0xac]
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [esp + 0x34]
add ecx, eax
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x34], ecx
cmp dword [esi + 0xec], ebp
jne 0x4ab818
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c4]
push ebx
lea ecx, [esp + 0x34]
push ecx
push 0x142
mov ecx, esi
call fcn.0044ec70
mov ecx, dword [esi + 0xf0]
push eax
lea edx, [esp + 0x70]
push edx
lea eax, [esp + 0x24]
push eax
call fcn.004a43c0
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x24]
sub eax, ecx
push edx
mov ecx, edx
push eax
sub ecx, ebp
push ecx
mov ecx, dword [esp + 0x3c]
push ecx
lea edx, [esi + 0x1b0]
push edx
call dword [sym.imp.USER32.dll_SetRect]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esi + 0x19c], ebx
mov esi, dword [esp + 0x84]
mov dword [esi], eax
mov dword [esi + 4], ecx
jmp 0x4aba0d
cmp dword [esp + 0x88], ebx
jne 0x4ab86c
mov ecx, esi
xor edi, edi
call fcn.0044f6a0
test eax, eax
jle 0x4ab85b
mov edi, edi
push edi
mov ecx, esi
call fcn.0044f6b0
cmp eax, ebx
je 0x4ab84f
cmp dword [eax + 0xf8], esi
jne 0x4ab84f
mov edx, dword [eax]
push ebx
mov ecx, eax
call dword [edx + 0x9c]
mov ecx, esi
inc edi
call fcn.0044f6a0
cmp edi, eax
jl 0x4ab830
mov ecx, esi
call fcn.004aac10
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c4]
mov ecx, dword [esi + 0xf0]
push 0x23be
call fcn.004a3c70
mov edi, eax
mov eax, dword [esi + 0x1a0]
xor ebp, ebp
cmp eax, ebx
je 0x4ab940
mov ecx, esi
call fcn.0044ea60
mov edx, dword [eax]
push ebx
push ebx
push esi
push ebx
push 1
lea ecx, [esp + 0x74]
push ecx
lea ecx, [esp + 0x40]
push ecx
mov ecx, eax
call dword [edx + 0xa4]
mov ebp, dword [eax + 4]
mov ecx, dword [esp + 0x3c]
mov edx, dword [eax]
add ecx, ebp
cmp edi, ebx
mov dword [esp + 0x10], edx
mov dword [esp + 0x3c], ecx
jne 0x4ab932
push 0x164
call fcn.00501003
mov edi, eax
add esp, 4
mov dword [esp + 0x10], edi
cmp edi, ebx
mov byte [esp + 0x7c], 2
je 0x4ab90c
mov ecx, edi
call fcn.004b0dc0
mov dword [edi], 0x555750
mov dword [edi + 0x1c], 0x5556f0
mov dword [edi + 0xf4], 1
mov dword [edi + 0xd0], 0x5a
jmp 0x4ab90e
xor edi, edi
mov ecx, dword [esi + 0xf0]
push 1
push 0xffffffffffffffff
push 0x532850
push 0x23be
push edi
mov byte [esp + 0x90], 1
call fcn.004a4e80
mov edi, eax
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax + 0x8c]
jmp 0x4ab950
cmp edi, ebx
je 0x4ab950
mov edx, dword [edi]
push 1
mov ecx, edi
call dword [edx + 0x8c]
mov ecx, dword [esp + 0x88]
lea eax, [esp + 0x30]
push eax
push ecx
mov ecx, dword [esi + 0xf0]
lea edx, [esp + 0x68]
push edx
lea eax, [esp + 0x24]
push eax
call fcn.004a35d0
cmp dword [esi + 0x1a0], ebx
je 0x4ab9c8
mov edx, dword [edi]
push ebx
mov ecx, edi
call dword [edx + 0x8c]
mov ebx, dword [esp + 0x3c]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x38]
sub eax, ebx
mov ebx, dword [edi]
lea ecx, [eax + ebp]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x18]
sub ecx, edx
mov edx, dword [esp + 0x30]
sub esp, 0x10
mov ebp, esp
mov dword [ebp], edx
mov edx, dword [esp + 0x98]
mov dword [ebp + 4], eax
mov dword [ebp + 8], ecx
mov ecx, edi
mov dword [ebp + 0xc], edx
call dword [ebx + 0x74]
xor ebx, ebx
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x38]
mov edi, dword [esp + 0x24]
push edx
sub eax, ebp
push eax
mov eax, dword [esp + 0x38]
mov ecx, edx
sub ecx, edi
push ecx
push eax
lea ecx, [esi + 0x1b0]
push ecx
call dword [sym.imp.USER32.dll_SetRect]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esi + 0x19c], ebx
mov esi, dword [esp + 0x84]
mov dword [esi], edx
mov dword [esi + 4], eax
lea ecx, [esp + 0x40]
mov byte [esp + 0x7c], bl
call fcn.004675f0
lea ecx, [esp + 0x60]
mov dword [esp + 0x7c], 0xffffffff
call fcn.00505b51
mov ecx, dword [esp + 0x74]
pop edi
mov eax, esi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x70
ret 0xc