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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 7
push 0
push 0
dec ecx
jne 0x43eca1
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
test dl, dl
je 0x43ecbb
add esp, 0xfffffff0
call fcn.00402c98
mov edi, ecx
mov byte [ebp - 1], dl
mov ebx, eax
mov esi, dword [ebp + 0xc]
xor eax, eax
push ebp
push 0x43fdff
push dword fs:[eax]
mov dword fs:[eax], esp
push esi
mov eax, dword [ebp + 8]
push eax
mov ecx, edi
xor edx, edx
mov eax, ebx
call fcn.00417980
mov eax, dword [ebp + 8]
mov dword [ebx + 0x7c], eax
mov ecx, esi
mov dl, 1
mov eax, dword [0x433530]
call fcn.004335cc
mov dword [ebx + 0x10], eax
mov esi, dword [ebx + 0x10]
xor eax, eax
mov dword [esi + 0x78], eax
mov dword [esi + 0x84], 0x1b0
mov dword [esi + 0x88], 0x10c
mov dword [esi + 0x8c], 0x1a8
mov dword [esi + 0x90], 0x104
mov byte [esi + 0x94], 0
mov dword [esi + 0x9c], 0xff00000f
push 0
push 0xcc
lea eax, [ebp - 0x14]
push eax
xor ecx, ecx
mov dl, 0xa
mov eax, 0x43fe30
call fcn.00413650
lea edx, [ebp - 0x14]
lea eax, [esi + 0xa8]
mov ecx, dword [0x41246c]
call fcn.0040407c
mov byte [esi + 0xb8], 0
mov byte [esi + 0xba], 1
mov byte [esi + 0xbb], 1
xor eax, eax
mov dword [esi + 0xbc], eax
mov byte [esi + 0xc2], 1
xor eax, eax
mov dword [esi + 0x98], eax
mov byte [esi + 0xa0], 0
mov byte [esi + 0xd8], 0
lea eax, [esi + 0x80]
xor edx, edx
call fcn.0040377c
lea eax, [esi + 0xa4]
xor edx, edx
call fcn.0040377c
xor eax, eax
mov dword [esi + 0xdc], eax
xor eax, eax
mov dword [esi + 0xe0], eax
mov eax, dword [0x4874e8]
mov eax, dword [eax]
mov dword [esi + 0xc4], eax
mov dword [esi + 0xc8], 4
mov dword [esi + 0xcc], 0xff00000f
xor eax, eax
mov dword [esi + 0xd0], eax
xor eax, eax
mov dword [esi + 0xd4], eax
lea eax, [ebp - 0x18]
xor edx, edx
call fcn.0040377c
mov edx, dword [ebp - 0x18]
mov eax, esi
call fcn.00433654
mov byte [esi + 0xc1], 0
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x3c]
mov dl, 1
mov eax, dword [0x416b5c]
call fcn.00402a74
mov esi, eax
mov dword [ebx + 0xc], esi
push 2
lea eax, [esi + 0xc]
mov ecx, 1
mov edx, dword [0x416b34]
call fcn.004048f8
add esp, 4
push 0
lea eax, [esi + 0x10]
mov ecx, 1
mov edx, dword [0x416b48]
call fcn.004048f8
add esp, 4
mov eax, dword [ebx + 0x10]
mov ecx, dword [eax + 0x7c]
mov dl, 1
mov eax, dword [0x41aa7c]
call fcn.0041ab28
mov dword [ebx + 0x14], eax
mov esi, dword [ebx + 0x14]
xor eax, eax
mov dword [esi + 0x78], eax
mov dword [esi + 0x84], 0xa
mov dword [esi + 0x88], 0xe
mov dword [esi + 0x8c], 0x1e
mov dword [esi + 0x90], 0x11
mov byte [esi + 0x94], 0
mov dword [esi + 0x9c], 0xff00000f
push 0
push 0xcc
lea eax, [ebp - 0x14]
push eax
xor ecx, ecx
mov dl, 7
mov eax, 0x43fe30
call fcn.00413650
lea edx, [ebp - 0x14]
lea eax, [esi + 0xa8]
mov ecx, dword [0x41246c]
call fcn.0040407c
mov byte [esi + 0xb8], 0
mov byte [esi + 0xba], 0
mov byte [esi + 0xbb], 1
xor eax, eax
mov dword [esi + 0xbc], eax
mov byte [esi + 0xc2], 1
xor eax, eax
mov dword [esi + 0x98], eax
mov byte [esi + 0xa0], 1
mov byte [esi + 0xd8], 0
lea eax, [esi + 0x80]
xor edx, edx
call fcn.0040377c
lea eax, [esi + 0xa4]
xor edx, edx
call fcn.0040377c
xor eax, eax
mov dword [esi + 0xdc], eax
xor eax, eax
mov dword [esi + 0xe0], eax
mov eax, dword [0x4874e8]
mov eax, dword [eax]
mov dword [esi + 0xc4], eax
mov dword [esi + 0xc8], 4
mov dword [esi + 0xcc], 0xff00000f
xor eax, eax
mov dword [esi + 0xd0], eax
xor eax, eax
mov dword [esi + 0xd4], eax
mov byte [esi + 0xb9], 0
lea eax, [esi + 0x1b8]
mov edx, 0x43fe38
call fcn.0040377c
mov dl, 1
mov eax, esi
call fcn.0041ad5c
xor edx, edx
mov eax, esi
call fcn.0041ad50
xor eax, eax
mov dword [esi + 0x1b0], eax
mov byte [esi + 0x1b4], 0
mov byte [esi + 0x1bc], 0
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x3c]
mov eax, dword [ebx + 0x10]
mov ecx, dword [eax + 0x7c]
mov dl, 1
mov eax, dword [0x41aa7c]
call fcn.0041ab28
mov dword [ebx + 0x18], eax
mov esi, dword [ebx + 0x18]
xor eax, eax
mov dword [esi + 0x78], eax
mov dword [esi + 0x84], 0xa
mov dword [esi + 0x88], 0xea
mov dword [esi + 0x8c], 0x32
mov dword [esi + 0x90], 0xf
mov byte [esi + 0x94], 0
mov dword [esi + 0x9c], 0xff00000f
push 0
push 0xcc
lea eax, [ebp - 0x14]
push eax
mov cl, 1
mov dl, 0xa
mov eax, 0x43fe30
call fcn.00413650
lea edx, [ebp - 0x14]
lea eax, [esi + 0xa8]
mov ecx, dword [0x41246c]
call fcn.0040407c
mov byte [esi + 0xb8], 0
mov byte [esi + 0xba], 1
mov byte [esi + 0xbb], 1
xor eax, eax
mov dword [esi + 0xbc], eax
mov byte [esi + 0xc2], 1
xor eax, eax
mov dword [esi + 0x98], eax
mov byte [esi + 0xa0], 1
mov byte [esi + 0xd8], 0
lea eax, [esi + 0x80]
xor edx, edx
call fcn.0040377c
lea eax, [esi + 0xa4]
xor edx, edx
call fcn.0040377c
xor eax, eax
mov dword [esi + 0xdc], eax
xor eax, eax
mov dword [esi + 0xe0], eax
mov eax, dword [0x4874e8]
mov eax, dword [eax]
mov dword [esi + 0xc4], eax
mov dword [esi + 0xc8], 4
mov dword [esi + 0xcc], 0xff00000f
xor eax, eax
mov dword [esi + 0xd0], eax
xor eax, eax
mov dword [esi + 0xd4], eax
mov byte [esi + 0xb9], 0
lea eax, [esi + 0x1b8]
mov edx, 0x43fe40
call fcn.0040377c
mov dl, 1
mov eax, esi
call fcn.0041ad5c
xor edx, edx
mov eax, esi
call fcn.0041ad50
xor eax, eax
mov dword [esi + 0x1b0], eax
mov byte [esi + 0x1b4], 0
mov byte [esi + 0x1bc], 0
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x3c]
mov eax, dword [ebx + 0x10]
mov ecx, dword [eax + 0x7c]
mov dl, 1
mov eax, dword [0x41aa7c]
call fcn.0041ab28
mov dword [ebx + 0x1c], eax
mov esi, dword [ebx + 0x1c]
xor eax, eax
mov dword [esi + 0x78], eax
mov dword [esi + 0x84], 0xe1
mov dword [esi + 0x88], 0xea
mov dword [esi + 0x8c], 0x32
mov dword [esi + 0x90], 0xf
mov byte [esi + 0x94], 0
mov dword [esi + 0x9c], 0xff00000f
push 0
push 0xcc
lea eax, [ebp - 0x14]
push eax
mov cl, 1
mov dl, 0xa
mov eax, 0x43fe30
call fcn.00413650
lea edx, [ebp - 0x14]
lea eax, [esi + 0xa8]
mov ecx, dword [0x41246c]
call fcn.0040407c
mov byte [esi + 0xb8], 0
mov byte [esi + 0xba], 1
mov byte [esi + 0xbb], 1
xor eax, eax
mov dword [esi + 0xbc], eax
mov byte [esi + 0xc2], 1
xor eax, eax
mov dword [esi + 0x98], eax
mov byte [esi + 0xa0], 1
mov byte [esi + 0xd8], 0
lea eax, [esi + 0x80]
xor edx, edx
call fcn.0040377c
lea eax, [esi + 0xa4]
xor edx, edx
call fcn.0040377c
xor eax, eax
mov dword [esi + 0xdc], eax
xor eax, eax
mov dword [esi + 0xe0], eax
mov eax, dword [0x4874e8]
mov eax, dword [eax]
mov dword [esi + 0xc4], eax
mov dword [esi + 0xc8], 4
mov dword [esi + 0xcc], 0xff00000f
xor eax, eax
mov dword [esi + 0xd0], eax
xor eax, eax
mov dword [esi + 0xd4], eax
mov byte [esi + 0xb9], 0
lea eax, [esi + 0x1b8]
mov edx, 0x43fe40
call fcn.0040377c
mov dl, 1
mov eax, esi
call fcn.0041ad5c
xor edx, edx
mov eax, esi
call fcn.0041ad50
xor eax, eax
mov dword [esi + 0x1b0], eax
mov byte [esi + 0x1b4], 0
mov byte [esi + 0x1bc], 0
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x3c]
mov dl, 1
mov eax, dword [0x41b684]
call fcn.00402a74
mov dword [ebx + 0x20], eax
mov esi, dword [ebx + 0x20]
lea eax, [esi + 0x34]
mov edx, 0x43fe44
call fcn.0040377c
lea eax, [esi + 0x30]
mov edx, 0x43fe54
call fcn.0040377c
lea eax, [esi + 0x40]
xor edx, edx
call fcn.0040377c
mov byte [esi + 0x38], 0
mov byte [esi + 0x39], 0
lea eax, [esi + 0x3c]
mov edx, 0x43fe8c
call fcn.0040377c
mov dl, 1
mov eax, dword [0x4340e4]
call fcn.00402a74
mov dword [ebx + 0x24], eax
mov esi, dword [ebx + 0x24]
lea eax, [esi + 0xc]
mov edx, 0x43fe94
call fcn.0040377c
mov byte [esi + 0x10], 0
mov dl, 1
mov eax, dword [0x41a7c4]
call fcn.00402a74
mov dword [ebx + 0x28], eax
mov eax, dword [ebx + 0x28]
mov byte [eax + 5], 1
mov dx, 2
call fcn.0041a82c
mov dl, 1
mov eax, dword [0x43abe8]
call fcn.00402a74
mov dword [ebx + 0x2c], eax
mov esi, dword [ebx + 0x2c]
lea eax, [esi + 0x20]
mov edx, 0x43fe94
call fcn.0040377c
mov dword [esi + 0xc], 1
mov dword [esi + 0x10], 0xffffffff
mov dword [esi + 0x14], 1
mov byte [esi + 0x1c], 1
mov byte [esi + 0x29], 0
mov byte [esi + 0x28], 0
mov dl, 1
mov eax, dword [0x43a70c]
call fcn.00402a74
aaa
cld
dec dword [ecx + 0x738b3043]
xor dh, al
inc esi
and byte [eax], al