Function at 0x4527f0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
movzx edx, byte [eax + 6]
sub esp, 0xc
push ebx
lea ebx, [edx*4]
add dword [eax + 0xc], ebx
add edx, 0xfffffffd
cmp edx, 9
push esi
mov esi, dword [ebp + 8]
ja case.default.0x452815
jmp dword [edx*4 + 0x452df8]
test esi, esi
mov dword [ebp - 8], 0
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
mov edx, 0xffffffd4
jmp 0x452840
mov esi, dword [eax + 0xc]
mov ebx, dword [esi + edx - 4]
imul ebx, dword [eax + 0x40]
mov ecx, dword [esi + edx + 0x24]
imul ecx, dword [eax + 0x18]
add ebx, ecx
mov ecx, dword [esi + edx + 0x20]
imul ecx, dword [eax + 0x1c]
add ebx, ecx
mov ecx, dword [esi + edx + 0x1c]
imul ecx, dword [eax + 0x20]
add ebx, ecx
mov ecx, dword [esi + edx + 0x18]
imul ecx, dword [eax + 0x24]
add ebx, ecx
mov ecx, dword [esi + edx + 0x14]
imul ecx, dword [eax + 0x28]
add ebx, ecx
mov ecx, dword [esi + edx + 0x10]
imul ecx, dword [eax + 0x2c]
add ebx, ecx
mov ecx, dword [esi + edx + 0xc]
imul ecx, dword [eax + 0x30]
add ebx, ecx
mov ecx, dword [esi + edx + 8]
imul ecx, dword [eax + 0x34]
add ebx, ecx
mov ecx, dword [esi + edx + 4]
imul ecx, dword [eax + 0x38]
add ebx, ecx
mov ecx, dword [esi + edx]
imul ecx, dword [eax + 0x3c]
add ebx, ecx
mov ecx, dword [esi + edx + 0x28]
imul ecx, dword [eax + 0x14]
add ebx, ecx
mov ecx, dword [ebp - 4]
sar ebx, cl
mov ecx, dword [ebp - 8]
add ecx, 1
add edx, 4
add ebx, dword [edi + ecx*4 - 4]
cmp ecx, dword [ebp + 8]
mov dword [esi + edx + 0x28], ebx
mov dword [ebp - 8], ecx
jl 0x452840
jmp 0x452de3
test esi, esi
mov dword [ebp - 8], 0
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
mov edx, 0xffffffd8
lea esp, [esp]
mov esi, dword [eax + 0xc]
mov ebx, dword [edx + esi - 4]
imul ebx, dword [eax + 0x3c]
mov ecx, dword [edx + esi + 0x20]
imul ecx, dword [eax + 0x18]
add ebx, ecx
mov ecx, dword [edx + esi + 0x1c]
imul ecx, dword [eax + 0x1c]
add ebx, ecx
mov ecx, dword [edx + esi + 0x18]
imul ecx, dword [eax + 0x20]
add ebx, ecx
mov ecx, dword [edx + esi + 0x14]
imul ecx, dword [eax + 0x24]
add ebx, ecx
mov ecx, dword [edx + esi + 0x10]
imul ecx, dword [eax + 0x28]
add ebx, ecx
mov ecx, dword [edx + esi + 0xc]
imul ecx, dword [eax + 0x2c]
add ebx, ecx
mov ecx, dword [edx + esi + 8]
imul ecx, dword [eax + 0x30]
add ebx, ecx
mov ecx, dword [edx + esi + 4]
imul ecx, dword [eax + 0x34]
add ebx, ecx
mov ecx, dword [edx + esi]
imul ecx, dword [eax + 0x38]
add ebx, ecx
mov ecx, dword [edx + esi + 0x24]
imul ecx, dword [eax + 0x14]
add ebx, ecx
mov ecx, dword [ebp - 4]
sar ebx, cl
mov ecx, dword [ebp - 8]
add ecx, 1
add edx, 4
add ebx, dword [edi + ecx*4 - 4]
cmp ecx, dword [ebp + 8]
mov dword [edx + esi + 0x24], ebx
mov dword [ebp - 8], ecx
jl 0x452900
jmp 0x452de3
test esi, esi
mov dword [ebp - 8], 0
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
mov edx, 0xffffffdc
nop
mov esi, dword [eax + 0xc]
mov ebx, dword [esi + edx - 4]
imul ebx, dword [eax + 0x38]
mov ecx, dword [esi + edx + 0x1c]
imul ecx, dword [eax + 0x18]
add ebx, ecx
mov ecx, dword [esi + edx + 0x18]
imul ecx, dword [eax + 0x1c]
add ebx, ecx
mov ecx, dword [esi + edx + 0x14]
imul ecx, dword [eax + 0x20]
add ebx, ecx
mov ecx, dword [esi + edx + 0x10]
imul ecx, dword [eax + 0x24]
add ebx, ecx
mov ecx, dword [esi + edx + 0xc]
imul ecx, dword [eax + 0x28]
add ebx, ecx
mov ecx, dword [esi + edx + 8]
imul ecx, dword [eax + 0x2c]
add ebx, ecx
mov ecx, dword [esi + edx + 4]
imul ecx, dword [eax + 0x30]
add ebx, ecx
mov ecx, dword [esi + edx]
imul ecx, dword [eax + 0x34]
add ebx, ecx
mov ecx, dword [esi + edx + 0x20]
imul ecx, dword [eax + 0x14]
add ebx, ecx
mov ecx, dword [ebp - 4]
sar ebx, cl
mov ecx, dword [ebp - 8]
add ecx, 1
add edx, 4
add ebx, dword [edi + ecx*4 - 4]
cmp ecx, dword [ebp + 8]
mov dword [esi + edx + 0x20], ebx
mov dword [ebp - 8], ecx
jl 0x4529b0
jmp 0x452de3
test esi, esi
mov dword [ebp - 8], 0
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
mov edx, 0xffffffe0
mov esi, dword [eax + 0xc]
mov ebx, dword [edx + esi - 4]
imul ebx, dword [eax + 0x34]
mov ecx, dword [edx + esi + 0x18]
imul ecx, dword [eax + 0x18]
add ebx, ecx
mov ecx, dword [edx + esi + 0x14]
imul ecx, dword [eax + 0x1c]
add ebx, ecx
mov ecx, dword [edx + esi + 0x10]
imul ecx, dword [eax + 0x20]
add ebx, ecx
mov ecx, dword [edx + esi + 0xc]
imul ecx, dword [eax + 0x24]
add ebx, ecx
mov ecx, dword [edx + esi + 8]
imul ecx, dword [eax + 0x28]
add ebx, ecx
mov ecx, dword [edx + esi + 4]
imul ecx, dword [eax + 0x2c]
add ebx, ecx
mov ecx, dword [edx + esi]
imul ecx, dword [eax + 0x30]
add ebx, ecx
mov ecx, dword [edx + esi + 0x1c]
imul ecx, dword [eax + 0x14]
add ebx, ecx
mov ecx, dword [ebp - 4]
sar ebx, cl
mov ecx, dword [ebp - 8]
add ecx, 1
add edx, 4
add ebx, dword [edi + ecx*4 - 4]
cmp ecx, dword [ebp + 8]
mov dword [edx + esi + 0x1c], ebx
mov dword [ebp - 8], ecx
jl 0x452a55
jmp 0x452de3
test esi, esi
mov dword [ebp - 8], 0
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
mov edx, 0xffffffe4
lea esp, [esp]
mov esi, dword [eax + 0xc]
mov ebx, dword [edx + esi - 4]
imul ebx, dword [eax + 0x30]
mov ecx, dword [edx + esi + 0x14]
imul ecx, dword [eax + 0x18]
add ebx, ecx
mov ecx, dword [edx + esi + 0x10]
imul ecx, dword [eax + 0x1c]
add ebx, ecx
mov ecx, dword [edx + esi + 0xc]
imul ecx, dword [eax + 0x20]
add ebx, ecx
mov ecx, dword [edx + esi + 8]
imul ecx, dword [eax + 0x24]
add ebx, ecx
mov ecx, dword [edx + esi + 4]
imul ecx, dword [eax + 0x28]
add ebx, ecx
mov ecx, dword [edx + esi]
imul ecx, dword [eax + 0x2c]
add ebx, ecx
mov ecx, dword [edx + esi + 0x18]
imul ecx, dword [eax + 0x14]
add ebx, ecx
mov ecx, dword [ebp - 4]
sar ebx, cl
mov ecx, dword [ebp - 8]
add ecx, 1
add edx, 4
add ebx, dword [edi + ecx*4 - 4]
cmp ecx, dword [ebp + 8]
mov dword [edx + esi + 0x18], ebx
mov dword [ebp - 8], ecx
jl 0x452af0
jmp 0x452de3
test esi, esi
mov dword [ebp - 8], 0
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
mov edx, 0xffffffe8
lea ecx, [ecx]
mov esi, dword [eax + 0xc]
mov ebx, dword [esi + edx - 4]
imul ebx, dword [eax + 0x2c]
mov ecx, dword [esi + edx + 0x10]
imul ecx, dword [eax + 0x18]
add ebx, ecx
mov ecx, dword [esi + edx + 0xc]
imul ecx, dword [eax + 0x1c]
add ebx, ecx
mov ecx, dword [esi + edx + 8]
imul ecx, dword [eax + 0x20]
add ebx, ecx
mov ecx, dword [esi + edx + 4]
imul ecx, dword [eax + 0x24]
add ebx, ecx
mov ecx, dword [esi + edx]
imul ecx, dword [eax + 0x28]
add ebx, ecx
mov ecx, dword [esi + edx + 0x14]
imul ecx, dword [eax + 0x14]
add ebx, ecx
mov ecx, dword [ebp - 4]
sar ebx, cl
mov ecx, dword [ebp - 8]
add ecx, 1
add edx, 4
add ebx, dword [edi + ecx*4 - 4]
cmp ecx, dword [ebp + 8]
mov dword [esi + edx + 0x14], ebx
mov dword [ebp - 8], ecx
jl 0x452b80
jmp 0x452de3
test esi, esi
mov dword [ebp - 8], 0
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
mov edx, 0xffffffec
mov esi, dword [eax + 0xc]
mov ebx, dword [esi + edx - 4]
imul ebx, dword [eax + 0x28]
mov ecx, dword [esi + edx + 0xc]
imul ecx, dword [eax + 0x18]
add ebx, ecx
mov ecx, dword [esi + edx + 8]
imul ecx, dword [eax + 0x1c]
add ebx, ecx
mov ecx, dword [esi + edx + 4]
imul ecx, dword [eax + 0x20]
add ebx, ecx
mov ecx, dword [esi + edx]
imul ecx, dword [eax + 0x24]
add ebx, ecx
mov ecx, dword [esi + edx + 0x10]
imul ecx, dword [eax + 0x14]
add ebx, ecx
mov ecx, dword [ebp - 4]
sar ebx, cl
mov ecx, dword [ebp - 8]
add ecx, 1
add edx, 4
add ebx, dword [edi + ecx*4 - 4]
cmp ecx, dword [ebp + 8]
mov dword [esi + edx + 0x10], ebx
mov dword [ebp - 8], ecx
jl 0x452c03
jmp 0x452de3
test esi, esi
mov dword [ebp - 8], 0
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
mov edx, 0xfffffff0
lea esp, [esp]
mov esi, dword [eax + 0xc]
mov ebx, dword [edx + esi - 4]
imul ebx, dword [eax + 0x24]
mov ecx, dword [edx + esi + 8]
imul ecx, dword [eax + 0x18]
add ebx, ecx
mov ecx, dword [edx + esi + 4]
imul ecx, dword [eax + 0x1c]
add ebx, ecx
mov ecx, dword [edx + esi]
imul ecx, dword [eax + 0x20]
add ebx, ecx
mov ecx, dword [edx + esi + 0xc]
imul ecx, dword [eax + 0x14]
add ebx, ecx
mov ecx, dword [ebp - 4]
sar ebx, cl
mov ecx, dword [ebp - 8]
add ecx, 1
add edx, 4
add ebx, dword [edi + ecx*4 - 4]
cmp ecx, dword [ebp + 8]
mov dword [edx + esi + 0xc], ebx
mov dword [ebp - 8], ecx
jl 0x452c80
jmp 0x452de3
test esi, esi
mov dword [ebp - 8], 0
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
mov edx, 0xfffffff4
nop
mov esi, dword [eax + 0xc]
mov ebx, dword [edx + esi - 4]
imul ebx, dword [eax + 0x20]
mov ecx, dword [edx + esi]
imul ecx, dword [eax + 0x1c]
add ebx, ecx
mov ecx, dword [edx + esi + 4]
imul ecx, dword [eax + 0x18]
add ebx, ecx
mov ecx, dword [edx + esi + 8]
imul ecx, dword [eax + 0x14]
add ebx, ecx
mov ecx, dword [ebp - 4]
sar ebx, cl
mov ecx, dword [ebp - 8]
add ecx, 1
add edx, 4
add ebx, dword [edi + ecx*4 - 4]
cmp ecx, dword [ebp + 8]
mov dword [edx + esi + 8], ebx
mov dword [ebp - 8], ecx
jl 0x452cf0
jmp 0x452de3
xor edx, edx
test esi, esi
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
jmp 0x452d50
mov esi, dword [eax + 0xc]
mov ebx, dword [esi + edx*4 - 0xc]
imul ebx, dword [eax + 0x1c]
mov ecx, dword [esi + edx*4 - 8]
imul ecx, dword [eax + 0x18]
add ebx, ecx
mov ecx, dword [esi + edx*4 - 4]
imul ecx, dword [eax + 0x14]
add ebx, ecx
mov ecx, dword [ebp - 4]
sar ebx, cl
add edx, 1
add ebx, dword [edi + edx*4 - 4]
cmp edx, dword [ebp + 8]
mov dword [esi + edx*4 - 4], ebx
jl 0x452d50
jmp 0x452de3
xor ebx, ebx
test esi, esi
mov dword [ebp - 0xc], ebx
jle 0x452de3
movzx ecx, cl
mov dword [ebp - 4], ecx
xor edx, edx
cmp byte [eax + 6], 1
jb 0x452dc9
mov ecx, dword [eax + 0xc]
lea ecx, [ecx + ebx*4 - 4]
movzx ebx, byte [eax + 6]
lea esi, [eax + 0x14]
mov dword [ebp - 8], ebx
mov edi, edi
mov ebx, dword [esi]
imul ebx, dword [ecx]
add edx, ebx
add esi, 4
sub ecx, 4
sub dword [ebp - 8], 1
jne 0x452db0
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 0xc]
mov ecx, dword [ebp - 4]
sar edx, cl
mov ecx, dword [eax + 0xc]
add ebx, 1
mov dword [ebp - 0xc], ebx
add edx, dword [edi + ebx*4 - 4]
cmp ebx, esi
mov dword [ecx + ebx*4 - 4], edx
jl 0x452d95
movzx edx, byte [eax + 6]
neg edx
add edx, edx
add edx, edx
add dword [eax + 0xc], edx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4