Function at 0x5dd1a0
Capabilities:
Access peb ldr_data
Check for peb beingdebugged flag
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x7312db
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x84
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, ecx
xor ecx, ecx
push edi
movsx eax, word [esi + 0xe]
mov cl, byte [esi + 0x2d]
mov dword [ebp - 0x8c], eax
movsx eax, word [esi + 6]
mov dword [ebp - 0x88], ecx
xor ecx, ecx
mov cl, byte [esi + 0x31]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], ecx
xor eax, eax
movsx ecx, word [esi + 0x10]
mov al, byte [esi + 0x32]
mov dword [ebp - 0x6c], ecx
movsx ecx, word [esi + 0x14]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x64], ecx
movsx eax, word [esi + 0x12]
movsx ecx, word [esi + 8]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x5c], ecx
movsx eax, word [esi + 0xa]
mov dword [ebp - 0x58], eax
xor ecx, ecx
movsx eax, word [esi + 0xc]
mov cl, byte [esi + 0x2c]
mov dword [ebp - 0x54], eax
movsx eax, word [esi + 0x16]
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x4c], eax
movsx ecx, word [esi + 0x18]
movsx eax, word [esi + 0x1a]
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], eax
movsx ecx, word [esi + 0x1c]
movsx eax, word [esi + 0x1e]
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], eax
movsx ecx, word [esi + 0x20]
mov eax, dword [esi + 0x22]
mov dword [ebp - 0x38], ecx
movsx ecx, word [esi + 0x26]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], ecx
movsx eax, word [esi + 0x28]
movsx ecx, word [esi + 0x2a]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov al, byte [esi + 0x2f]
mov dword [ebp - 0x28], ecx
xor ecx, ecx
mov edi, eax
mov cl, byte [esi + 0x2e]
mov edx, dword [esi + 2]
shr edi, 6
shl ecx, 2
or edi, ecx
xor ecx, ecx
mov cl, byte [esi + 0x30]
mov dword [ebp - 0x84], edi
mov edi, ecx
and eax, 0x3f
shr edi, 4
shl eax, 4
and ecx, 0xf
or edi, eax
mov dword [ebp - 0x7c], ecx
mov ecx, dword [ebx + 0xb4]
push edx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x80], edi
call fcn.00526d60
mov edi, eax
test edi, edi
je 0x5dd3e5
mov ecx, edi
call fcn.0058e440
cmp eax, 0x2d
jle 0x5dd317
mov ecx, edi
call fcn.0058e440
cmp eax, 0xfa0
jge 0x5dd317
movsx ebx, word [esi + 0x18]
movsx edx, word [esi + 0x1a]
movsx eax, word [esi + 0x16]
shl ebx, 0x10
or ebx, edx
mov dword [ebp + 8], eax
jbe 0x5dd314
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x9c]
test eax, eax
jne 0x5dd314
mov ecx, dword [ebp + 8]
mov eax, dword [edi]
push ecx
push ebx
mov ecx, edi
call dword [eax + 0x98]
mov ebx, dword [ebp - 0x10]
cmp dword [ebp - 0x6c], 0x64
jne 0x5dd349
mov edx, dword [0x837b68]
mov eax, dword [esi + 2]
cmp edx, eax
mov eax, dword [ebp - 0x64]
jne 0x5dd332
mov dword [0x837b90], eax
test eax, eax
je 0x5dd349
push eax
mov ecx, 0x8365d0
call fcn.006f0a60
push eax
mov ecx, edi
call fcn.0058b480
mov eax, dword [edi]
push 0
lea ecx, [ebp - 0x90]
push 0
push ecx
push 3
push 0
mov ecx, edi
call dword [eax + 8]
mov ecx, 0x8365d0
call fcn.006f1a40
test eax, eax
je 0x5dd686
cmp dword [ebp - 0x6c], 0x64
je 0x5dd686
mov eax, dword [edi + 0x134]
test eax, eax
jne 0x5dd686
mov ecx, edi
call fcn.0058e440
push eax
mov ecx, 0x8365d0
call fcn.006f1a30
test eax, eax
jne 0x5dd3cf
mov ecx, edi
call fcn.0058e440
push eax
mov ecx, 0x8365d0
call fcn.006f1b00
test eax, eax
je 0x5dd686
movsx edx, word [esi + 0x26]
mov eax, dword [esi + 0x22]
push edx
push eax
push edi
mov ecx, ebx
call fcn.005b2940
jmp 0x5dd686
movsx ecx, word [esi + 0x26]
mov edx, dword [esi + 0x22]
push ecx
push edx
push edi
mov ecx, ebx
call fcn.005b2940
jmp 0x5dd686
mov ax, word [esi + 0xe]
mov dword [ebp - 0x18], 0
cmp ax, 0x2d
jl 0x5dd3fc
cmp ax, 0xfa0
jl 0x5dd40e
movsx eax, ax
push eax
mov ecx, 0x8365d0
call fcn.006f1bb0
test eax, eax
je 0x5dd460
mov ecx, dword [esi + 2]
push ecx
mov ecx, 0x8365d0
call fcn.006f4b10
test eax, eax
mov edi, 1
je 0x5dd42b
mov dword [0x839e44], edi
mov edx, dword [esi + 2]
mov ecx, 0x8365d0
push edx
call fcn.006f4b40
test eax, eax
je 0x5dd443
mov dword [0x839ee8], edi
movsx eax, word [esi + 0xe]
push eax
mov ecx, ebx
call fcn.005ae4b0
mov edi, eax
mov dword [ebp - 0x88], 0
mov dword [ebp + 8], edi
jmp 0x5dd499
push 0x3e4
mov dword [ebp - 0x18], 1
call fcn.0070dddb
add esp, 4
mov dword [ebp + 8], eax
test eax, eax
mov dword [ebp - 4], 0
je 0x5dd48b
mov ecx, eax
call fcn.0061da60
jmp 0x5dd48d
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [ebp + 8], eax
mov edi, eax
test edi, edi
je 0x5dd4cf
cmp dword [ebp - 0x6c], 0x64
jne 0x5dd4cf
mov ecx, dword [0x837b68]
mov eax, dword [esi + 2]
cmp ecx, eax
mov eax, dword [ebp - 0x64]
jne 0x5dd4b8
mov dword [0x837b90], eax
test eax, eax
je 0x5dd4cf
push eax
mov ecx, 0x8365d0
call fcn.006f0a60
push eax
mov ecx, edi
call fcn.0058b480
mov edi, dword [ebx + 0xb4]
mov ebx, dword [edi + 0xc]
add edi, 8
push 0xc
mov edx, dword [ebx + 4]
mov dword [ebp - 0x14], edx
call fcn.0070dddb
add esp, 4
mov ecx, ebx
test ebx, ebx
jne 0x5dd4f3
mov ecx, eax
mov dword [eax], ecx
mov ecx, dword [ebp - 0x14]
test ecx, ecx
jne 0x5dd4fe
mov ecx, eax
mov dword [eax + 4], ecx
mov dword [ebx + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
add eax, 8
test eax, eax
je 0x5dd515
mov edx, dword [ebp + 8]
mov dword [eax], edx
mov edx, dword [edi + 8]
mov eax, dword [ebp - 0x10]
inc edx
push 0xc
mov dword [edi + 8], edx
mov edi, dword [eax + 0xb4]
add edi, 0x14
mov ebx, dword [edi + 4]
mov ecx, dword [ebx + 4]
mov dword [ebp - 0x14], ecx
call fcn.0070dddb
add esp, 4
mov ecx, ebx
test ebx, ebx
jne 0x5dd543
mov ecx, eax
mov dword [eax], ecx
mov ecx, dword [ebp - 0x14]
test ecx, ecx
jne 0x5dd54e
mov ecx, eax
mov dword [eax + 4], ecx
mov dword [ebx + 4], eax
mov edx, dword [eax + 4]
mov ebx, dword [ebp + 8]
mov dword [edx], eax
add eax, 8
test eax, eax
je 0x5dd565
mov dword [eax], ebx
mov edx, dword [edi + 8]
push 0
inc edx
lea ecx, [ebp - 0x90]
push 2
mov dword [edi + 8], edx
mov eax, dword [ebx]
push ecx
push 4
push 0
mov ecx, ebx
call dword [eax + 8]
mov ecx, ebx
call fcn.0058e440
cmp eax, 0x2d
jle 0x5dd5bb
mov ecx, ebx
call fcn.0058e440
cmp eax, 0xfa0
jge 0x5dd5bb
movsx eax, word [esi + 0x18]
movsx edx, word [esi + 0x1a]
shl eax, 0x10
or eax, edx
jbe 0x5dd5bb
movsx ecx, word [esi + 0x16]
mov edx, dword [ebx]
push ecx
push eax
mov ecx, ebx
call dword [edx + 0x98]
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x5dd61c
mov edx, dword [esi + 2]
push edx
call fcn.0052eda0
add esp, 4
test al, al
jne 0x5dd61c
movsx eax, word [esi + 0xc]
push eax
call fcn.006d9e60
add esp, 4
test al, al
jne 0x5dd61c
push 0
mov dword [ebp - 0x24], 0
mov edx, dword [ebp - 0x24]
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], 0
mov dword [ecx], edx
mov edx, dword [ebp - 0x1c]
push 0x158
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov ecx, ebx
call fcn.0058c3f0
mov ecx, 0x8365d0
call fcn.006f1a40
test eax, eax
je 0x5dd683
cmp dword [ebp - 0x6c], 0x64
je 0x5dd683
mov eax, dword [ebx + 0x134]
test eax, eax
jne 0x5dd683
mov ecx, ebx
call fcn.0058e440
push eax
mov ecx, 0x8365d0
call fcn.006f1a30
test eax, eax
jne 0x5dd671
mov ecx, ebx
call fcn.0058e440
push eax
mov ecx, 0x8365d0
call fcn.006f1b00
test eax, eax
je 0x5dd683
movsx eax, word [esi + 0x26]
mov ecx, dword [esi + 0x22]
push eax
push ecx
jmp 0x5dd67a
movsx edx, word [esi + 0x26]
mov eax, dword [esi + 0x22]
push edx
push eax
mov ecx, dword [ebp - 0x10]
push ebx
call fcn.005b2940
mov ebx, dword [ebp - 0x10]
movsx ecx, word [esi + 0x2a]
movsx edx, word [esi + 0x33]
movsx eax, word [esi + 0xc]
push ecx
mov ecx, dword [esi + 2]
push edx
push eax
push ecx
mov ecx, ebx
call fcn.0060a5e0
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4