Audit entry reason issue

I'm trying to log the most recent ban reason entry from the audit, however it's taking the ban reason from an old audit entry.

Here is my code:

async def on_member_ban(self, guild, author):
    now = dt.datetime.utcnow()
    async for entry in guild.audit_logs(limit=2, oldest_first=False, action=discord.AuditLogAction.ban):
        if abs((entry.created_at-now).total_seconds()) >= 5:
            if entry.reason:
                reason = entry.reason
                reason = 'No reason was given.'

            embed = discord.Embed(timestamp=now, colour=discord.Color(random.randint(0x000000, 0xFFFFFF)))
            embed.set_author(name=f'{author.display_name} was banned.')
            embed.set_footer(text=f'Banned by {entry.user.display_name}', icon_url=get_user_avatar(entry.user))
            embed.add_field(name='**Reason:**', value=reason)

    await, embed=embed)  

Help would be greatly appreciated.