Function at 0x6e5600
Capabilities:
Enumerate pe sections
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x110
mov esi, esp
mov dword [esi + 0xf8], ebp
mov dword [esi + 0x38], ecx
nop
mov ebx, dword [ebp + 8]
mov dword [esi + 0xfc], esp
mov dword [esi + 0x108], 0xffffffff
lea eax, [esi + 0x100]
mov dword [esi + 0x104], 0x6eb970
mov ecx, dword fs:[0]
mov dword [esi + 0x100], ecx
mov dword fs:[0], eax
lea edi, [esi + 0x60]
mov ecx, edi
push 1
call fcn.006eab00
mov dword [esi + 0x108], 2
mov ecx, edi
push ebx
call fcn.006eacc0
lea ecx, [esi + 0x64]
lea eax, [esi + 0x48]
push eax
call fcn.0069bd10
nop
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov eax, dword [esi + 0x48]
mov edi, dword [esi + 0x58]
mov ecx, dword [esi + 0x5c]
cmp ecx, 0x10
lea ebx, [esi + 0x48]
mov edx, ebx
cmovae edx, eax
cmp edi, 0x10
nop
mov dword [esi + 4], edi
jae 0x6e5739
cmp ecx, 0x10
cmovae ebx, eax
movzx eax, byte [edx]
mov byte [esi + 0x20], al
movzx eax, byte [ebx + 1]
mov byte [esi + 0x21], al
movzx eax, byte [ebx + 2]
mov byte [esi + 0x22], al
movzx eax, byte [ebx + 3]
mov byte [esi + 0x23], al
movzx eax, byte [ebx + 4]
mov byte [esi + 0x24], al
movzx eax, byte [ebx + 5]
mov byte [esi + 0x25], al
movzx eax, byte [ebx + 6]
mov byte [esi + 0x26], al
movzx eax, byte [ebx + 7]
mov byte [esi + 0x27], al
movzx eax, byte [ebx + 8]
mov byte [esi + 0x28], al
movzx eax, byte [ebx + 9]
mov byte [esi + 0x29], al
movzx eax, byte [ebx + 0xa]
mov byte [esi + 0x2a], al
movzx eax, byte [ebx + 0xb]
mov byte [esi + 0x2b], al
movzx eax, byte [ebx + 0xc]
mov byte [esi + 0x2c], al
movzx eax, byte [ebx + 0xd]
mov byte [esi + 0x2d], al
movzx eax, byte [ebx + 0xe]
mov byte [esi + 0x2e], al
movzx eax, byte [ebx + 0xf]
mov byte [esi + 0x2f], al
lea ebx, [esi + 0x20]
mov dword [esi + 0x30], edi
mov dword [esi + 0x34], 0xf
mov dword [esi + 0x1c], 0x920fc0
jmp 0x6e5891
nop
mov dword [esi + 0xc], edx
mov eax, edi
or eax, 0xf
cmp eax, 0x7fffffff
mov ecx, 0x7fffffff
cmovb ecx, eax
cmp eax, 0xfff
nop
mov dword [esi + 0x10], ecx
jb 0x6e5789
lea eax, [ecx + 0x24]
mov dword [esi + 0x108], 3
push eax
call fcn.008ea17d
add esp, 4
mov ecx, eax
add eax, 0x23
and eax, 0xffffffe0
mov dword [eax - 4], ecx
mov dword [esi + 0x20], eax
cmp dword [esi + 4], 0xffffffff
jne 0x6e57a3
jmp 0x6e587a
lea eax, [ecx + 1]
mov dword [esi + 0x108], 3
push eax
call fcn.008ea17d
add esp, 4
nop
mov dword [esi + 0x20], eax
mov ecx, dword [esi + 4]
inc ecx
xor edx, edx
mov dword [esi + 8], ecx
cmp ecx, 8
jb 0x6e5818
mov edi, eax
mov ebx, dword [esi + 0xc]
sub edi, ebx
cmp edi, 0x20
mov ecx, dword [esi + 8]
jb 0x6e581b
xor edx, edx
cmp ecx, 0x20
jb 0x6e57f7
mov edx, ecx
and edx, 0xffffffe0
xor edi, edi
nop
nop
movups xmm0, xmmword [ebx + edi]
movups xmm1, xmmword [ebx + edi + 0x10]
movups xmmword [eax + edi], xmm0
movups xmmword [eax + edi + 0x10], xmm1
add edi, 0x20
cmp edx, edi
jne 0x6e57d0
cmp ecx, edx
je 0x6e587a
test cl, 0x18
je 0x6e581b
mov edi, edx
mov edx, ecx
and edx, 0xfffffff8
nop
nop
movsd xmm0, qword [ebx + edi]
movsd qword [eax + edi], xmm0
add edi, 8
cmp edx, edi
jne 0x6e5800
cmp ecx, edx
jne 0x6e581b
jmp 0x6e587a
mov ecx, dword [esi + 8]
mov edi, dword [esi + 4]
sub edi, edx
mov dword [esi + 0x14], edi
mov edi, ecx
and edi, 3
je 0x6e583e
mov ecx, dword [esi + 0xc]
nop dword [eax]
nop
movzx ebx, byte [ecx + edx]
mov byte [eax + edx], bl
inc edx
dec edi
jne 0x6e5830
jmp 0x6e5841
mov ecx, dword [esi + 0xc]
cmp dword [esi + 0x14], 3
mov edi, dword [esi + 8]
jb 0x6e587a
nop word [eax + eax]
nop
movzx ebx, byte [ecx + edx]
mov byte [eax + edx], bl
movzx ebx, byte [ecx + edx + 1]
mov byte [eax + edx + 1], bl
movzx ebx, byte [ecx + edx + 2]
mov byte [eax + edx + 2], bl
movzx ebx, byte [ecx + edx + 3]
mov byte [eax + edx + 3], bl
add edx, 4
cmp edi, edx
jne 0x6e5850
nop
mov eax, dword [esi + 4]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x34], eax
mov dword [esi + 0x1c], 0x920fc0
mov ebx, dword [esi + 0x20]
nop
mov eax, dword [esi + 0x38]
mov edi, dword [eax + 0x14]
mov edx, dword [eax + 0x18]
mov dword [esi + 0x10], edx
sub edx, edi
cmp edx, dword [esi + 4]
lea ecx, [eax + 4]
jae 0x6e58d6
nop
mov dword [esi + 0x108], 4
sub esp, 0x10
movzx eax, byte [esi + 0x3c]
mov byte [esp + 4], al
mov eax, dword [esi + 4]
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
mov dword [esp], eax
call fcn.0066d8c0
jmp 0x6e5b86
nop
mov dword [esi + 0xc], ecx
mov dword [esi + 8], ebx
mov ecx, dword [esi + 4]
lea edx, [edi + ecx]
mov ecx, edx
mov dword [esi + 0x14], edx
mov dword [eax + 0x14], edx
cmp dword [esi + 0x10], 0x10
jb 0x6e58fa
mov eax, dword [esi + 0x38]
mov eax, dword [eax + 4]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
mov dword [esi + 0x18], edi
lea ebx, [eax + edi]
mov ecx, ebx
sub ecx, dword [esi + 8]
jae 0x6e5927
mov eax, dword [esi + 4]
test eax, eax
je 0x6e5b7b
xor edx, edx
cmp eax, 8
jae 0x6e5942
mov eax, dword [esi + 4]
mov edi, dword [esi + 8]
jmp 0x6e59cd
mov eax, dword [esi + 4]
test eax, eax
je 0x6e5b7b
cmp eax, 4
jae 0x6e5a3f
mov ebx, eax
jmp 0x6e5afd
cmp ecx, 0x20
mov eax, dword [esi + 4]
mov edi, dword [esi + 8]
jb 0x6e59cd
xor edx, edx
cmp eax, 0x20
jb 0x6e599b
mov edx, eax
and edx, 0xffffffe0
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x18]
add ecx, eax
add ecx, 0x10
mov eax, edx
xor edx, edx
nop dword [eax]
nop
movups xmm0, xmmword [edi + edx]
movups xmm1, xmmword [edi + edx + 0x10]
movups xmmword [ecx + edx - 0x10], xmm0
movups xmmword [ecx + edx], xmm1
add edx, 0x20
cmp eax, edx
jne 0x6e5970
mov edx, eax
mov eax, dword [esi + 4]
cmp eax, edx
je 0x6e5b7b
test al, 0x18
je 0x6e59cd
mov ecx, edx
mov edx, eax
and edx, 0xfffffff8
nop word cs:[eax + eax]
nop
movsd xmm0, qword [edi + ecx]
movsd qword [ebx + ecx], xmm0
add ecx, 8
cmp edx, ecx
jne 0x6e59b0
mov eax, dword [esi + 4]
cmp eax, edx
je 0x6e5b7b
mov ecx, eax
mov dword [esi + 8], edx
and ecx, 3
je 0x6e59ec
mov edx, dword [esi + 8]
nop word [eax + eax]
nop
movzx eax, byte [edi + edx]
mov byte [ebx + edx], al
inc edx
dec ecx
jne 0x6e59e0
mov ebx, dword [esi + 4]
mov eax, dword [esi + 8]
sub eax, ebx
cmp eax, 0xfffffffc
ja 0x6e5b7b
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x18]
add ecx, eax
add ecx, 3
nop dword [eax + eax]
nop
movzx eax, byte [edi + edx]
mov byte [ecx + edx - 3], al
movzx eax, byte [edi + edx + 1]
mov byte [ecx + edx - 2], al
movzx eax, byte [edi + edx + 2]
mov byte [ecx + edx - 1], al
movzx eax, byte [edi + edx + 3]
mov byte [ecx + edx], al
add edx, 4
cmp ebx, edx
jne 0x6e5a10
jmp 0x6e5b7b
mov ecx, dword [esi + 8]
sub ecx, ebx
cmp ecx, 0x10
jae 0x6e5a51
mov ebx, dword [esi + 4]
jmp 0x6e5afd
xor edx, edx
mov eax, dword [esi + 4]
cmp eax, 0x10
jb 0x6e5aa3
mov edx, eax
and edx, 0xfffffff0
mov ecx, dword [esi + 0xc]
mov edi, dword [esi + 0x14]
lea ebx, [ecx + edi]
add ebx, 0xfffffff0
mov ecx, dword [esi + 8]
lea edi, [eax + ecx]
add edi, 0xfffffff0
mov eax, ebx
mov ebx, edx
neg ebx
xor ecx, ecx
nop dword [eax]
nop
movups xmm0, xmmword [edi + ecx]
movups xmmword [eax + ecx], xmm0
add ecx, 0xfffffff0
cmp ebx, ecx
jne 0x6e5a80
mov eax, dword [esi + 4]
cmp eax, edx
je 0x6e5b7b
test al, 0xc
je 0x6e5c2d
mov ecx, eax
and ecx, 0xfffffffc
mov dword [esi + 0x40], ecx
mov ebx, eax
and ebx, 3
mov ecx, dword [esi + 0xc]
mov edi, dword [esi + 0x14]
add ecx, edi
add ecx, 0xfffffffc
mov dword [esi + 0x44], ecx
neg edx
mov ecx, dword [esi + 0x40]
neg ecx
mov edi, dword [esi + 8]
add eax, edi
add eax, 0xfffffffc
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x44]
nop word cs:[eax + eax]
nop
mov edi, dword [esi + 0x10]
mov edi, dword [edi + edx]
mov dword [eax + edx], edi
add edx, 0xfffffffc
cmp ecx, edx
jne 0x6e5ae0
mov eax, dword [esi + 0x40]
cmp dword [esi + 4], eax
je 0x6e5b7b
lea eax, [ebx - 1]
mov dword [esi + 0x10], eax
mov ecx, ebx
and ecx, 3
je 0x6e5b35
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 0x18]
add eax, edx
dec eax
mov dword [esi + 4], eax
mov edi, dword [esi + 4]
nop dword [eax]
lea edx, [ebx - 1]
mov eax, dword [esi + 8]
movzx eax, byte [eax + ebx - 1]
mov byte [edi + ebx], al
dec ecx
mov ebx, edx
jne 0x6e5b20
jmp 0x6e5b37
mov edx, ebx
cmp dword [esi + 0x10], 3
mov ebx, dword [esi + 8]
jb 0x6e5b7b
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x18]
add ecx, eax
dec ecx
mov edi, edx
nop dword [eax + eax]
nop
movzx eax, byte [ebx + edx - 1]
mov byte [ecx + edx], al
movzx eax, byte [ebx + edx - 2]
mov byte [ecx + edx - 1], al
movzx eax, byte [ebx + edx - 3]
mov byte [ecx + edx - 2], al
movzx eax, byte [ebx + edx - 4]
mov byte [ecx + edx - 3], al
add edi, 0xfffffffc
mov edx, edi
jne 0x6e5b50
nop
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x14]
mov byte [eax + ecx], 0
nop
mov eax, dword [esi + 0x34]
cmp eax, 0x10
jb 0x6e5bc2
nop
mov ecx, dword [esi + 0x20]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x6e5bb7
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x6e5c35
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.008ea1ad
add esp, 8
nop
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0xf
mov byte [esi + 0x20], 0
mov eax, dword [esi + 0x5c]
cmp eax, 0x10
jb 0x6e5c0c
nop
mov ecx, dword [esi + 0x48]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x6e5c01
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x6e5c45
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.008ea1ad
add esp, 8
lea ecx, [esi + 0x60]
call fcn.006eb030
mov eax, dword [esi + 0x100]
mov dword fs:[0], eax
mov eax, dword [esi + 0x38]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
and eax, 0xf
jmp 0x6e593b
nop
mov dword [esi + 0x108], 0
call fcn.008cd651
nop
mov dword [esi + 0x108], 1
call fcn.008cd651
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x10c]
mov ebp, dword [esi + 0xf8]
call fcn.00901a00
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x10c]
mov ebp, dword [esi + 0xf8]
call fcn.00901a00
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x10c]
mov ebp, dword [esi + 0xf8]
lea ecx, [esi + 0x1c]
call fcn.00657390
add esp, 0x10
pop ebp
ret