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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x48fe87
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 [0x4abc14]
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.004275f0
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x14]
call fcn.00412680
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x14]
add ecx, 0x28
call fcn.00430030
mov ecx, dword [ebp - 0x14]
add ecx, 0x2c
call fcn.00430030
mov ecx, dword [ebp - 0x14]
add ecx, 0x30
call fcn.00406070
mov ecx, dword [ebp - 0x14]
add ecx, 0x5c
call fcn.004060c0
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x14]
add ecx, 0x64
call fcn.00406110
mov ecx, dword [ebp - 0x14]
add ecx, 0x68
call fcn.00430030
mov ecx, dword [ebp - 0x14]
add ecx, 0x70
call fcn.004275f0
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x14]
add ecx, 0x74
call fcn.004275f0
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x14]
add ecx, 0x78
call fcn.004275f0
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x14]
add ecx, 0x88
call fcn.00403540
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x14]
add ecx, 0xa4
call fcn.00403540
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x14]
add ecx, 0xc0
call fcn.00403540
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x14]
add ecx, 0xdc
call fcn.00403540
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x14]
add ecx, 0xf8
call fcn.00403540
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x14]
add ecx, 0x11c
call fcn.00403540
mov byte [ebp - 4], 0xb
push 0
mov ecx, dword [ebp - 0x14]
add ecx, 0x14c
call fcn.004303c0
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x14]
add ecx, 0x150
call fcn.004122d0
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x14]
add ecx, 0x170
call fcn.0044ecc0
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x14]
add ecx, 0x190
call fcn.00431180
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x14]
add ecx, 0x3b4
call fcn.00403540
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x14]
add ecx, 0x400
call fcn.00403540
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 [0x4ad29c], 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 0x495bdc
mov ecx, dword [ebp - 0x14]
add ecx, 0x11c
call fcn.004035e0
push 0x3be
push str.leQnsMRkhPkrlfJsgg
push 0xfe
push 0x2c99
call fcn.004566b0
add esp, 0x10
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3d0], eax
push 0x495bc0
call fcn.00441090
add esp, 4
mov ecx, dword [ebp - 0x14]
mov byte [ecx + 0x82], al
mov esi, esp
push 0xd5
mov eax, dword [0x4ad2f0]
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
cmp esi, esp
call fcn.004744d2
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3d4], eax
push 0x7ea7
push 0x726e
push str.pw6ksY
push 0x6e2a
push 0x3073
call fcn.004566b0
add esp, 0x14
push eax
mov ecx, dword [ebp - 0x14]
add ecx, 0x3b4
call fcn.004035e0
mov eax, dword [ebp - 0x14]
mov ecx, dword [0x4ad2f4]
mov dword [eax + 0x160], ecx
push 0x495bb0
call fcn.00441090
add esp, 4
mov ecx, dword [ebp - 0x14]
mov byte [ecx + 0x81], al
push 0xba6
push str.pw6sN9rkOY5q9lrk94
push 0xa06
push 0x1861
call fcn.004565f0
add esp, 0x10
push eax
call fcn.004661f0
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3e4], eax
push str.pw6sN9rkOY5t9l2
push 0x3fc9
push 0x42f4
call fcn.004565f0
add esp, 0xc
push eax
call fcn.004661f0
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3ec], eax
push 0x6e0b
push str.pw6s99okfs
push 0x407c
push 0x69fa
call fcn.004565f0
add esp, 0x10
push eax
call fcn.004661f0
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3f4], eax
push str.sw6sN9rkOY5tdNmgA
push 0x5414
push 0x105e
call fcn.004565f0
add esp, 0xc
push eax
call fcn.004661f0
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3f8], eax
push 0x69fe
push 0x38e4
push str.sw6tM92gOwjqtNxhuAtlA
push 0x4a0b
push 0xa3a
call fcn.004565f0
add esp, 0x14
push eax
call fcn.004661f0
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.004744d2
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.004744d2
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.004744d2
shl eax, 1
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x19c], eax
push 0x607
push 0x3ab4
push str.sw6o9N2n_0hlFsmu0hkA
push 0x48a7
push 0x7071
call fcn.004565f0
add esp, 0x14
push eax
call fcn.004661f0
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3f0], eax
push 0x4677
push str.sw6sN9rkOY5q9lrk94
push 0x34be
push 0x35db
call fcn.004565f0
add esp, 0x10
push eax
call fcn.004661f0
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3dc], eax
push 0x398e
push str.tf06htVtoOE8gtdhvecksI
push 0x4f85
push 0xadb
call fcn.004565f0
add esp, 0x10
push eax
call fcn.004661f0
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3e8], eax
push str.tvsnidFSnecqiMFRm90hlw
push 0x925
push 0x5a49
call fcn.004565f0
add esp, 0xc
push eax
call fcn.004661f0
add esp, 4
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x3e0], eax
push str.pOY9k_tgh_ovgNNS
push 0x3efd
push 0x7533
call fcn.004565f0
add esp, 0xc
push eax
call fcn.004661f0
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 0x495bdc
mov ecx, dword [ebp - 0x14]
add ecx, 0x400
call fcn.004035e0
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.004744d2
mov esp, ebp
pop ebp
ret