Create a function that receives two parameters, an initial number, and an end number. This function should return a list starting from the initial number and ending on the end number. If only one parameter is passed it should start at 0 and end in the given number. Handle too if the first parameter is bigger than the second and return the appropriate list.