generate future dates for multiple entries based on start and end date of each row

i have an issue figuring out the below approach, would appreciate f you can give me a hand with a SQL query to generate the required result (basically i want to generate dates that semi annually Greater than start date and less than or equal end date)

Table

ID Start Date End Date
X 1 Jan 2021 1 Jan 2023
Y 1 Mar 2021 1 Mar 2023
Z 1 Jun 2021 1 Jun 2023

results needed

ID Date
X 1 Jun 2021
X 31 Dec 2021
X 1 Jun 2022
X 1 Jan 2023
y 31 Sep 2021
y 1 Mar 2022
y 31 Sep 2022
Y 1 Mar 2023
z 1 Jan 2022
z 1 Jun 2022
z 1 Jan 2023
z 1 Jun 2023

thanks in advanced