Function at 0x42eab0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
xor ebp, ebp
push edi
push esi
push ebx
sub esp, 0x1c
mov eax, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
movzx ecx, byte [eax + 8]
mov eax, ecx
and eax, 3
cmp al, 2
je 0x42eae0
add esp, 0x1c
mov eax, ebp
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [esp + 0x30]
movzx eax, word [eax + 0x1e6]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x30]
movzx eax, word [eax + 0x1e8]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x30]
movzx eax, word [eax + 0x1ea]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x34]
movzx edx, byte [eax + 9]
cmp cl, 2
je 0x42ec48
cmp cl, 6
je 0x42eb80
mov eax, dword [esp + 0x34]
mov edi, dword [esp + 0x34]
and ecx, 0xfffffffd
movzx eax, byte [eax + 0xa]
mov byte [edi + 8], cl
mov byte [esp + 4], al
sub eax, 2
mov byte [edi + 0xa], al
imul eax, edx
mov byte [edi + 0xb], al
cmp al, 7
ja 0x42eb70
movzx edx, al
imul edx, dword [esp]
mov eax, edi
add edx, 7
shr edx, 3
mov dword [eax + 4], edx
add esp, 0x1c
mov eax, ebp
pop ebx
pop esi
pop edi
pop ebp
ret
shr al, 3
movzx edx, al
imul edx, dword [esp]
mov eax, edi
jmp 0x42eb61
mov eax, dword [esp + 0x30]
cmp dl, 8
je 0x42efc8
mov ebx, dword [eax + 0x134]
test ebx, ebx
je 0x42ed08
mov ebx, dword [eax + 0x130]
test ebx, ebx
je 0x42ed08
mov eax, dword [esp]
test eax, eax
je 0x42eb2c
mov dword [esp + 0x10], ebp
xor esi, esi
lea esi, [esi]
movzx ebx, byte [edi + esi*8 + 2]
movzx ecx, byte [edi + esi*8 + 3]
movzx eax, byte [edi + esi*8]
movzx edx, byte [edi + esi*8 + 1]
shl ebx, 8
movzx ebp, byte [edi + esi*8 + 5]
or ebx, ecx
movzx ecx, byte [edi + esi*8 + 4]
shl eax, 8
or edx, eax
shr ax, 8
shl ecx, 8
or ecx, ebp
mov word [esp + 0x18], cx
cmp dx, bx
jne 0x42ef00
cmp dx, cx
jne 0x42ef00
mov byte [edi + esi*4], al
mov byte [edi + esi*4 + 1], dl
movzx eax, byte [edi + esi*8 + 6]
mov byte [edi + esi*4 + 2], al
movzx eax, byte [edi + esi*8 + 7]
mov byte [edi + esi*4 + 3], al
add esi, 1
cmp dword [esp], esi
jne 0x42ebc0
mov ebp, dword [esp + 0x10]
lea esi, [esi]
mov eax, dword [esp + 0x34]
movzx ecx, byte [eax + 8]
movzx edx, byte [eax + 9]
jmp 0x42eb2c
mov eax, dword [esp + 0x30]
cmp dl, 8
je 0x42f070
mov ebx, dword [eax + 0x134]
test ebx, ebx
je 0x42eda8
mov eax, dword [eax + 0x130]
test eax, eax
je 0x42eda8
mov eax, dword [esp]
test eax, eax
je 0x42f27d
mov dword [esp + 0x10], 0
mov eax, edi
mov dword [esp + 0x38], edi
lea esi, [esi]
movzx esi, byte [eax + 2]
movzx ecx, byte [eax + 3]
add eax, 6
movzx edx, byte [eax - 6]
movzx ebx, byte [eax - 5]
movzx edi, byte [eax - 2]
shl esi, 8
shl edx, 8
or esi, ecx
movzx ecx, byte [eax - 1]
or ebx, edx
shl edi, 8
or edi, ecx
shr dx, 8
cmp bx, si
jne 0x42ee30
cmp bx, di
jne 0x42ee30
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x38]
mov byte [edi + esi*2], dl
mov byte [edi + esi*2 + 1], bl
add esi, 1
mov dword [esp + 0x10], esi
cmp dword [esp], esi
jne 0x42ec90
lea esi, [esi]
nop
mov eax, dword [esp + 0x34]
movzx ecx, byte [eax + 8]
movzx edx, byte [eax + 9]
jmp 0x42eb27
mov esi, dword [esp]
xor ebx, ebx
test esi, esi
jne 0x42ed69
jmp 0x42eb2c
cmp cx, ax
jne 0x42ed9a
movzx ecx, cx
imul ecx, dword [esp + 8]
movzx eax, ax
movzx edx, dx
imul eax, dword [esp + 4]
imul edx, dword [esp + 0xc]
add ecx, eax
add ecx, edx
shr ecx, 0xf
mov byte [edi + ebx*4], ch
mov byte [edi + ebx*4 + 1], cl
movzx eax, byte [edi + ebx*8 + 6]
mov byte [edi + ebx*4 + 2], al
movzx eax, byte [edi + ebx*8 + 7]
mov byte [edi + ebx*4 + 3], al
add ebx, 1
cmp dword [esp], ebx
je 0x42ec30
movzx eax, byte [edi + ebx*8]
movzx edx, byte [edi + ebx*8 + 1]
movzx ecx, byte [edi + ebx*8 + 2]
movzx esi, byte [edi + ebx*8 + 5]
shl eax, 8
or eax, edx
movzx edx, byte [edi + ebx*8 + 3]
shl ecx, 8
or ecx, edx
movzx edx, byte [edi + ebx*8 + 4]
shl edx, 8
or edx, esi
cmp dx, ax
je 0x42ed20
mov ebp, 1
jmp 0x42ed25
mov eax, dword [esp]
mov ebx, edi
xor ebp, ebp
xor esi, esi
test eax, eax
je 0x42f27d
mov dword [esp + 0x10], ebp
jmp 0x42edf7
cmp cx, ax
jne 0x42ee25
movzx ecx, cx
imul ecx, dword [esp + 8]
movzx eax, ax
movzx edx, dx
imul eax, dword [esp + 4]
imul edx, dword [esp + 0xc]
add ecx, eax
add ecx, edx
shr ecx, 0xf
mov byte [edi + esi*2], ch
mov byte [edi + esi*2 + 1], cl
add esi, 1
cmp dword [esp], esi
je 0x42f140
movzx eax, byte [ebx]
movzx edx, byte [ebx + 1]
add ebx, 6
movzx ecx, byte [ebx - 4]
movzx ebp, byte [ebx - 1]
shl eax, 8
or eax, edx
movzx edx, byte [ebx - 3]
shl ecx, 8
or ecx, edx
movzx edx, byte [ebx - 2]
shl edx, 8
or edx, ebp
cmp dx, ax
je 0x42edc0
mov dword [esp + 0x10], 1
jmp 0x42edc5
mov ecx, dword [esp + 0x30]
mov ebp, dword [esp + 0x30]
movzx ebx, bl
movzx edx, dx
mov ecx, dword [ecx + 0x134]
mov ebp, dword [ebp + 0x114]
mov dword [esp + 0x14], ecx
mov ecx, esi
mov dword [esp + 0x18], ebp
movzx ebp, cl
movzx ecx, byte [esp + 0x18]
sar ebp, cl
mov ecx, esi
movzx esi, ch
mov ecx, dword [esp + 0x14]
mov ecx, dword [ecx + ebp*4]
mov ebp, dword [esp + 0x18]
movzx esi, word [ecx + esi*2]
mov ecx, ebp
imul esi, dword [esp + 8]
sar ebx, cl
mov ecx, dword [esp + 0x14]
mov ecx, dword [ecx + ebx*4]
mov ebx, edi
movzx edx, word [ecx + edx*2]
imul edx, dword [esp + 4]
mov ecx, ebp
add esi, edx
movzx edx, bl
mov ebx, edi
sar edx, cl
mov ecx, dword [esp + 0x14]
movzx edi, bh
mov edx, dword [ecx + edx*4]
mov ecx, ebp
mov ebp, 1
movzx edx, word [edx + edi*2]
imul edx, dword [esp + 0xc]
mov edi, dword [esp + 0x30]
add edx, esi
mov esi, dword [esp + 0x10]
shr edx, 0xf
movzx ebx, dl
movzx edx, dh
sar ebx, cl
mov ecx, dword [edi + 0x130]
mov edi, dword [esp + 0x38]
mov ecx, dword [ecx + ebx*4]
movzx edx, word [ecx + edx*2]
mov ecx, edx
mov byte [edi + esi*2 + 1], dl
shr cx, 8
mov byte [edi + esi*2], cl
add esi, 1
mov dword [esp + 0x10], esi
cmp esi, dword [esp]
jne 0x42ec90
jmp 0x42ecf0
mov ecx, dword [esp + 0x30]
movzx edx, dl
movzx eax, ax
mov ebp, dword [ecx + 0x134]
mov ecx, dword [ecx + 0x114]
mov dword [esp + 0x14], ebp
movzx ebp, bl
movzx ebx, bh
mov dword [esp + 0x10], ecx
sar ebp, cl
mov ecx, dword [esp + 0x14]
mov ebp, dword [ecx + ebp*4]
movzx ecx, byte [esp + 0x10]
movzx ebx, word [ebp + ebx*2]
mov ebp, dword [esp + 0x14]
sar edx, cl
imul ebx, dword [esp + 8]
mov edx, dword [ebp + edx*4]
movzx eax, word [edx + eax*2]
imul eax, dword [esp + 4]
movzx edx, word [esp + 0x18]
add ebx, eax
movzx eax, dl
movzx edx, dh
sar eax, cl
mov eax, dword [ebp + eax*4]
movzx eax, word [eax + edx*2]
imul eax, dword [esp + 0xc]
mov edx, dword [esp + 0x30]
add ebx, eax
mov edx, dword [edx + 0x130]
shr ebx, 0xf
movzx eax, bl
movzx ebx, bh
sar eax, cl
mov eax, dword [edx + eax*4]
movzx eax, word [eax + ebx*2]
mov edx, eax
mov byte [edi + esi*4 + 1], al
shr dx, 8
mov byte [edi + esi*4], dl
movzx eax, byte [edi + esi*8 + 6]
mov byte [edi + esi*4 + 2], al
movzx eax, byte [edi + esi*8 + 7]
mov byte [edi + esi*4 + 3], al
add esi, 1
cmp dword [esp], esi
je 0x42f258
mov dword [esp + 0x10], 1
jmp 0x42ebc0
mov esi, dword [eax + 0x124]
test esi, esi
je 0x42f150
mov ebx, dword [eax + 0x128]
test ebx, ebx
je 0x42f150
mov eax, dword [esp]
test eax, eax
je 0x42eb2c
mov dword [esp + 0x10], ebp
xor edx, edx
jmp 0x42f046
cmp cl, bl
jne 0x42f064
imul eax, dword [esp + 8]
imul ecx, dword [esp + 4]
imul ebx, dword [esp + 0xc]
add ecx, eax
add ecx, ebx
shr ecx, 0xf
movzx eax, byte [esi + ecx]
mov byte [edi + edx*2], al
movzx eax, byte [edi + edx*4 + 3]
mov byte [edi + edx*2 + 1], al
add edx, 1
cmp dword [esp], edx
je 0x42f240
mov eax, dword [esp + 0x30]
mov ebx, dword [eax + 0x128]
mov esi, dword [eax + 0x124]
movzx eax, byte [edi + edx*4]
movzx ebp, byte [edi + edx*4 + 2]
movzx ecx, byte [ebx + eax]
movzx eax, byte [edi + edx*4 + 1]
movzx eax, byte [ebx + eax]
movzx ebx, byte [ebx + ebp]
cmp cl, al
je 0x42f000
mov dword [esp + 0x10], 1
jmp 0x42f004
mov ebx, dword [eax + 0x124]
test ebx, ebx
je 0x42f1b8
mov ebx, dword [eax + 0x128]
test ebx, ebx
je 0x42f1b8
mov eax, dword [esp]
test eax, eax
je 0x42f285
lea eax, [eax + eax*2]
mov dword [esp + 0x38], edi
mov esi, edi
mov edx, edi
add eax, edi
mov dword [esp + 0x18], ebp
mov edi, dword [esp + 0x30]
mov dword [esp + 0x14], eax
jmp 0x42f0d1
cmp cl, bl
jne 0x42f0f7
mov byte [esi], al
add esi, 1
cmp edx, dword [esp + 0x14]
je 0x42f262
mov ebx, dword [edi + 0x128]
movzx eax, byte [edx]
add edx, 3
movzx ecx, byte [ebx + eax]
movzx eax, byte [edx - 2]
movzx ebp, byte [edx - 1]
movzx eax, byte [ebx + eax]
movzx ebx, byte [ebx + ebp]
mov byte [esp + 0x10], al
mov eax, ebp
cmp cl, byte [esp + 0x10]
je 0x42f0b8
imul ecx, dword [esp + 4]
movzx eax, byte [esp + 0x10]
add esi, 1
imul eax, dword [esp + 8]
imul ebx, dword [esp + 0xc]
add ecx, eax
mov eax, dword [edi + 0x124]
add ecx, ebx
shr ecx, 0xf
movzx eax, byte [eax + ecx]
mov byte [esi - 1], al
cmp edx, dword [esp + 0x14]
je 0x42f26f
mov dword [esp + 0x18], 1
jmp 0x42f0cb
mov ebp, dword [esp + 0x10]
jmp 0x42ecf0
mov eax, dword [esp]
mov esi, dword [esp + 0xc]
xor ebx, ebx
test eax, eax
jne 0x42f198
jmp 0x42eb2c
cmp cl, al
jne 0x42f1aa
imul ecx, dword [esp + 8]
imul eax, dword [esp + 4]
imul edx, esi
add eax, ecx
add eax, edx
shr eax, 0xf
mov byte [edi + ebx*2], al
movzx eax, byte [edi + ebx*4 + 3]
mov byte [edi + ebx*2 + 1], al
add ebx, 1
cmp dword [esp], ebx
je 0x42ec30
movzx eax, byte [edi + ebx*4]
movzx edx, byte [edi + ebx*4 + 2]
movzx ecx, byte [edi + ebx*4 + 1]
cmp dl, al
je 0x42f168
mov ebp, 1
jmp 0x42f16c
mov esi, dword [esp]
xor ebp, ebp
test esi, esi
je 0x42eb2c
mov eax, dword [esp]
mov esi, edi
mov edx, edi
xor ebp, ebp
lea eax, [eax + eax*2]
add eax, edi
mov dword [esp + 0x10], eax
lea esi, [esi]
nop
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
add edx, 3
movzx ebx, byte [edx - 1]
cmp bl, cl
jne 0x42f210
cmp al, cl
jne 0x42f210
mov byte [esi], bl
add esi, 1
cmp dword [esp + 0x10], edx
jne 0x42f1e0
jmp 0x42ecf0
imul ecx, dword [esp + 4]
add esi, 1
mov ebp, 1
imul eax, dword [esp + 8]
add eax, ecx
movzx ecx, bl
imul ecx, dword [esp + 0xc]
add ecx, eax
shr ecx, 0xf
mov byte [esi - 1], cl
cmp dword [esp + 0x10], edx
jne 0x42f1e0
jmp 0x42ecf0
mov eax, dword [esp + 0x34]
mov ebp, dword [esp + 0x10]
movzx ecx, byte [eax + 8]
movzx edx, byte [eax + 9]
jmp 0x42eb2c
mov ebp, 1
jmp 0x42ec30
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x38]
jmp 0x42ecf0
mov edi, dword [esp + 0x38]
mov ebp, 1
jmp 0x42ecf0
mov ebp, dword [esp]
jmp 0x42eb2c
mov ebp, eax
jmp 0x42eb2c