Function at 0x5ae190
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
mov ebx, dword [ebp + 8]
mov eax, 1
push esi
mov esi, dword [ebp + 0x14]
push edi
cmp ax, word [ebx + 0x22]
mov edi, dword [ebp + 0x10]
sbb eax, eax
and eax, 4
add eax, 8
push edi
push esi
mov dword [ebp - 4], eax
call fcn.004387b0
add esp, 8
test eax, eax
jne 0x5ae1c9
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebx + 8], 0x10
mov esi, dword [esi + 4]
jge 0x5ae1d9
mov dword [ebx + 8], 0x10
cmp dword [ebx + 0xc], 0x10
jge 0x5ae1e6
mov dword [ebx + 0xc], 0x10
cmp edi, dword [ebp - 4]
jb 0x5ae39c
mov edi, dword [ebp + 0xc]
xor eax, eax
mov dword [ebp + 8], eax
movzx ecx, word [ebx + 0x2c]
cdq
idiv ecx
test edx, edx
jne 0x5ae331
mov al, byte [ebx + 4]
cmp word [ebx + 0x22], 1
mov byte [esi], al
jbe 0x5ae2d1
mov al, byte [ebx + 5]
mov byte [esi + 1], al
mov al, byte [ebx + 8]
mov byte [esi + 2], al
mov eax, dword [ebx + 8]
sar eax, 8
mov byte [esi + 3], al
mov al, byte [ebx + 0xc]
mov byte [esi + 4], al
mov eax, dword [ebx + 0xc]
sar eax, 8
mov byte [esi + 5], al
movzx eax, byte [edi + 5]
shl ax, 8
movsx ecx, ax
movzx eax, byte [edi + 4]
or ecx, eax
add dword [ebp + 8], 0xe
mov dword [ebx + 0x10], ecx
movzx eax, byte [edi + 7]
shl ax, 8
movsx ecx, ax
movzx eax, byte [edi + 6]
or ecx, eax
mov dword [ebx + 0x14], ecx
movzx eax, byte [edi + 1]
shl ax, 8
movsx ecx, ax
movzx eax, byte [edi]
or ecx, eax
mov dword [ebx + 0x18], ecx
movzx eax, byte [edi + 3]
shl ax, 8
movsx ecx, ax
movzx eax, byte [edi + 2]
add edi, 8
or ecx, eax
mov dword [ebx + 0x1c], ecx
mov ecx, dword [ebx + 0x10]
mov eax, ecx
sar eax, 8
mov byte [esi + 7], al
mov byte [esi + 6], cl
mov ecx, dword [ebx + 0x14]
mov eax, ecx
sar eax, 8
mov byte [esi + 9], al
mov byte [esi + 8], cl
mov ecx, dword [ebx + 0x18]
mov eax, ecx
sar eax, 8
mov byte [esi + 0xb], al
mov byte [esi + 0xa], cl
mov ecx, dword [ebx + 0x1c]
mov eax, ecx
sar eax, 8
mov byte [esi + 0xd], al
mov byte [esi + 0xc], cl
add esi, 0xe
sub dword [ebp + 0x10], 8
jmp 0x5ae331
mov al, byte [ebx + 8]
mov byte [esi + 1], al
mov eax, dword [ebx + 8]
sar eax, 8
mov byte [esi + 2], al
movzx eax, byte [edi + 3]
shl ax, 8
movsx ecx, ax
movzx eax, byte [edi + 2]
or ecx, eax
add dword [ebp + 8], 7
mov dword [ebx + 0x10], ecx
movzx eax, byte [edi + 1]
shl ax, 8
movsx ecx, ax
movzx eax, byte [edi]
add edi, 4
or ecx, eax
mov dword [ebx + 0x18], ecx
mov ecx, dword [ebx + 0x10]
mov eax, ecx
sar eax, 8
mov byte [esi + 4], al
mov byte [esi + 3], cl
mov ecx, dword [ebx + 0x18]
mov eax, ecx
sar eax, 8
mov byte [esi + 6], al
mov byte [esi + 5], cl
add esi, 7
sub dword [ebp + 0x10], 4
movzx eax, byte [edi + 1]
shl ax, 8
movsx ecx, ax
movzx eax, byte [edi]
or ecx, eax
lea eax, [ebx + 4]
push 0
push ecx
push eax
call fcn.005ae3b0
shl al, 4
mov byte [esi], al
movzx eax, byte [edi + 3]
shl ax, 8
movsx ecx, ax
movzx eax, byte [edi + 2]
add edi, 4
or ecx, eax
mov ax, 1
cmp ax, word [ebx + 0x22]
sbb eax, eax
neg eax
push eax
push ecx
lea eax, [ebx + 4]
push eax
call fcn.005ae3b0
add byte [esi], al
add esp, 0x18
mov ecx, dword [ebp + 0x10]
inc esi
mov eax, dword [ebp + 8]
sub ecx, 4
inc eax
mov dword [ebp + 0x10], ecx
mov dword [ebp + 8], eax
cmp ecx, dword [ebp - 4]
jae 0x5ae1f7
mov eax, dword [ebp + 0x14]
pop edi
mov dword [eax + 4], esi
mov eax, 1
pop esi
pop ebx
mov esp, ebp
pop ebp
ret