There are effectively two questions here. First:
If I have a density matrix $\rho=p_1|\psi_1\rangle\langle\psi_1|+p_2|\psi_2\rangle\langle\psi_2|$, can I extract the states $|\psi_1\rangle$ and $|\psi_2\rangle$?
No. Certainly not without knowledge of what the states are (and if you know them, you can trivially produce them without the aid of $\rho$). One easy way to see this is that if I give you a $\rho$, there is not necessarily a unique way of writing it as $p_1|\psi_1\rangle\langle\psi_1|+p_2|\psi_2\rangle\langle\psi_2|$, so how should I know how to get the specific states you want?
If I have two states $|\psi_1\rangle$ and $|\psi_2\rangle$, can I produce $\rho=p_1|\psi_1\rangle\langle\psi_1|+p_2|\psi_2\rangle\langle\psi_2|$?
Kind of. Imagine, to start with, that the two states are unknown, but orthogonal. If you apply the operation $e^{i\theta \text{SWAP}}$ and discard one of the two systems, the other will be left in the desired state where $p_1=\cos^2\theta$ and $p_2=\sin^2\theta$.
You can create the same effect if the two states are not orthogonal by adding in an ancilla, so you create two states $|\psi_1\rangle|0\rangle$ and $|\psi_2\rangle|1\rangle$, thereby making them orthogonal, and allowing you to run the previous protocol.
In reference to the first part of my answer, note that this protocol involves some discarding of information, which is what makes it non-reversible.