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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x7313bb
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x7c
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, ecx
xor edx, edx
push edi
mov eax, dword [esi + 2]
mov dl, byte [esi + 0x31]
movsx ecx, word [esi + 0xe]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], ecx
movsx eax, word [esi + 6]
movsx ecx, word [esi + 0x10]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x80], edx
movsx eax, word [esi + 0x16]
mov edx, dword [esi + 0x12]
mov dword [ebp - 0x54], eax
movsx eax, word [esi + 0xc]
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], edx
movsx ecx, word [esi + 0xa]
movsx edx, word [esi + 8]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], ecx
movsx eax, word [esi + 0x1e]
mov dword [ebp - 0x50], edx
xor ecx, ecx
movsx edx, word [esi + 0x1c]
mov cl, byte [esi + 0x30]
mov dword [ebp - 0x38], eax
movsx eax, word [esi + 0x24]
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x3c], edx
movsx ecx, word [esi + 0x20]
movsx edx, word [esi + 0x22]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x34], ecx
movsx eax, word [esi + 0x2c]
mov ecx, dword [esi + 0x26]
mov dword [ebp - 0x30], edx
movsx edx, word [esi + 0x2a]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x20], eax
movsx ecx, word [esi + 0x2e]
xor eax, eax
mov dword [ebp - 0x24], edx
mov al, byte [esi + 0x33]
xor edx, edx
mov dl, byte [esi + 0x32]
mov dword [ebp - 0x1c], ecx
mov ecx, eax
and eax, 0x3f
shl edx, 2
shr ecx, 6
or edx, ecx
xor ecx, ecx
mov cl, byte [esi + 0x34]
mov dword [ebp - 0x78], edx
mov edx, ecx
and ecx, 0xf
shr edx, 4
shl eax, 4
or edx, eax
xor eax, eax
mov al, byte [esi + 0x35]
mov dword [ebp - 0x74], edx
mov edx, eax
mov edi, dword [esi + 0x18]
shr edx, 2
shl ecx, 6
or edx, ecx
xor ecx, ecx
mov cl, byte [esi + 0x36]
and eax, 3
shl eax, 8
or ecx, eax
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], ecx
xor eax, eax
mov al, byte [esi + 0x37]
push edi
mov edx, eax
and eax, 0xf
shr edx, 4
mov ecx, 0x8365d0
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], eax
call fcn.006ca910
mov eax, dword [esi + 2]
mov ecx, dword [ebx + 0xb4]
push eax
call fcn.00526d60
mov edi, eax
test edi, edi
je 0x5df815
mov edx, dword [edi]
push 0
lea eax, [ebp - 0x88]
push 0
push eax
push 0x7b
push 0
mov ecx, edi
call dword [edx + 8]
cmp dword [ebp - 0x5c], 0x64
jne 0x5df6eb
mov ecx, dword [0x837b68]
mov eax, dword [esi + 2]
cmp ecx, eax
mov eax, dword [ebp - 0x54]
jne 0x5df6c3
mov dword [0x837b90], eax
test eax, eax
je 0x5df6eb
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x9c]
test eax, eax
jne 0x5df6eb
mov eax, dword [ebp - 0x54]
mov ecx, 0x8365d0
push eax
call fcn.006f0a60
push eax
mov ecx, edi
call fcn.0058b480
mov ecx, 0x8365d0
call fcn.006f1a40
test eax, eax
je 0x5df751
cmp dword [ebp - 0x5c], 0x64
je 0x5df751
mov eax, dword [edi + 0x134]
test eax, eax
jne 0x5df751
mov ecx, edi
call fcn.0058e440
push eax
mov ecx, 0x8365d0
call fcn.006f1a30
test eax, eax
jne 0x5df740
mov ecx, edi
call fcn.0058e440
push eax
mov ecx, 0x8365d0
call fcn.006f1b00
test eax, eax
je 0x5df751
movsx ecx, word [esi + 0x2a]
mov edx, dword [esi + 0x26]
push ecx
push edx
jmp 0x5df749
movsx eax, word [esi + 0x2a]
mov ecx, dword [esi + 0x26]
push eax
push ecx
push edi
mov ecx, ebx
call fcn.005b2940
mov eax, dword [edi + 0x2a4]
test eax, eax
je 0x5dfabc
mov edx, dword [edi + 0x214]
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], edx
lea edx, [ebp - 0x18]
push eax
lea ecx, [ebx + 0x1c0]
push edx
call fcn.005fae30
mov eax, dword [eax]
mov ecx, dword [ebx + 0x1c4]
cmp eax, ecx
mov dword [ebp + 8], eax
je 0x5df797
mov edx, dword [ebp - 0x10]
cmp edx, dword [eax + 0xc]
jb 0x5df797
lea eax, [ebp + 8]
jmp 0x5df79d
mov dword [ebp - 0x10], ecx
lea eax, [ebp - 0x10]
mov eax, dword [eax]
mov ecx, dword [ebx + 0x1c4]
cmp eax, ecx
je 0x5df7b5
mov ecx, dword [ebp - 0x68]
mov dword [eax + 0x10], ecx
mov edx, dword [ebp - 0x64]
mov dword [eax + 0x14], edx
mov eax, dword [edi + 0x214]
lea ecx, [ebp - 0x10]
lea edi, [ebx + 0x1d0]
lea edx, [ebp - 0x18]
push ecx
push edx
mov ecx, edi
mov dword [ebp - 0x10], eax
call fcn.005fae30
mov eax, dword [eax]
mov edi, dword [edi + 4]
cmp eax, edi
mov dword [ebp + 8], eax
je 0x5df7ee
mov ecx, dword [ebp - 0x10]
mov edx, dword [eax + 0xc]
cmp ecx, edx
jb 0x5df7ee
lea eax, [ebp + 8]
jmp 0x5df7f4
mov dword [ebp - 0x10], edi
lea eax, [ebp - 0x10]
mov eax, dword [eax]
mov ecx, dword [ebx + 0x1d4]
cmp eax, ecx
je 0x5dfabc
mov edx, dword [ebp - 0x68]
mov dword [eax + 0x10], edx
mov ecx, dword [ebp - 0x64]
mov dword [eax + 0x14], ecx
jmp 0x5dfabc
mov ax, word [esi + 0xe]
cmp ax, 0x2d
jl 0x5df825
cmp ax, 0xfa0
jl 0x5df837
movsx edx, ax
push edx
mov ecx, 0x8365d0
call fcn.006f1bb0
test eax, eax
je 0x5df887
mov eax, dword [esi + 2]
mov ecx, 0x8365d0
push eax
call fcn.006f4b10
test eax, eax
je 0x5df853
mov dword [0x839e44], 1
mov ecx, dword [esi + 2]
push ecx
mov ecx, 0x8365d0
call fcn.006f4b40
test eax, eax
je 0x5df86f
mov dword [0x839ee8], 1
movsx edx, word [esi + 0xe]
push edx
mov ecx, ebx
call fcn.005ae4b0
mov dword [ebp + 8], eax
mov dword [ebp - 0x80], 0
jmp 0x5df8b7
push 0x3e4
call fcn.0070dddb
add esp, 4
mov dword [ebp - 0x18], eax
test eax, eax
mov dword [ebp - 4], 0
je 0x5df8ab
mov ecx, eax
call fcn.0061da60
jmp 0x5df8ad
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [ebp + 8], eax
test eax, eax
je 0x5df8f2
cmp dword [ebp - 0x5c], 0x64
jne 0x5df8f2
mov ecx, dword [0x837b68]
mov edx, dword [esi + 2]
cmp ecx, edx
mov ecx, dword [ebp - 0x54]
jne 0x5df8d7
mov dword [0x837b90], ecx
test ecx, ecx
je 0x5df8f2
push ecx
mov ecx, 0x8365d0
call fcn.006f0a60
mov ecx, dword [ebp + 8]
push eax
call fcn.0058b480
mov eax, dword [ebp + 8]
mov edi, dword [ebx + 0xb4]
mov dword [ebp - 0x18], eax
add edi, 8
push 0xc
mov eax, dword [edi + 4]
mov dword [ebp - 0x10], eax
mov edx, dword [eax + 4]
mov dword [ebp - 0x14], edx
call fcn.0070dddb
mov edx, dword [ebp - 0x10]
add esp, 4
test edx, edx
mov ecx, edx
jne 0x5df91f
mov ecx, eax
mov dword [eax], ecx
mov ecx, dword [ebp - 0x14]
test ecx, ecx
jne 0x5df92a
mov ecx, eax
mov dword [eax + 4], ecx
mov dword [edx + 4], eax
mov ecx, dword [eax + 4]
lea edx, [ebp - 0x18]
push edx
mov dword [ecx], eax
add eax, 8
push eax
call fcn.00527e90
mov ecx, dword [edi + 8]
push 0xc
inc ecx
mov dword [edi + 8], ecx
mov edi, dword [ebx + 0xb4]
add edi, 0x14
mov eax, dword [edi + 4]
mov dword [ebp - 0x18], eax
mov eax, dword [eax + 4]
mov dword [ebp - 0x14], eax
call fcn.0070dddb
mov ecx, dword [ebp - 0x18]
add esp, 0xc
test ecx, ecx
mov edx, ecx
jne 0x5df973
mov edx, eax
mov dword [eax], edx
mov edx, dword [ebp - 0x14]
test edx, edx
jne 0x5df97e
mov edx, eax
mov dword [eax + 4], edx
mov dword [ecx + 4], eax
mov ecx, dword [eax + 4]
lea edx, [ebp + 8]
push edx
mov dword [ecx], eax
add eax, 8
push eax
call fcn.005fc9c0
mov eax, dword [edi + 8]
add esp, 8
inc eax
lea edx, [ebp - 0x88]
mov dword [edi + 8], eax
mov ecx, dword [ebp + 8]
push 0
push 0
mov eax, dword [ecx]
push edx
push 0x7a
push 0
call dword [eax + 8]
mov ecx, 0x8365d0
call fcn.006f1a40
test eax, eax
je 0x5dfa17
cmp dword [ebp - 0x5c], 0x64
je 0x5dfa17
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x134]
test eax, eax
jne 0x5dfa17
call fcn.0058e440
push eax
mov ecx, 0x8365d0
call fcn.006f1a30
test eax, eax
jne 0x5dfa03
mov ecx, dword [ebp + 8]
call fcn.0058e440
push eax
mov ecx, 0x8365d0
call fcn.006f1b00
test eax, eax
je 0x5dfa17
movsx eax, word [esi + 0x2a]
mov ecx, dword [esi + 0x26]
mov edx, dword [ebp + 8]
push eax
push ecx
push edx
mov ecx, ebx
call fcn.005b2940
mov eax, dword [ebp + 8]
test eax, eax
je 0x5dfabc
mov eax, dword [ebx + 0x1c4]
lea ecx, [ebp - 0x88]
lea edi, [ebx + 0x1c0]
push ecx
mov ecx, edi
mov dword [ebp - 0x10], eax
call fcn.005ba270
mov edi, dword [edi + 4]
mov dword [ebp - 0x18], eax
cmp eax, edi
je 0x5dfa5b
mov edx, dword [ebp - 0x88]
mov ecx, dword [eax + 0xc]
cmp edx, ecx
jb 0x5dfa5b
lea eax, [ebp - 0x18]
jmp 0x5dfa61
mov dword [ebp - 0x14], edi
lea eax, [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
mov edx, dword [eax]
cmp edx, ecx
jne 0x5dfab2
mov edx, dword [ebx + 0x1d4]
lea edi, [ebx + 0x1d0]
lea eax, [ebp - 0x88]
mov ecx, edi
push eax
mov dword [ebp - 0x10], edx
call fcn.005ba270
mov edi, dword [edi + 4]
mov dword [ebp - 0x18], eax
cmp eax, edi
je 0x5dfaa3
mov ecx, dword [ebp - 0x88]
mov edx, dword [eax + 0xc]
cmp ecx, edx
jb 0x5dfaa3
lea eax, [ebp - 0x18]
jmp 0x5dfaa9
mov dword [ebp - 0x14], edi
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0x10]
mov ecx, dword [eax]
cmp ecx, edx
je 0x5dfabc
mov ecx, dword [ebp + 8]
push 1
call fcn.00590f80
movsx eax, word [esi + 0x2e]
movsx ecx, word [esi + 0x3a]
movsx edx, word [esi + 0xc]
push eax
mov eax, dword [esi + 2]
push ecx
push edx
push eax
mov ecx, ebx
call fcn.0060a5e0
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4