Function at 0x7061e11a
Capabilities:
Enumerate pe sections

Disassembly:
sub ecx, 4
add edx, 4
add edi, 4
cmp ecx, 4
jae 0x7061e174
test ecx, ecx
jne 0x7061e17a
jmp 0x7061e315
mov edi, edi
push ebp
mov ebp, esp
sub esp, 8
push ebx
mov ebx, dword [ebp + 0x10]
push esi
mov esi, dword [ebp + 8]
cmp byte [esi + 0x34], 0
push edi
mov edi, dword [ebp + 0xc]
je 0x7061e3eb
mov ecx, dword [esi + 0x20]
test ecx, ecx
jne 0x7061e412
mov eax, dword [esi + 0x28]
test eax, eax
je 0x7061e1ac
mov dword [ebp + 8], 0
jbe 0x7061e1ac
mov edx, dword [esi + 0x24]
mov dword [ebp - 4], edx
movzx ecx, word [edx]
mov eax, ecx
shr eax, 1
cmp ebx, eax
jb 0x7061e19a
mov edx, dword [edx + 4]
sub ebx, eax
mov eax, dword [ebp + 0xc]
lea edi, [eax + ebx*2]
cmp ecx, 4
jb 0x7061e10c
mov eax, dword [edi]
cmp eax, dword [edx]
je 0x7061e0fe
movzx eax, byte [edi]
movzx ebx, byte [edx]
sub eax, ebx
je 0x7061e57e
sar eax, 0x1f
or eax, 1
je 0x7061e315
mov ebx, dword [ebp + 0x10]
mov edx, dword [ebp - 4]
mov eax, dword [ebp + 8]
inc eax
add edx, 8
mov dword [ebp + 8], eax
mov dword [ebp - 4], edx
cmp eax, dword [esi + 0x28]
jb 0x7061e159
mov eax, dword [ebp + 0xc]
lea edx, [ebx + ebx]
cmp edx, 8
mov dword [ebp + 8], 0x4cb2f
jl 0x7061e22b
mov ecx, edx
shr ecx, 3
mov edi, ecx
neg edi
lea edx, [edx + edi*8]
mov dword [ebp - 4], edx
movzx edx, byte [eax + 1]
movzx edi, byte [eax + 2]
imul edx, edx, 0x25
add edx, edi
movzx edi, byte [eax + 3]
imul edx, edx, 0x25
add edx, edi
movzx edi, byte [eax + 4]
imul edx, edx, 0x25
add edx, edi
movzx edi, byte [eax + 5]
imul edx, edx, 0x25
add edx, edi
movzx edi, byte [eax + 6]
imul edx, edx, 0x25
add edx, edi
mov edi, dword [ebp + 8]
imul edx, edx, 0x25
imul edi, edi, 0x2fe8ed1f
sub edx, edi
movzx edi, byte [eax]
imul edi, edi, 0x1a617d0d
add edx, edi
movzx edi, byte [eax + 7]
add edx, edi
add eax, 8
sub ecx, 1
mov dword [ebp + 8], edx
jne 0x7061e1cd
mov edx, dword [ebp - 4]
lea ecx, [edx - 1]
cmp ecx, 6
ja 0x7061e293
jmp dword [ecx*4 + 0x70a80930]
mov edx, dword [esi + 4]
mov ecx, edx
and ecx, 0x1f
or edi, 0xffffffff
shl edi, cl
mov ecx, dword [ebp + 8]
shr edx, 5
and ecx, edi
mov dword [ebp - 4], ecx
test edx, edx
je 0x7061e323
movzx eax, cl
add eax, 0xb15dcb
imul eax, eax, 0x25
movzx ebx, ch
add eax, ebx
movzx ebx, byte [ebp - 2]
imul eax, eax, 0x25
add eax, ebx
movzx ebx, byte [ebp - 1]
imul eax, eax, 0x25
add eax, ebx
dec edx
and edx, eax
mov eax, dword [esi + 8]
lea eax, [eax + edx*4]
mov eax, dword [eax]
test al, 1
jne 0x7061e320
mov edx, dword [eax + 4]
and edx, edi
cmp ecx, edx
jne 0x7061e5b5
mov ebx, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
mov edi, eax
push ebx
lea eax, [edi + 0x18]
push eax
push ecx
call dword [0x70a710e0]
add esp, 0xc
test eax, eax
jne 0x7061e482
cmp dword [edi + 0x14], ebx
jne 0x7061e482
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ebx, dword [ebp + 0x10]
cmp dword [esi + 0x2c], 0xffffffff
je 0x7061e51c
mov eax, dword [esi + 0x30]
lea ecx, [eax + ebx]
cmp ecx, eax
jb 0x7061e51c
mov eax, dword [esi + 0x18]
lea ecx, [ebx + ebx + 0x1c]
push ecx
test eax, eax
je 0x7061e4fa
push eax
call fcn.7061d7d3
mov edi, eax
test edi, edi
je 0x7061e510
mov ecx, dword [ebp + 0xc]
lea eax, [ebx + ebx]
push eax
push ecx
lea edx, [edi + 0x18]
push edx
mov dword [edi + 0x14], ebx
call 0x7060f84b
mov ecx, dword [ebp + 8]
xor eax, eax
mov word [edi + ebx*2 + 0x18], ax
mov dword [edi + 4], ecx
mov ecx, dword [esi + 4]
or edx, 0xffffffff
mov ebx, ecx
and ecx, 0x1f
shl edx, cl
shr ebx, 5
dec ebx
add esp, 0xc
and edx, dword [ebp + 8]
movzx eax, dl
add eax, 0xb15dcb
imul eax, eax, 0x25
mov dword [ebp + 0xc], edx
movzx ecx, byte [ebp + 0xe]
movzx edx, dh
add eax, edx
movzx edx, byte [ebp + 0xf]
imul eax, eax, 0x25
add eax, ecx
imul eax, eax, 0x25
add eax, edx
and ebx, eax
mov eax, dword [esi + 8]
mov ecx, dword [eax + ebx*4]
mov dword [edi], ecx
mov dword [eax + ebx*4], edi
inc dword [esi]
mov edx, dword [esi + 0x10]
lea eax, [eax + ebx*4]
lea ecx, [esi + 0xc]
lea eax, [edi + 8]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov dword [edx], eax
mov dword [ecx + 4], eax
inc dword [esi + 0x2c]
mov edx, dword [edi + 0x14]
add dword [esi + 0x30], edx
jmp 0x7061e315
test ebx, ebx
jbe 0x7061e138
mov dword [ebp + 8], ebx
movzx eax, word [edi]
push eax
call dword [0x70a71228]
mov word [edi], ax
add edi, 2
sub dword [ebp + 8], 1
je 0x7061e138
jmp 0x7061e3f6
mov edx, dword [ebp + 0xc]
lea eax, [ebx + ebx]
xor edi, edi
mov dword [ebp - 4], edx
mov word [ebp - 8], ax
mov word [ebp - 6], ax
test ecx, ecx
jbe 0x7061e143
movzx eax, byte [esi + 0x34]
mov ecx, dword [esi + 0x1c]
push eax
lea edx, [ecx + edi*8]
push edx
lea eax, [ebp - 8]
push eax
call 0x70693511
test eax, eax
jne 0x7061e315
inc edi
cmp edi, dword [esi + 0x20]
jae 0x7061e143
jmp 0x7061e42d
cmp ecx, 3
jbe 0x7061e315
movzx eax, byte [edi + 3]
movzx ecx, byte [edx + 3]
sub eax, ecx
jmp 0x7061e188
mov eax, dword [esi + 4]
mov ecx, eax
and ecx, 0x1f
or edx, 0xffffffff
shl edx, cl
mov ecx, edx
and ecx, dword [ebp + 8]
mov dword [ebp + 0x10], ecx
test edi, edi
jne 0x7061e4d7
shr eax, 5
mov dword [ebp - 4], eax
test eax, eax
je 0x7061e323
movzx eax, cl
add eax, 0xb15dcb
imul eax, eax, 0x25
movzx edi, ch
add eax, edi
movzx edi, byte [ebp + 0x12]
imul eax, eax, 0x25
add eax, edi
movzx edi, byte [ebp + 0x13]
imul eax, eax, 0x25
add eax, edi
mov edi, dword [ebp - 4]
dec edi
and edi, eax
mov eax, dword [esi + 8]
lea edi, [eax + edi*4]
mov eax, dword [edi]
test al, 1
jne 0x7061e323
mov edi, dword [eax + 4]
and edi, edx
cmp ecx, edi
je 0x7061e2f0
mov eax, dword [eax]
test al, 1
jne 0x7061e323
jmp 0x7061e4e1
mov edx, dword [0x70b1004c]
mov eax, dword [edx]
push 0
push eax
call dword [0x70a71294]
jmp 0x7061e351
lea eax, [edi + 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
pop edi
pop esi
mov eax, 0x216
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp ecx, 1
jbe 0x7061e315
movzx eax, byte [edi + 1]
movzx ebx, byte [edx + 1]
sub eax, ebx
jne 0x7061e188
cmp ecx, 2
jbe 0x7061e315
movzx eax, byte [edi + 2]
movzx ebx, byte [edx + 2]
sub eax, ebx
jne 0x7061e188
jmp 0x7061e456
mov eax, dword [eax]
test al, 1
je 0x7061e2e0
jmp 0x7061e320