Function at 0x5b1ff0
Capabilities:
Access peb ldr_data
Get number of processors

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffe8
push ebx
push esi
push edi
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x5b2a15
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
add eax, 0xdb0
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x3ac], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x3a8], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 4], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 8], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x10], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x2f], 1
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x4c], 1
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x35], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x40], edx
mov eax, dword [ebp - 0xc]
add eax, 0x5c
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
add eax, 0x64
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x69], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x44], 0x7fffffff
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x48], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x50], edx
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x54], 0xffffffff
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x68], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x6a], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x104], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x3d4], edx
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x3e4], 0xffffffff
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x3dc], 0xffffffff
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x3e0], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x3d8], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 6], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x94], 0
mov eax, dword [ebp - 4]
fild dword [eax + 0x764]
fld dword [0x5b2a4c]
call fcn.004032b4
add esp, 0xfffffff8
fstp qword [esp]
wait
call fcn.004d2958
mov edx, dword [ebp - 0xc]
mov dword [edx + 0x2c8], eax
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1fb], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x2cc], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x24b], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x30], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x2a8], 0xffffffff
mov dword [eax + 0x2ac], 0xffffffff
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x2d8], 0xffffffff
mov dword [eax + 0x2dc], 0xffffffff
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x3ea], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x3eb], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x2c], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x2d], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x2e], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x106], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x218], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x228], edx
mov dword [eax + 0x22c], 0x3ff00000
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x230], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x231], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x120], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1f8], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1d0], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1e9], 1
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1e8], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1d8], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x1d4], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x78], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8f4]
call fcn.004dd618
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x208], 0
mov dword [eax + 0x20c], 0
mov eax, dword [ebp - 0xc]
add eax, 0xd0
mov edx, 0x34
call fcn.00408028
lea ecx, [ebp - 0x18]
xor edx, edx
xor eax, eax
call fcn.0041dea8
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0x18]
mov dword [eax + 0x107], edx
mov edx, dword [ebp - 0x14]
mov dword [eax + 0x10b], edx
lea ecx, [ebp - 0x18]
xor edx, edx
xor eax, eax
call fcn.0041dea8
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0x18]
mov dword [eax + 0x10f], edx
mov edx, dword [ebp - 0x14]
mov dword [eax + 0x113], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x117], 2
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x200], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x79], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x80], 0
mov dword [eax + 0x84], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1d2], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x808]
call fcn.004e0074
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x280], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x264], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x60], edx
cmp byte [ebp - 5], 0
je 0x5b235c
mov eax, dword [ebp - 0xc]
add eax, 0x20
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
add eax, 0x3a4
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x240], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x268], edx
jmp 0x5b23d8
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0x20], 0
je 0x5b237b
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x20]
call fcn.0040a0f8
mov eax, dword [ebp - 0xc]
add eax, 0x20
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0x3a4], 0
je 0x5b23a2
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x3a4]
call fcn.0040a0f8
mov eax, dword [ebp - 0xc]
add eax, 0x3a4
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
add eax, 0x240
call fcn.004d2010
mov eax, dword [ebp - 4]
add eax, 0x61c
push eax
call fcn.004072bc
mov eax, dword [ebp - 0xc]
add eax, 0x268
call fcn.004d2010
mov eax, dword [ebp - 4]
add eax, 0x61c
push eax
call fcn.0040749c
mov eax, dword [ebp - 0xc]
add eax, 0x8c
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
add eax, 0x90
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x88], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1d3], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x24], 0x140
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x28], 0xf0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x31], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x32], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x105], 0
mov eax, dword [ebp - 0xc]
add eax, 0x3b8
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
add eax, 0x3b0
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x3b4], edx
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x220], 0xffffffff
mov dword [eax + 0x224], 0xffffffff
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x33], 1
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1f9], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0xa4], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x3ed], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x210], 0
mov dword [eax + 0x214], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x278], 0xffffffff
mov dword [eax + 0x27c], 0xffffffff
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x204], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1d1], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x205], 1
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x2e0], 0xffffffff
mov dword [eax + 0x2e4], 0xffffffff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x82c]
xor edx, edx
call fcn.00570940
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x123c]
xor edx, edx
call fcn.00570940
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x248], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x3e8], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x2f0], 0xffffffff
mov dword [eax + 0x2f4], 0xffffffff
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x2f8], 0xffffffff
mov dword [eax + 0x2fc], 0xffffffff
mov eax, dword [ebp - 0xc]
mov dword [eax + 0xb8], 0
mov dword [eax + 0xbc], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0xc0], 0
mov dword [eax + 0xc4], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0xc8], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0xc9], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0xca], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0xcc], edx
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x318], 0
mov dword [eax + 0x31c], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x67c]
cdq
mov ecx, dword [ebp - 0xc]
mov dword [ecx + 0x320], eax
mov dword [ecx + 0x324], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x250], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x3ec], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x14], edx
mov eax, dword [ebp - 0xc]
add eax, 0x6c
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x348], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 5], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x34], 1
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x18], 0x51763
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1c], 0
push dword [0x71dd68]
push dword [0x71dd64]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa98]
cdq
call fcn.00405b9c
mov ecx, dword [ebp - 0xc]
mov dword [ecx + 0x410], eax
mov dword [ecx + 0x414], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x369], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x98], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x258], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x281], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x282], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x284], edx
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x2d0], 0
mov dword [eax + 0x2d4], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x2c0], 0
mov dword [eax + 0x2c4], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x288], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x300], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x2b9], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x298], 0
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x29c], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x2a0], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1fa], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x1fc], 0
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xaa8]
mov edx, 0x270f
call fcn.004ec64c
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x290], 0
mov dword [eax + 0x294], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x299], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0xa8], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x3e9], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x3d0], 0x80000001
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x2b0], 0
mov dword [eax + 0x2b4], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x2b8], 0
mov eax, dword [ebp - 0xc]
add eax, 0x304
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
add eax, 0x308
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
add eax, 0x30c
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
add eax, 0x310
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x1ec], 0xffffffff
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x340], 0
mov dword [eax + 0x344], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x338], 0
mov dword [eax + 0x33c], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x67c]
cdq
mov ecx, dword [ebp - 0xc]
mov dword [ecx + 0x330], eax
mov dword [ecx + 0x334], edx
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x1f0], 0
mov dword [eax + 0x1f4], 0
mov eax, dword [0x72fd50]
mov edx, dword [ebp - 0xc]
mov esi, eax
lea edi, [edx + 0x3fc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x328], edx
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x398], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x399], 1
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x70], 0
mov dword [eax + 0x74], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x270], 0
mov dword [eax + 0x274], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x40c], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x40d], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x301], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x24a], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x249], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x244], 7
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x2e8], 0
mov eax, dword [0x72fd50]
mov edx, dword [ebp - 0xc]
mov esi, eax
lea edi, [edx + 0x359]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [0x72fd50]
mov edx, dword [ebp - 0xc]
mov esi, eax
lea edi, [edx + 0x36a]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0xc]
add eax, 0x37c
mov edx, 0x5b2a58
call fcn.00404aa0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x380], 0
mov eax, dword [0x72fd50]
mov edx, dword [ebp - 0xc]
mov esi, eax
lea edi, [edx + 0x349]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x388], 0xffffffff
mov dword [eax + 0x38c], 0xffffffff
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x390], 0xffffffff
mov dword [eax + 0x394], 0xffffffff
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x1e0], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x1dc], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x39c], edx
mov eax, dword [ebp - 0xc]
xor edx, edx
mov dword [eax + 0x3a0], edx
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x3c0], 0
mov dword [eax + 0x3c4], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0x3c8], 0
mov dword [eax + 0x3cc], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x24c], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x40e], 0
mov eax, dword [ebp - 0xc]
add eax, 0x3f8
call fcn.00404a4c
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x3f6], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x289], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x2a4], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x418], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 0xac], 0xffffffff
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5b2a42
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret