Function at 0x405a10
Capabilities:
Check for peb ntglobalflag flag
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4850457
mov eax, dword fs:[0]
push eax
sub esp, 0xcc
push ebx
push esi
push edi
push ecx
lea edi, [ebp - 0xd8]
mov ecx, 0x33
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
pop ecx
mov eax, dword [0x486bc14]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
add ecx, 0x6c
call fcn.00427c30
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x14]
call fcn.004127f0
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x14]
add ecx, 0x28
call fcn.00406140
mov ecx, dword [ebp - 0x14]
add ecx, 0x2c
call fcn.00406140
mov ecx, dword [ebp - 0x14]
add ecx, 0x30
call fcn.004060a0
mov ecx, dword [ebp - 0x14]
add ecx, 0x5c
call fcn.004060f0
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x14]
add ecx, 0x64
call fcn.004335c0
mov ecx, dword [ebp - 0x14]
add ecx, 0x68
call fcn.00406140
mov ecx, dword [ebp - 0x14]
add ecx, 0x70
call fcn.00427c30
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x14]
add ecx, 0x74
call fcn.00427c30
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x14]
add ecx, 0x78
call fcn.00427c30
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x14]
add ecx, 0x88
call fcn.004035a0
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x14]
add ecx, 0xa4
call fcn.004035a0
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x14]
add ecx, 0xc0
call fcn.004035a0
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x14]
add ecx, 0xdc
call fcn.004035a0
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x14]
add ecx, 0xf8
call fcn.004035a0
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x14]
add ecx, 0x11c
call fcn.004035a0
mov byte [ebp - 4], 0xb
push 0
mov ecx, dword [ebp - 0x14]
add ecx, 0x14c
call fcn.00424630
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x14]
add ecx, 0x150
call fcn.00412440
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x14]
add ecx, 0x170
call fcn.00412a60
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x14]
add ecx, 0x190
call fcn.00414170
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x14]
add ecx, 0x3b4
call fcn.004035a0
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x14]
add ecx, 0x400
call fcn.004035a0
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x7c], 0
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x83], 0
mov ecx, dword [ebp - 0x14]
mov byte [ecx + 0x138], 0
mov edx, dword [ebp - 0x14]
mov byte [edx + 0x84], 0
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x194], 0
mov ecx, dword [ebp - 0x14]
mov byte [ecx + 0x195], 0
mov edx, dword [ebp - 0x14]
mov byte [edx + 0x1a0], 0
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x80], 0
mov ecx, dword [ebp - 0x14]
mov byte [ecx + 0x196], 0
mov edx, dword [ebp - 0x14]
mov byte [edx + 0x114], 0
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x115], 0
mov ecx, dword [ebp - 0x14]
mov byte [ecx + 0x116], 0
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x164], 3
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x168], 0
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x16c], 0
mov eax, dword [ebp - 0x14]
mov dword [0x486d29c], eax
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x1a8], 0
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x188], 0
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x180], 0
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x18c], 0
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x184], 0
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x1a4], 0
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x160], 0
push 0x4855bfc
mov ecx, dword [ebp - 0x14]
add ecx, 0x11c
call fcn.00403640
push 0x29c9
push 0x4855be4
push 0x3179
push 0x5ee0
push 0x6fcb
call fcn.00455570
add esp, 0x14
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3d0], eax
push 0x4855be0
call fcn.00441140
add esp, 4
mov ecx, dword [ebp - 0x14]
mov byte [ecx + 0x82], al
mov esi, esp
push 0xd5
mov eax, dword [0x486d2f0]
push eax
call dword [0x485529c]
cmp esi, esp
call fcn.00474aa2
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3d4], eax
push 0x4855bd4
push 0x3fc4
push 0x7b94
push 0x77ab
call fcn.00455570
add esp, 0x10
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x3b4
call fcn.00403640
mov eax, dword [ebp - 0x14]
mov ecx, dword [0x486d2f4]
mov dword [eax + 0x160], ecx
push 0x4855bd0
call fcn.00441140
add esp, 4
mov ecx, dword [ebp - 0x14]
mov byte [ecx + 0x81], al
push 0x6c48
push 0x74d6
push 0x4855bb8
push 0x3baa
push 0x7e74
push 0x65a7
call fcn.004554b0
add esp, 0x18
push eax
call fcn.00466680
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3e4], eax
push 0x61
push 0x44b5
push 0x4855ba4
push 0x77d6
push 0x7931
push 0x9d1
call fcn.004554b0
add esp, 0x18
push eax
call fcn.00466680
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3ec], eax
push 0x7854
push 0x4855b94
push 0x2746
push 0x7f9c
push 0x4ea4
call fcn.004554b0
add esp, 0x14
push eax
call fcn.00466680
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3f4], eax
push 0x2a93
push 0x1338
push 0x4855b7c
push 0x1b4f
push 0x5b68
push 0x5ddf
call fcn.004554b0
add esp, 0x18
push eax
call fcn.00466680
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3f8], eax
push 0x3223
push 0x4855b60
push 0x6403
push 0x15e2
push 0x127e
call fcn.004554b0
add esp, 0x14
push eax
call fcn.00466680
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3d8], eax
mov esi, esp
push 8
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x3d8]
call ecx
cmp esi, esp
call fcn.00474aa2
mov esi, eax
mov edi, esp
push 4
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x3d8]
call eax
cmp edi, esp
call fcn.00474aa2
lea ecx, [eax + esi*2]
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x198], ecx
mov esi, esp
push 7
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x3d8]
call ecx
cmp esi, esp
call fcn.00474aa2
shl eax, 1
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x19c], eax
push 0x4855b44
push 0x6b5e
push 0x71aa
push 0x38bb
call fcn.004554b0
add esp, 0x10
push eax
call fcn.00466680
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3f0], eax
push 0x4855b2c
push 0x782f
push 0x1df2
push 0x3912
call fcn.004554b0
add esp, 0x10
push eax
call fcn.00466680
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3dc], eax
push 0x4855b10
push 0x2a38
push 0x5bdd
push 0x64ff
call fcn.004554b0
add esp, 0x10
push eax
call fcn.00466680
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3e8], eax
push 0x2f9f
push 0x4855af4
push 0x67ca
push 0x5032
push 0x11fc
call fcn.004554b0
add esp, 0x14
push eax
call fcn.00466680
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3e0], eax
push 0x3a23
push 0x31a5
push 0x4855ae0
push 0x4f49
push 0x7656
push 0x7f01
call fcn.004554b0
add esp, 0x18
push eax
call fcn.00466680
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3fc], eax
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x117], 0
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x118], 0
mov eax, dword [ebp - 0x14]
mov byte [eax + 0x85], 0
push 0x4855bfc
mov ecx, dword [ebp - 0x14]
add ecx, 0x400
call fcn.00403640
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x41c], 0
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x420], 0x7d0
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0xd8
cmp ebp, esp
call fcn.00474aa2
mov esp, ebp
pop ebp
ret