Function at 0x453310
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x586b36
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x6b3854]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x10], esi
call fcn.0041d210
xor ebx, ebx
lea ecx, [esi + 0x228]
mov dword [esp + 0x1c], ebx
mov dword [esi], vtable.CMiniMapDlg.0
call fcn.00453bc0
mov dword [esi + 0x2a0], ebx
mov dword [esi + 0x2a4], ebx
mov dword [esi + 0x2a8], ebx
mov dword [esi + 0x2ac], ebx
mov dword [esi + 0x2b0], ebx
mov dword [esi + 0x2b4], ebx
mov dword [esi + method.CMemoryPoolTempl_class_CMiniMapIcon_.virtual_0], vtable.CMemoryPoolTempl_class_CMiniMapIcon_.0
mov dword [esi + 0x2c8], ebx
mov dword [esi + 0x2cc], ebx
mov byte [esi + 0x2d4], bl
push 0x453d30
push 0x450d10
push 0x11
push 0xc
lea eax, [esi + 0x454]
push eax
mov byte [esp + 0x30], 3
call fcn.0056e17c
push 0x451f20
push 0x451f10
push 2
push 0x28
lea ecx, [esi + 0x524]
push ecx
mov byte [esp + 0x30], 4
call fcn.0056e17c
lea ecx, [esi + 0x574]
mov byte [esp + 0x1c], 5
call fcn.004222f0
mov dword [esi + 0x5b4], ebx
mov dword [esi + 0x5b8], ebx
mov dword [esi + 0x5bc], ebx
mov dword [esi + 0x5c0], ebx
mov dword [esi + 0x5c4], ebx
mov dword [esi + 0x5c8], ebx
mov byte [esp + 0x1c], 7
lea eax, [esi + 0x5d8]
lea ecx, [ebx + 0xa]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
add eax, 0xc
dec ecx
jns 0x453416
push fcn.00422300
mov eax, 0x63
push fcn.004222f0
push 6
push 0x20
lea edx, [esi + 0x744]
push edx
mov dword [esi + 0x6c0], eax
mov dword [esi + 0x6c4], ebx
mov byte [esi + 0x6c8], bl
mov dword [esi + 0x6cc], eax
mov dword [esi + 0x6d0], ebx
mov byte [esi + 0x6d4], bl
mov dword [esi + 0x6d8], eax
mov dword [esi + 0x6dc], ebx
mov byte [esi + 0x6e0], bl
mov dword [esi + 0x6e4], eax
mov dword [esi + 0x6e8], ebx
mov byte [esi + 0x6ec], bl
mov dword [esi + 0x6f0], eax
mov dword [esi + 0x6f4], ebx
mov byte [esi + 0x6f8], bl
mov dword [esi + 0x6fc], eax
mov dword [esi + 0x700], ebx
mov byte [esi + 0x704], bl
mov dword [esi + 0x708], eax
mov dword [esi + 0x70c], ebx
mov byte [esi + 0x710], bl
mov dword [esi + 0x714], eax
mov dword [esi + 0x718], ebx
mov byte [esi + 0x71c], bl
mov dword [esi + 0x720], eax
mov dword [esi + 0x724], ebx
mov byte [esi + 0x728], bl
call fcn.0056e17c
push 0x40
lea ecx, [esi + 0x2a0]
mov byte [esp + 0x20], 8
mov dword [esi + 0x218], ebx
mov dword [esi + 0x21c], ebx
mov dword [esi + 0x220], ebx
call fcn.0048db10
fld dword [0x592f64]
fstp dword [esi + 0x5ac]
push 0x80
fld dword [0x59729c]
lea eax, [esi + 0x2d4]
fstp dword [esi + 0x5b0]
push 0x5971dc
fldz
push eax
fst dword [esi + 0x5a4]
fstp dword [esi + 0x5a8]
mov dword [esi + 0x548], ebx
mov dword [esi + 0x544], ebx
mov dword [esi + 0x570], ebx
mov dword [esi + 0x56c], ebx
call fcn.0056ddb0
lea edi, [esi + 0x2c8]
add esp, 0xc
mov dword [esi + 0x2d0], 0xa
cmp dword [edi], ebx
jne 0x453587
push 0x64
push edi
call fcn.00451640
mov ecx, dword [edi]
add esp, 8
mov dword [esi + 0x2cc], ecx
mov dword [esi + 0x814], ebx
mov dword [esi + 0x818], ebx
cmp dword [esi + 0x5bc], ebx
jne 0x4535fe
cmp dword [esi + 0x5b8], ebx
jne 0x4535fe
xor ecx, ecx
mov eax, 0x1f4
mov dword [esi + 0x5b8], eax
mov edx, 4
mul edx
seto cl
mov dword [esi + 0x5b4], ebx
mov dword [esi + 0x5c0], ebx
mov dword [esi + 0x5c4], ebx
mov dword [esi + 0x5c8], ebx
neg ecx
or ecx, eax
push ecx
call fcn.0056c6f8
add esp, 4
mov dword [esi + 0x5bc], eax
cmp eax, ebx
je 0x4535fe
mov ecx, dword [esi + 0x5b8]
add ecx, ecx
add ecx, ecx
push ecx
push ebx
push eax
call fcn.0056d540
add esp, 0xc
mov eax, esi
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x10
ret