var
out: TFileStream;
in: TMemoryStream;
i: Integer;
begin
in := TMemoryStream.Create;
out := TFileStream.Create(...);
try
for i := 0 to files_count - 1 do begin
in.Clear;
in.LoadFromFile(....);
out.WriteBuffer(in.Memory^, in.Size);
end;
finally
in.Free;
out.Free;
end;
end;