Function at 0x102417a0
Capabilities:
Enumerate pe sections

Disassembly:
mov edx, dword [esp + 8]
sub esp, 0x2c
push ebx
mov ebx, dword [esp + 0x34]
sub edx, ebx
sar edx, 5
push ebp
mov ebp, edx
mov dword [esp + 0x3c], edx
sar ebp, 1
test ebp, ebp
jle 0x1024197e
push esi
lea esi, [edx - 1]
mov eax, ebp
mov ecx, esi
shl eax, 5
sar ecx, 1
add eax, ebx
push edi
mov dword [esp + 0x14], esi
mov dword [esp + 0x40], ecx
nop word [eax + eax]
movups xmm0, xmmword [eax - 0x20]
sub eax, 0x20
dec ebp
mov dword [esp + 0x18], eax
mov edi, ebp
mov dword [esp + 0x10], ebp
movups xmmword [esp + 0x1c], xmm0
movups xmm0, xmmword [eax + 0x10]
mov eax, ebp
movups xmmword [esp + 0x2c], xmm0
cmp ebp, ecx
jge 0x1024187f
mov ebp, dword [esp + 0x40]
nop word [eax + eax]
lea esi, [edi + edi]
lea edx, [esi + 2]
shl edx, 5
mov ecx, dword [edx + ebx]
cmp ecx, dword [edx + ebx - 0x20]
sbb edi, edi
shl eax, 5
add edi, 2
add eax, ebx
add edi, esi
mov edx, edi
shl edx, 5
add edx, ebx
mov ecx, dword [edx]
mov dword [eax], ecx
mov cl, byte [edx + 4]
mov byte [eax + 4], cl
mov cx, word [edx + 6]
mov word [eax + 6], cx
mov ecx, dword [edx + 8]
mov dword [eax + 8], ecx
mov ecx, dword [edx + 0xc]
mov dword [eax + 0xc], ecx
mov ecx, dword [edx + 0x10]
mov dword [eax + 0x10], ecx
mov ecx, dword [edx + 0x14]
mov dword [eax + 0x14], ecx
mov ecx, dword [edx + 0x18]
mov dword [eax + 0x18], ecx
mov ecx, dword [edx + 0x1c]
mov dword [eax + 0x1c], ecx
mov eax, edi
cmp edi, ebp
jl 0x10241810
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov esi, dword [esp + 0x14]
cmp edi, ecx
jne 0x102418cb
test dl, 1
jne 0x102418cb
shl edx, 5
add edx, ebx
shl eax, 5
add eax, ebx
mov ecx, dword [edx - 0x20]
mov dword [eax], ecx
mov cl, byte [edx - 0x1c]
mov byte [eax + 4], cl
mov cx, word [edx - 0x1a]
mov word [eax + 6], cx
mov ecx, dword [edx - 0x18]
mov dword [eax + 8], ecx
mov ecx, dword [edx - 0x14]
mov dword [eax + 0xc], ecx
mov ecx, dword [edx - 0x10]
mov dword [eax + 0x10], ecx
mov ecx, dword [edx - 0xc]
mov dword [eax + 0x14], ecx
mov ecx, dword [edx - 8]
mov dword [eax + 0x18], ecx
mov ecx, dword [edx - 4]
mov dword [eax + 0x1c], ecx
mov eax, esi
mov edi, dword [esp + 0x1c]
cmp ebp, eax
jge 0x10241924
lea esi, [eax - 1]
sar esi, 1
mov edx, esi
shl edx, 5
add edx, ebx
mov ecx, dword [edx]
cmp ecx, edi
jae 0x10241924
shl eax, 5
add eax, ebx
mov dword [eax], ecx
mov cl, byte [edx + 4]
mov byte [eax + 4], cl
mov cx, word [edx + 6]
mov word [eax + 6], cx
mov ecx, dword [edx + 8]
mov dword [eax + 8], ecx
mov ecx, dword [edx + 0xc]
mov dword [eax + 0xc], ecx
mov ecx, dword [edx + 0x10]
mov dword [eax + 0x10], ecx
mov ecx, dword [edx + 0x14]
mov dword [eax + 0x14], ecx
mov ecx, dword [edx + 0x18]
mov dword [eax + 0x18], ecx
mov ecx, dword [edx + 0x1c]
mov dword [eax + 0x1c], ecx
mov eax, esi
cmp ebp, esi
jl 0x102418d3
mov cl, byte [esp + 0x20]
mov edx, dword [esp + 0x44]
shl eax, 5
add eax, ebx
lea esi, [edx - 1]
mov byte [eax + 4], cl
mov cx, word [esp + 0x22]
mov dword [eax], edi
mov word [eax + 6], cx
mov ecx, dword [esp + 0x24]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x28]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x2c]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 0x18], ecx
mov ecx, dword [esp + 0x38]
mov dword [eax + 0x1c], ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x40]
test ebp, ebp
jg 0x102417e0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x2c
ret