Function at 0x616d30
Capabilities:
Enumerate pe sections

Disassembly:
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
push esi
mov esi, dword [esp + 0x10]
push edi
xor edi, edi
cmp esi, 4
jl 0x616f3c
lea edx, [esi - 4]
shr edx, 2
inc edx
lea edi, [edx*4]
push ebx
jmp 0x616d60
mov bx, word [eax]
mov word [ecx], bx
mov bx, word [eax + 2]
mov word [ecx + 2], bx
mov bx, word [eax + 4]
mov word [ecx + 4], bx
mov bx, word [eax + 6]
mov word [ecx + 6], bx
movzx ebx, byte [eax + 8]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 8]
movzx ebx, byte [eax + 9]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 0xc]
movzx ebx, byte [eax + 0xa]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 0x10]
movzx ebx, byte [eax + 0xb]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 0x14]
mov bx, word [eax + 0xc]
mov word [ecx + 0x18], bx
mov bx, word [eax + 0xe]
mov word [ecx + 0x1a], bx
mov bx, word [eax + 0x10]
mov word [ecx + 0x1c], bx
mov bx, word [eax + 0x12]
mov word [ecx + 0x1e], bx
movzx ebx, byte [eax + 0x14]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 0x20]
movzx ebx, byte [eax + 0x15]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 0x24]
movzx ebx, byte [eax + 0x16]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 0x28]
movzx ebx, byte [eax + 0x17]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 0x2c]
mov bx, word [eax + 0x18]
mov word [ecx + 0x30], bx
mov bx, word [eax + 0x1a]
mov word [ecx + 0x32], bx
mov bx, word [eax + 0x1c]
mov word [ecx + 0x34], bx
mov bx, word [eax + 0x1e]
mov word [ecx + 0x36], bx
movzx ebx, byte [eax + 0x20]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 0x38]
movzx ebx, byte [eax + 0x21]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 0x3c]
movzx ebx, byte [eax + 0x22]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx + 0x40]
movzx ebx, byte [eax + 0x23]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
add eax, 0x30
add ecx, 0x60
dec edx
fmul dword [0x69eb48]
fstp dword [ecx - 0x1c]
mov bx, word [eax - 0xc]
mov word [ecx - 0x18], bx
mov bx, word [eax - 0xa]
mov word [ecx - 0x16], bx
mov bx, word [eax - 8]
mov word [ecx - 0x14], bx
mov bx, word [eax - 6]
mov word [ecx - 0x12], bx
movzx ebx, byte [eax - 4]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx - 0x10]
movzx ebx, byte [eax - 3]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx - 0xc]
movzx ebx, byte [eax - 2]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx - 8]
movzx ebx, byte [eax - 1]
mov dword [esp + 0x18], ebx
fild dword [esp + 0x18]
fmul dword [0x69eb48]
fstp dword [ecx - 4]
jne 0x616d60
pop ebx
cmp edi, esi
jge 0x616fbf
sub esi, edi
mov edx, esi
mov si, word [eax]
mov word [ecx], si
mov si, word [eax + 2]
mov word [ecx + 2], si
mov si, word [eax + 4]
mov word [ecx + 4], si
mov si, word [eax + 6]
mov word [ecx + 6], si
movzx esi, byte [eax + 8]
mov dword [esp + 0x14], esi
add eax, 0xc
add ecx, 0x18
dec edx
fild dword [esp + 0x14]
fmul dword [0x69eb48]
fstp dword [ecx - 0x10]
movzx esi, byte [eax - 3]
mov dword [esp + 0x14], esi
fild dword [esp + 0x14]
fmul dword [0x69eb48]
fstp dword [ecx - 0xc]
movzx esi, byte [eax - 2]
mov dword [esp + 0x14], esi
fild dword [esp + 0x14]
fmul dword [0x69eb48]
fstp dword [ecx - 8]
movzx esi, byte [eax - 1]
mov dword [esp + 0x14], esi
fild dword [esp + 0x14]
fmul dword [0x69eb48]
fstp dword [ecx - 4]
jne 0x616f44
pop edi
pop esi
ret