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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x1b
push 0
push 0
dec ecx
jne 0x439359
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
test dl, dl
je 0x439372
add esp, 0xfffffff0
call fcn.00403da8
mov dword [ebp - 8], ecx
mov byte [ebp - 1], dl
mov ebx, eax
lea eax, [ebp - 8]
call fcn.00405190
xor eax, eax
push ebp
push 0xdd5f9e
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, ebx
call fcn.00403b30
lea eax, [ebx + 4]
mov edx, dword [ebp - 8]
call fcn.00404d0c
lea edx, [ebp - 0xc]
mov eax, dword [ebp - 8]
call fcn.0041a1a0
mov edx, dword [ebp - 0xc]
lea eax, [ebx + 8]
call fcn.00404d0c
lea ecx, [ebp - 0x10]
mov eax, dword [ebx + 8]
xor edx, edx
call fcn.0041a030
mov edx, dword [ebp - 0x10]
lea eax, [ebx + 0xc]
call fcn.00404d0c
lea edx, [ebp - 0x14]
mov eax, dword [ebx + 4]
call fcn.0041a0c4
mov edx, dword [ebp - 0x14]
lea eax, [ebx + 0x20]
call fcn.00404d0c
mov eax, dword [ebx + 0x20]
xor edx, edx
call fcn.0040502c
je 0x439420
lea edx, [ebp - 0x20]
mov eax, dword [ebx + 0x20]
call fcn.00419f28
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x1c]
call fcn.0042fd38
mov eax, dword [ebp - 0x1c]
lea edx, [ebp - 0x18]
call fcn.00419f28
mov edx, dword [ebp - 0x18]
lea eax, [ebx + 0x20]
call fcn.00404d0c
mov edi, 0xfffe
mov eax, edi
call fcn.00403268
mov esi, eax
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov edx, edi
mov eax, esi
call fcn.00415944
lea eax, [ebp - 0x2c]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0x2c]
lea edx, [ebp - 0x28]
call fcn.0042fd38
mov eax, dword [ebp - 0x28]
lea edx, [ebp - 0x24]
call fcn.00419f28
mov edx, dword [ebp - 0x24]
lea eax, [ebx + 0x18]
call fcn.00404d0c
lea edx, [ebp - 0x34]
mov eax, dword [ebx + 0x18]
call fcn.0041a0fc
mov eax, dword [ebp - 0x34]
lea edx, [ebp - 0x30]
call fcn.00419f28
mov edx, dword [ebp - 0x30]
lea eax, [ebx + 0x1c]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov edx, esi
mov eax, edi
call fcn.00415750
lea eax, [ebp - 0x40]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0x40]
lea edx, [ebp - 0x3c]
call fcn.0042fd38
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0x38]
call fcn.00419f28
mov edx, dword [ebp - 0x38]
lea eax, [ebx + 0x24]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov edx, edi
mov eax, esi
call fcn.004158ac
lea eax, [ebp - 0x4c]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0x4c]
lea edx, [ebp - 0x48]
call fcn.0042fd38
mov eax, dword [ebp - 0x48]
lea edx, [ebp - 0x44]
call fcn.00419f28
mov edx, dword [ebp - 0x44]
lea eax, [ebx + 0x14]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x439529
push esi
push 0
push 0
push 5
push 0
call fcn.0041a820
jmp 0x439537
push esi
push 0
push 0
push 5
push 0
call fcn.0041a818
test eax, eax
jne 0x439568
lea eax, [ebp - 0x58]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0x58]
lea edx, [ebp - 0x54]
call fcn.0042fd38
mov eax, dword [ebp - 0x54]
lea edx, [ebp - 0x50]
call fcn.00419f28
mov edx, dword [ebp - 0x50]
lea eax, [ebx + 0x10]
call fcn.00404d0c
jmp 0x439573
lea eax, [ebx + 0x10]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x439596
push esi
push 0
push 0
push 0x2e
push 0
call fcn.0041a820
jmp 0x4395a4
push esi
push 0
push 0
push 0x2e
push 0
call fcn.0041a818
test eax, eax
jne 0x4395d5
lea eax, [ebp - 0x64]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0x64]
lea edx, [ebp - 0x60]
call fcn.0042fd38
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.00419f28
mov edx, dword [ebp - 0x5c]
lea eax, [ebx + 0x28]
call fcn.00404d0c
jmp 0x4395e0
lea eax, [ebx + 0x28]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x439603
push esi
push 0
push 0
push 0x26
push 0
call fcn.0041a820
jmp 0x439611
push esi
push 0
push 0
push 0x26
push 0
call fcn.0041a818
test eax, eax
jne 0x439642
lea eax, [ebp - 0x70]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0x70]
lea edx, [ebp - 0x6c]
call fcn.0042fd38
mov eax, dword [ebp - 0x6c]
lea edx, [ebp - 0x68]
call fcn.00419f28
mov edx, dword [ebp - 0x68]
lea eax, [ebx + 0x2c]
call fcn.00404d0c
jmp 0x43964d
lea eax, [ebx + 0x2c]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x439670
push esi
push 0
push 0
push 0x23
push 0
call fcn.0041a820
jmp 0x43967e
push esi
push 0
push 0
push 0x23
push 0
call fcn.0041a818
test eax, eax
jne 0x4396af
lea eax, [ebp - 0x7c]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0x7c]
lea edx, [ebp - 0x78]
call fcn.0042fd38
mov eax, dword [ebp - 0x78]
lea edx, [ebp - 0x74]
call fcn.00419f28
mov edx, dword [ebp - 0x74]
lea eax, [ebx + 0x30]
call fcn.00404d0c
jmp 0x4396ba
lea eax, [ebx + 0x30]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x4396dd
push esi
push 0
push 0
push 0x2b
push 0
call fcn.0041a820
jmp 0x4396eb
push esi
push 0
push 0
push 0x2b
push 0
call fcn.0041a818
test eax, eax
jne 0x439728
lea eax, [ebp - 0x88]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0x88]
lea edx, [ebp - 0x84]
call fcn.0042fd38
mov eax, dword [ebp - 0x84]
lea edx, [ebp - 0x80]
call fcn.00419f28
mov edx, dword [ebp - 0x80]
lea eax, [ebx + 0x34]
call fcn.00404d0c
jmp 0x439733
lea eax, [ebx + 0x34]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x439756
push esi
push 0
push 0
push 0x27
push 0
call fcn.0041a820
jmp 0x439764
push esi
push 0
push 0
push 0x27
push 0
call fcn.0041a818
test eax, eax
jne 0x4397a7
lea eax, [ebp - 0x94]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0x94]
lea edx, [ebp - 0x90]
call fcn.0042fd38
mov eax, dword [ebp - 0x90]
lea edx, [ebp - 0x8c]
call fcn.00419f28
mov edx, dword [ebp - 0x8c]
lea eax, [ebx + 0x38]
call fcn.00404d0c
jmp 0x4397b2
lea eax, [ebx + 0x38]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x4397d5
push esi
push 0
push 0
push 0x22
push 0
call fcn.0041a820
jmp 0x4397e3
push esi
push 0
push 0
push 0x22
push 0
call fcn.0041a818
test eax, eax
jne 0x439826
lea eax, [ebp - 0xa0]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0xa0]
lea edx, [ebp - 0x9c]
call fcn.0042fd38
mov eax, dword [ebp - 0x9c]
lea edx, [ebp - 0x98]
call fcn.00419f28
mov edx, dword [ebp - 0x98]
lea eax, [ebx + 0x3c]
call fcn.00404d0c
jmp 0x439831
lea eax, [ebx + 0x3c]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x439854
push esi
push 0
push 0
push 0x21
push 0
call fcn.0041a820
jmp 0x439862
push esi
push 0
push 0
push 0x21
push 0
call fcn.0041a818
test eax, eax
jne 0x4398a5
lea eax, [ebp - 0xac]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0xac]
lea edx, [ebp - 0xa8]
call fcn.0042fd38
mov eax, dword [ebp - 0xa8]
lea edx, [ebp - 0xa4]
call fcn.00419f28
mov edx, dword [ebp - 0xa4]
lea eax, [ebx + 0x40]
call fcn.00404d0c
jmp 0x4398b0
lea eax, [ebx + 0x40]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x4398d3
push esi
push 0
push 0
push 0x20
push 0
call fcn.0041a820
jmp 0x4398e1
push esi
push 0
push 0
push 0x20
push 0
call fcn.0041a818
test eax, eax
jne 0x439924
lea eax, [ebp - 0xb8]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0xb8]
lea edx, [ebp - 0xb4]
call fcn.0042fd38
mov eax, dword [ebp - 0xb4]
lea edx, [ebp - 0xb0]
call fcn.00419f28
mov edx, dword [ebp - 0xb0]
lea eax, [ebx + 0x44]
call fcn.00404d0c
jmp 0x43992f
lea eax, [ebx + 0x44]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x439952
push esi
push 0
push 0
push 0x1a
push 0
call fcn.0041a820
jmp 0x439960
push esi
push 0
push 0
push 0x1a
push 0
call fcn.0041a818
test eax, eax
jne 0x4399a3
lea eax, [ebp - 0xc4]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0xc4]
lea edx, [ebp - 0xc0]
call fcn.0042fd38
mov eax, dword [ebp - 0xc0]
lea edx, [ebp - 0xbc]
call fcn.00419f28
mov edx, dword [ebp - 0xbc]
lea eax, [ebx + 0x48]
call fcn.00404d0c
jmp 0x4399ae
lea eax, [ebx + 0x48]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x4399d1
push esi
push 0
push 0
push 0x1c
push 0
call fcn.0041a820
jmp 0x4399df
push esi
push 0
push 0
push 0x1c
push 0
call fcn.0041a818
test eax, eax
jne 0x439a22
lea eax, [ebp - 0xd0]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0xd0]
lea edx, [ebp - 0xcc]
call fcn.0042fd38
mov eax, dword [ebp - 0xcc]
lea edx, [ebp - 0xc8]
call fcn.00419f28
mov edx, dword [ebp - 0xc8]
lea eax, [ebx + 0x4c]
call fcn.00404d0c
jmp 0x439a2d
lea eax, [ebx + 0x4c]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov edx, edi
mov eax, esi
call fcn.00406ed0
mov eax, dword [0xdda4c8]
cmp byte [eax], 0
je 0x439a50
push esi
push 0
push 0
push 0x28
push 0
call fcn.0041a820
jmp 0x439a5e
push esi
push 0
push 0
push 0x28
push 0
call fcn.0041a818
test eax, eax
jne 0x439aa1
lea eax, [ebp - 0xdc]
mov edx, esi
call fcn.00404e18
mov eax, dword [ebp - 0xdc]
lea edx, [ebp - 0xd8]
call fcn.0042fd38
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0xd4]
call fcn.00419f28
mov edx, dword [ebp - 0xd4]
lea eax, [ebx + 0x50]
call fcn.00404d0c
jmp 0x439aac
lea eax, [ebx + 0x50]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
mov eax, esi
call fcn.00403288
lea eax, [ebx + 0x54]
mov edx, dword [ebx + 0x20]
call fcn.00404d0c
lea eax, [ebx + 0x58]
mov edx, dword [ebx + 0x18]
call fcn.00404d0c
lea eax, [ebx + 0x5c]
mov edx, dword [ebx + 0x14]
call fcn.00404d0c
lea eax, [ebx + 0x60]
mov edx, dword [ebx + 0x10]
call fcn.00404d0c
lea eax, [ebx + 0x64]
mov edx, dword [ebx + 0x2c]
call fcn.00404d0c
lea eax, [ebx + 0x68]
mov edx, dword [ebx + 0x34]
call fcn.00404d0c
lea eax, [ebx + 0x6c]
mov edx, dword [ebx + 0x28]
call fcn.00404d0c
lea eax, [ebx + 0x70]
mov edx, dword [ebx + 0x38]
call fcn.00404d0c
lea eax, [ebx + 0x74]
mov edx, dword [ebx + 0x3c]
call fcn.00404d0c
lea eax, [ebx + 0x78]
mov edx, dword [ebx + 0x40]
call fcn.00404d0c
lea eax, [ebx + 0x7c]
mov edx, dword [ebx + 0x44]
call fcn.00404d0c
lea eax, [ebx + 0x80]
mov edx, dword [ebx + 0x48]
call fcn.00404d0c
lea eax, [ebx + 0x84]
mov edx, dword [ebx + 0x24]
call fcn.00404d0c
lea eax, [ebx + 0x88]
mov edx, dword [ebx + 0x30]
call fcn.00404d0c
lea eax, [ebx + 0x8c]
mov edx, dword [ebx + 0x4c]
call fcn.00404d0c
lea eax, [ebx + 0x90]
mov edx, dword [ebx + 0x1c]
call fcn.00404d0c
lea eax, [ebx + 0x94]
mov edx, dword [ebx + 0x50]
call fcn.00404d0c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0xdd5fa5
lea eax, [ebp - 0xdc]
mov edx, 0x36
call fcn.00404ce8
ret