Law of iterated expectations I think I have understood why $E[E(X_1X_2|X_1)]=E[X_1E(X_2|X_1)]$; so your support would really help me being more convinced.
Do we take out the $X_1$ from the inner expected value because it is calculated with respect to the marginal distribution of $X_2$? And why is it calculated with respect to the marginal distribution of $X_2$? Is it because we are conditioning on $X_1$ and, for this reason, we are integrating or summing out $x_1$?
 A: Intuitively, if you condition on $X_1$ is as though you "know" $X_1$, then it does not have an expected value since its value is known. This clearly covers the case where we condition on $X_1= x_1^*$, i.e. to some specific value. To cover the case where we condition on the $\sigma$-algebra generated by the random variable, we need the integral representation of the expected value.  But we are not integrating with respect to the marginal distribution of $X_2$ but with respect to the distribution of $X_1X_2$ conditional on $X_1$ as the expression tells us to. But in this case too, the integrating variable will be $X_2$ only.
We have 
$$E(X_1X_2|X_1) = \int_{-\infty}^{\infty} f_{X_1X_2 \mid X_1}(x_1x_2 \mid x_1)\cdot x_1x_2dx_2 $$
Since we are integrating with respect to $X_2$, $X_1$ can go out of the integral, so 
$$\int_{-\infty}^{\infty} f_{X_1X_2 \mid X_1}(x_1x_2 \mid x_1)\cdot x_1x_2dx_2 = x_1\int_{-\infty}^{\infty} f_{X_1X_2 \mid X_1}(x_1x_2 \mid x_1)\cdot x_2dx_2 $$
$$= X_1E(X_2|X_1)$$
A: By definition, $E[X_2|X_1]$ is the random variable that takes the value $E[X_2|X_1=x_1]$ when $X_1=x_1$.  
We know that $E[X_1 X_2 | X_1=x_1]$ is just $E[x_1 X_2|X_1=x_1]$, which is equal to $x_1.E[X_2|X_1=x_1]$, since $x_1$ is a constant.  
The random variable $E[X_1X_2|X_1]$, on its turn, would just be equal to $X_1.E[X_2|X_1]$ , where $X_1$ is now a random variable itself.
