Function at 0x406860
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x45b135
mov eax, dword fs:[0]
push eax
sub esp, 0x80
mov eax, dword [0x47f5dc]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x401
call fcn.00458be0
mov edi, eax
mov eax, dword [edi + 0x20]
push eax
call dword [fcn.00462680]
push eax
call fcn.0045892e
xor ebx, ebx
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], ebx
mov edx, dword [edi + 0x20]
push ecx
push edx
mov esi, eax
call dword [fcn.00462670]
mov eax, dword [esi]
mov edx, dword [eax + 0x3c]
push 7
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x50]
push 0x64
push 0x64
lea ecx, [ebp - 0x74]
push ecx
mov ecx, esi
call edx
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x58]
mov eax, dword [esi]
push ecx
push edx
mov edx, dword [eax + 0x48]
lea ecx, [ebp - 0x74]
push ecx
mov ecx, esi
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x40]
push 0xa
push ebx
lea ecx, [ebp - 0x74]
push ecx
mov ecx, esi
call edx
push ebx
lea ecx, [ebp - 0x7c]
call fcn.00458ca6
mov dword [ebp - 4], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x6c], vtable.CFont.0
push 0x464954
push 0x20
push ebx
push ebx
push 2
push ebx
push ebx
push ebx
push ebx
push 0x190
push ebx
push ebx
push ebx
push 8
mov byte [ebp - 4], 1
call dword [fcn.00462014]
push eax
lea ecx, [ebp - 0x6c]
call fcn.00458e7a
mov eax, dword [esi]
lea ecx, [ebp - 0x6c]
push ecx
mov ecx, esi
mov edx, dword [eax + 0x30]
call edx
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x84]
call fcn.00458bfe
lea eax, [ebp - 0x84]
push eax
mov ecx, esi
mov byte [ebp - 4], 2
call fcn.00458bf8
lea ecx, [ebp - 0x7c]
push ecx
mov ecx, esi
call fcn.00458ca0
mov edx, dword [esi]
mov eax, dword [edx + 0x38]
push ebx
mov ecx, esi
call eax
push 1
mov ecx, esi
call fcn.00458e80
push 0xff00
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], ebx
call fcn.00458ca6
lea ecx, [ebp - 0x8c]
push ecx
mov ecx, esi
mov byte [ebp - 4], 3
call fcn.00458ca0
mov edi, dword [int.00462024]
mov dword [ebp - 0x64], eax
mov ecx, 0x32
mov dword [ebp - 0x4c], ecx
mov eax, 0xc
mov ecx, 5
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x3c], ecx
mov eax, 0x12
mov ecx, 9
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ecx
mov eax, 0x30
mov ecx, 0x32
push 5
lea edx, [ebp - 0x50]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], ecx
mov eax, dword [esi + 4]
push edx
push eax
call edi
mov eax, 5
mov ecx, 0x32
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
mov eax, 0x34
mov ecx, 0x46
mov dword [ebp - 0x1c], ecx
mov ecx, 0x32
mov dword [ebp - 0x14], ecx
push 3
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], eax
mov edx, dword [esi + 4]
push ecx
push edx
call edi
mov eax, 0x46
mov ecx, 0x32
mov dword [ebp - 0x24], ecx
mov ecx, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], ecx
mov eax, 0x69
mov dword [ebp - 0x18], eax
mov ecx, 0x32
push 3
lea eax, [ebp - 0x28]
mov dword [ebp - 0x14], ecx
mov ecx, dword [esi + 4]
push eax
push ecx
call edi
mov edx, dword [ebp - 0x64]
push edx
mov ecx, esi
call fcn.00458ca0
push 0x22
push 2
lea eax, [ebp - 0x74]
push eax
mov ecx, esi
call fcn.00458bf2
push 0x22
push 0x19
mov ecx, esi
call fcn.00458bec
mov ecx, 0x23
mov dword [ebp - 0x24], ecx
mov eax, 0x13
mov dword [ebp - 0x28], eax
mov ecx, 0x22
mov dword [ebp - 0x1c], ecx
mov eax, 0x19
mov dword [ebp - 0x20], eax
mov ecx, 0x21
mov dword [ebp - 0x14], ecx
mov eax, 0x13
push 3
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], eax
mov edx, dword [esi + 4]
push ecx
push edx
call edi
push 0x42
push 0x40
lea eax, [ebp - 0x74]
push eax
mov ecx, esi
call fcn.00458bf2
push 0x3c
push 0x34
mov ecx, esi
call fcn.00458bec
push 0x3c
push 0x40
mov ecx, esi
call fcn.00458bec
mov eax, 0x34
mov ecx, 0x3c
mov dword [ebp - 0x28], eax
mov eax, 0x38
mov dword [ebp - 0x24], ecx
mov ecx, 0x3f
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], ecx
mov ecx, 0x3d
mov dword [ebp - 0x14], ecx
mov eax, 0x39
push 3
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], eax
mov edx, dword [esi + 4]
push ecx
push edx
call edi
push 0x36
push 0x3b
lea eax, [ebp - 0x74]
push eax
mov ecx, esi
call fcn.00458bf2
push 0x3c
push 0x46
mov ecx, esi
call fcn.00458bec
mov ecx, 0x3c
mov dword [ebp - 0x24], ecx
mov eax, 0x46
mov dword [ebp - 0x28], eax
mov ecx, 0x39
mov dword [ebp - 0x1c], ecx
mov eax, 0x42
mov dword [ebp - 0x20], eax
mov ecx, 0x3a
mov dword [ebp - 0x14], ecx
mov eax, 0x41
push 3
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], eax
mov edx, dword [esi + 4]
push ecx
push edx
call edi
push 0x464950
lea ecx, [ebp - 0x64]
call dword [fcn.00463140]
mov edi, dword [esi]
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 4
call dword [fcn.00463254]
push eax
lea ecx, [ebp - 0x64]
call dword [fcn.00462f9c]
push eax
mov eax, dword [edi + 0x64]
push 0x1a
push 0xe
mov ecx, esi
call eax
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call dword [fcn.00462fa4]
push 0x46494c
lea ecx, [ebp - 0x64]
call dword [fcn.00463140]
mov edi, dword [esi]
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 5
call dword [fcn.00463254]
push eax
lea ecx, [ebp - 0x64]
call dword [fcn.00462f9c]
mov edx, dword [edi + 0x64]
push eax
push 0x42
push 0x3e
mov ecx, esi
call edx
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call dword [fcn.00462fa4]
push 0x46494c
lea ecx, [ebp - 0x64]
call dword [fcn.00463140]
mov edi, dword [esi]
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 6
call dword [fcn.00463254]
push eax
lea ecx, [ebp - 0x64]
call dword [fcn.00462f9c]
push eax
mov eax, dword [edi + 0x64]
push 0x30
push 0x3b
mov ecx, esi
call eax
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call dword [fcn.00462fa4]
push 0x28
push 0x1c
lea ecx, [ebp - 0x74]
push ecx
mov ecx, esi
call fcn.00458bf2
push 0x35
push 0x1c
mov ecx, esi
call fcn.00458bec
mov eax, 0x1c
mov dword [ebp - 0x28], eax
mov ecx, 0x35
mov eax, 0x1b
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], eax
mov ecx, 0x30
mov eax, 0x1d
push 3
lea edx, [ebp - 0x28]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ecx
mov eax, dword [esi + 4]
push edx
push eax
call dword [int.00462024]
push 0x464948
lea ecx, [ebp - 0x64]
call dword [fcn.00463140]
mov edi, dword [esi]
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 7
call dword [fcn.00463254]
push eax
lea ecx, [ebp - 0x64]
call dword [fcn.00462f9c]
mov edx, dword [edi + 0x64]
push eax
push 0x34
push 0x1b
mov ecx, esi
call edx
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call dword [fcn.00462fa4]
mov eax, dword [esi + 4]
push 0x3c
push 0x3c
push 0x3f
push 0x3b
push 0x44
push 0x3c
push 0x34
push 0x2c
push eax
call dword [int.004620b4]
push 0x464944
lea ecx, [ebp - 0x64]
call dword [fcn.00463140]
mov byte [ebp - 4], 8
mov edi, dword [esi]
lea ecx, [ebp - 0x64]
call dword [fcn.00463254]
push eax
lea ecx, [ebp - 0x64]
call dword [fcn.00462f9c]
mov edx, dword [edi + 0x64]
push eax
push 0x3b
push 0x3f
mov ecx, esi
call edx
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call dword [fcn.00462fa4]
push 0x464934
lea ecx, [ebp - 0x64]
call dword [fcn.00463140]
mov edi, dword [esi]
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 9
call dword [fcn.00463254]
push eax
lea ecx, [ebp - 0x64]
call dword [fcn.00462f9c]
push eax
mov eax, dword [edi + 0x64]
push 0x48
push 0xf
mov ecx, esi
call eax
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call dword [fcn.00462fa4]
push 0x464920
lea ecx, [ebp - 0x64]
call dword [fcn.00463140]
mov edi, dword [esi]
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xa
call dword [fcn.00463254]
push eax
lea ecx, [ebp - 0x64]
call dword [fcn.00462f9c]
mov edx, dword [edi + 0x64]
push eax
push 0x50
push 0xf
mov ecx, esi
call edx
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 3
call dword [fcn.00462fa4]
lea ecx, [ebp - 0x6c]
call fcn.0045891c
lea ecx, [ebp - 0x7c]
call fcn.0045891c
lea ecx, [ebp - 0x8c]
call fcn.0045891c
lea ecx, [ebp - 0x84]
call fcn.0045891c
mov esi, vtable.CBrush.0
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 2
mov dword [ebp - 0x8c], esi
call fcn.00401000
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 1
mov dword [ebp - 0x84], vtable.CPen.0
call fcn.00401000
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], bl
mov dword [ebp - 0x6c], vtable.CFont.0
call fcn.00401000
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x7c], esi
call fcn.00401000
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00459a38
mov esp, ebp
pop ebp
ret