$\DeclareMathOperator{\support}{support}$The general question here is a very hard problem, for the following reason.
Let $f(x_1, \dots, x_n)$ be any function, and let $X_1, \dots, X_n$ be Gaussian random variables. Then the r.v. $f(X_1, \dots, X_n)$ has support at 0 if and only if the equation $f(x_1, \dots, x_n) = 0$ has real-valued solutions. So determining the support of a function of random variables is at least as hard as finding the zeros of the relevant functions. But for even fairly simple classes of functional expressions, finding their zeros is undecidable (there is no algorithm!) For instance, by Richardson's Theorem, even if $f$ is restricted to be a function of one argument using the constants $\pi$ and $\ln 2$, addition, multiplication, and the functions $\sin, \exp$ and absolute value--the question of whether $f(X)$ has support at 0 is in general undecidable.
You can make some progress on specific sub-cases. For instance, if $X$ has support on $[a, b]$ and $f$ is continuous and monotone increasing in that range, then $f(X)$ has support on $[f(a_X), f(b)]$.
Similarly, if the random variables $X$ and $Y$ have joint support on the entire rectangle $[a_X, b_X] \times [a_Y, b_Y]$, and $f$ is a continuous function of two arguments, monotone increasing in both on that rectangle, then $f(X, Y)$ has support on $[f(a_X, a_Y), f(b_X, b_Y)]$ (and there are similar versions if $f$ is monotone decreasing in one or both arguments instead).
Finally, to tackle non-monotone functions of random variables, you can chop up their domain into rectangular chunks where they are monotone, and then calculate the support of the function conditional on the arguments lying within that chunk, and then take the union of those supports at the end: for instance, $\support(X^2) = \support(X^2 \mid X \ge 0) \cup \support(X^2 \mid X \le 0)$. But the process of conditioning in this way can get very thorny if there are lots of sub-expressions and dependence between the arguments.
Clever application of the above three principles will probably get you fairly far, but there's no general answer for arbitrary functions.