Fourth seed Elena Rybakina is into the Miami Open final for the second straight year with a dramatic win over Victoria Azarenka.