Вы не можете использовать for в Delphi, чтобы сделать это, потому что переменная, используемая для итерации, не может быть изменена.
Таким образом, этот код
for (i = 0; i < mb->size; i+= mb->data_size)
может быть записан с использованием while
i:=0;
while (i<mb.size) do
begin
// do something
Inc(i, mb.data_size);
end;