Function at 0x45ef00
Capabilities:
Enumerate pe sections

Disassembly:
push ecx
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x14]
push edi
mov edi, 1
lea ebp, [eax - 9]
mov dword [ecx], 0xffffffff
cmp ebp, edi
mov dword [edx], 0xffffffff
mov dword [esp + 0x10], 0
mov bl, 0x20
jle 0x45f29b
mov cl, byte [edi + esi]
cmp cl, 0xd
jne 0x45ef50
mov dword [esp + 0x10], 0
jmp 0x45f28b
cmp dword [esp + 0x10], 0x50
jne 0x45ef5f
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x20]
cmp eax, 9
mov eax, dword [edx]
jg 0x45f04a
cmp eax, 0xffffffff
jne 0x45f135
mov al, byte [edi + esi - 1]
cmp al, 0xd
je 0x45ef8b
cmp al, 0x2a
je 0x45ef8b
cmp al, bl
jne 0x45f135
mov eax, dword [esp + 0x20]
movsx ecx, cl
add eax, 0x30
cmp ecx, eax
jne 0x45f135
mov al, byte [edi + esi + 1]
cmp al, bl
je 0x45efb5
cmp al, 0x2b
je 0x45efb5
cmp al, 0x2d
je 0x45efb5
cmp al, 0x5e
jne 0x45f135
cmp byte [edi + esi + 2], bl
jne 0x45f135
mov al, byte [edi + esi + 3]
cmp al, bl
je 0x45efcf
cmp al, 0x2a
jne 0x45f135
mov dl, byte [edi + esi + 4]
push edx
call fcn.004ee9d0
add esp, 4
test al, al
jne 0x45eff5
mov al, byte [edi + esi + 4]
push eax
call fcn.004ee9f0
add esp, 4
test al, al
je 0x45f135
mov cl, byte [edi + esi + 5]
push ecx
call fcn.004ee9d0
add esp, 4
test al, al
jne 0x45f01b
mov dl, byte [edi + esi + 5]
push edx
call fcn.004ee9f0
add esp, 4
test al, al
je 0x45f135
mov al, byte [edi + esi + 6]
push eax
call fcn.004ee9d0
add esp, 4
test al, al
jne 0x45f12f
mov cl, byte [edi + esi + 6]
push ecx
call fcn.004ee9f0
add esp, 4
test al, al
je 0x45f135
jmp 0x45f12f
cmp eax, 0xffffffff
jne 0x45f135
mov al, byte [edi + esi - 1]
cmp al, 0xd
je 0x45f067
cmp al, 0x2a
je 0x45f067
cmp al, bl
jne 0x45f135
mov ebp, dword [esp + 0x20]
mov eax, 0x66666667
imul ebp
sar edx, 2
mov eax, edx
shr eax, 0x1f
lea edx, [edx + eax + 0x30]
movsx eax, cl
cmp eax, edx
jne 0x45f135
mov eax, ebp
mov ebp, 0xa
cdq
idiv ebp
movsx ecx, byte [edi + esi + 1]
add edx, 0x30
cmp ecx, edx
jne 0x45f135
mov al, byte [edi + esi + 2]
cmp al, bl
je 0x45f0b7
cmp al, 0x2b
je 0x45f0b7
cmp al, 0x2d
je 0x45f0b7
cmp al, 0x5e
jne 0x45f135
cmp byte [edi + esi + 3], bl
jne 0x45f135
mov al, byte [edi + esi + 4]
cmp al, bl
je 0x45f0c9
cmp al, 0x2a
jne 0x45f135
mov dl, byte [edi + esi + 5]
push edx
call fcn.004ee9d0
add esp, 4
test al, al
jne 0x45f0eb
mov al, byte [edi + esi + 5]
push eax
call fcn.004ee9f0
add esp, 4
test al, al
je 0x45f135
mov cl, byte [edi + esi + 6]
push ecx
call fcn.004ee9d0
add esp, 4
test al, al
jne 0x45f10d
mov dl, byte [edi + esi + 6]
push edx
call fcn.004ee9f0
add esp, 4
test al, al
je 0x45f135
mov al, byte [edi + esi + 7]
push eax
call fcn.004ee9d0
add esp, 4
test al, al
jne 0x45f12f
mov cl, byte [edi + esi + 7]
push ecx
call fcn.004ee9f0
add esp, 4
test al, al
je 0x45f135
mov edx, dword [esp + 0x24]
mov dword [edx], edi
cmp dword [esp + 0x20], 9
jge 0x45f1d9
mov eax, dword [esp + 0x24]
cmp dword [eax], 0xffffffff
je 0x45f27a
mov al, byte [edi + esi - 1]
cmp al, 0xd
je 0x45f169
cmp al, 0x2a
je 0x45f169
cmp al, bl
je 0x45f169
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x45f27a
mov ecx, dword [esp + 0x20]
movsx edx, byte [edi + esi]
add ecx, 0x31
cmp edx, ecx
jne 0x45f27a
mov al, byte [edi + esi + 1]
cmp al, bl
je 0x45f190
cmp al, 0x2b
je 0x45f190
cmp al, 0x2d
jne 0x45f27a
cmp byte [edi + esi + 2], bl
jne 0x45f27a
mov al, byte [edi + esi + 3]
cmp al, bl
je 0x45f1aa
cmp al, 0x2a
jne 0x45f27a
mov al, byte [edi + esi + 4]
push eax
call fcn.004ee9f0
add esp, 4
test al, al
jne 0x45f2c5
mov cl, byte [edi + esi + 5]
push ecx
call fcn.004ee9f0
add esp, 4
test al, al
jne 0x45f2c5
jmp 0x45f27a
mov edx, dword [esp + 0x24]
cmp dword [edx], 0xffffffff
je 0x45f27a
mov al, byte [edi + esi - 1]
cmp al, 0xd
je 0x45f1fe
cmp al, 0x2a
je 0x45f1fe
cmp al, bl
je 0x45f1fe
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x45f27a
mov eax, dword [esp + 0x20]
lea ecx, [eax + 1]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
lea edx, [edx + eax + 0x30]
movsx eax, byte [edi + esi]
cmp eax, edx
jne 0x45f27a
mov eax, ecx
mov ecx, 0xa
cdq
idiv ecx
movsx ebp, byte [edi + esi + 1]
add edx, 0x30
cmp ebp, edx
jne 0x45f27a
mov al, byte [edi + esi + 2]
cmp al, bl
je 0x45f246
cmp al, 0x2b
je 0x45f246
cmp al, 0x2d
jne 0x45f27a
cmp byte [edi + esi + 3], bl
jne 0x45f27a
mov al, byte [edi + esi + 4]
cmp al, bl
je 0x45f258
cmp al, 0x2a
jne 0x45f27a
mov dl, byte [edi + esi + 5]
push edx
call fcn.004ee9f0
add esp, 4
test al, al
jne 0x45f2d5
mov al, byte [edi + esi + 6]
push eax
call fcn.004ee9f0
add esp, 4
test al, al
jne 0x45f2d5
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x24]
inc eax
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x1c]
inc edi
lea ebp, [eax - 9]
cmp edi, ebp
jl 0x45ef3b
mov ecx, dword [esp + 0x28]
cmp dword [edx], 0
jl 0x45f2a8
cmp dword [ecx], 0xffffffff
jne 0x45f2a8
dec eax
mov dword [ecx], eax
mov edi, dword [esp + 0x24]
mov edx, dword [edi]
test edx, edx
jl 0x45f2e5
mov eax, dword [esp + 0x28]
cmp dword [eax], 0
jle 0x45f2e5
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
pop ecx
ret 0x14
mov ecx, dword [esp + 0x28]
mov al, 1
mov dword [ecx], edi
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret 0x14
mov edx, dword [esp + 0x28]
mov al, 1
mov dword [edx], edi
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret 0x14
mov eax, 1
cmp ebp, eax
jle 0x45f39f
cmp edx, 0xffffffff
jne 0x45f33e
mov cl, byte [eax + esi - 1]
cmp cl, 0xd
je 0x45f309
cmp cl, 0x2a
je 0x45f309
cmp cl, bl
jne 0x45f33e
movsx ecx, byte [eax + esi]
mov edx, dword [esp + 0x20]
add edx, 0x30
cmp ecx, edx
jne 0x45f33e
mov cl, byte [eax + esi + 1]
cmp cl, bl
je 0x45f32a
cmp cl, 0x2b
je 0x45f32a
cmp cl, 0x2d
jne 0x45f33e
cmp byte [eax + esi + 2], bl
jne 0x45f33e
cmp byte [eax + esi + 3], bl
je 0x45f33e
cmp byte [eax + esi + 4], bl
je 0x45f33e
mov dword [edi], eax
mov edx, dword [edi]
cmp edx, 0xffffffff
je 0x45f396
mov cl, byte [eax + esi - 1]
cmp cl, 0xd
je 0x45f35f
cmp cl, 0x2a
je 0x45f35f
cmp cl, bl
je 0x45f35f
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x45f396
movsx ecx, byte [eax + esi]
mov edi, dword [esp + 0x20]
add edi, 0x31
cmp ecx, edi
jne 0x45f392
mov cl, byte [eax + esi + 1]
cmp cl, bl
je 0x45f380
cmp cl, 0x2b
je 0x45f380
cmp cl, 0x2d
jne 0x45f392
cmp byte [eax + esi + 2], bl
jne 0x45f392
cmp byte [eax + esi + 3], bl
je 0x45f392
cmp byte [eax + esi + 4], bl
jne 0x45f3b7
mov edi, dword [esp + 0x24]
inc eax
cmp eax, ebp
jl 0x45f2f2
cmp dword [edi], 0
jl 0x45f3c7
mov eax, dword [esp + 0x28]
cmp dword [eax], 0
jle 0x45f3c7
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
pop ecx
ret 0x14
mov edx, dword [esp + 0x28]
pop edi
pop esi
pop ebp
mov dword [edx], eax
mov al, 1
pop ebx
pop ecx
ret 0x14
pop edi
pop esi
pop ebp
xor al, al
pop ebx
pop ecx
ret 0x14