How do the roots behave asymoptotically? Let $g, h \in \mathbb C[x]$ and
$$ f(x, a) = (x-x_0)^m g(x) + h(x) (a-a_0),$$
where $m \ge 2$, $a \in \mathbb R$ and $a_0$ is a fixed real number. Suppose $g(x_0) \neq 0$ and $h(x_0) \neq 0$. By this setup, we should be able to have $n$ continuous functions $\alpha_1, \dots, \alpha_n: \mathbb R \to \mathbb C$ such that for each $t \in \mathbb R$, $\alpha_1(t), \dots, \alpha_n(t)$ constituents the zeros of $f(x, t)$. If $a \to a_0$, then we should have $m$ functions converges to $x_0$. I am wondering how these functions behave. More specifically, it seems to me: we can set
$$ (x-x_0)^m g(x) + h(x)(a-a_0) = 0.$$
As $a \to a_0$, $g(x) \to g(x_0)$ and $h(x) \to h(x_0)$. If I am allowed to hand wave a little bit, then in a neighborhood of $a_0$
$$ \alpha_j(a) \approx x_0 + \left( \frac{-h(x_0)}{g(x_0)} (a-a_0) \right)^{1/m} \omega_j^m, \text{ for } j=1, \dots, m,$$ where we assume $\alpha_1, \dots, \alpha_m$ are functions converging to $x_0$ and $\omega_j^m$ are solutions to $x^m =1 $. Is there a way to a rigorous statement on the asymptotic behavior of $\alpha_j$'s?
 A: Let $o(|u|^r)$ ($r\ge0$) denote the class (and also an element of it) of functions $q(u)\in\mathbb{C}$ such that $\lim_{|u|\to 0^+} \frac{|q(u)|}{|u|^r} = 0$, that is, for all $\epsilon>0$ there exists $u^*>0$ such that $|q(a)|<\epsilon |u|^r$ for all $|u|\in (0,u^*)$. We will show that $$
\alpha_j(a) = x_0 +\left(-(a-a_0)\frac{h(x_0)}{g(x_0)}\right)^{\frac{1}{m}}\omega^j + o(|a-a_0|^{\frac{1}{m}})
$$ where $\omega = e^{\frac{2\pi i}{m}}$ is the primitive $m$-th root of unity. We denote by $z^{\frac{1}{m}}$ a fixed root $w$ of $w^m=z$, which is arbitrarily chosen. Since the roots differ by $\omega^r$ multiplicatively, the choice of a particular $(-(a-a_0)\frac{h(x_0)}{g(x_0)})^{\frac{1}{m}}$ does not affect validity of the statement. In what follows, $c^{\frac{1}{m}}$ is also understood in the same way unless $c\ge 0$ (as long as validity is not affected.)
Without loss of generality, we may assume that $x_0 = a_0 = 0$ and $g(0)=1$. By changing $-a\to a$, the given equation becomes
$$
x^m g(x) = a\cdot h(x).\tag{*}
$$ Assume $a>0$. By the change of variable $z =\frac{x}{a^{\frac{1}{m}}}$ we get modified equation:
$$
z^m g(a^{\frac{1}{m}}z)=h(a^{\frac{1}{m}}z).
$$ Let $F_a(z) = z^m g(a^{\frac{1}{m}}z)-h(a^{\frac{1}{m}}z).$ We can see that $\lim_{a\to 0^+}F_a(z) = F_0 (z)=z^m -h(0)$ and that $F_0(z)$ has $$\zeta_j = [h(0)]^{\frac{1}{m}}\omega^j,\quad j=1,2,\ldots,m$$  as its roots. 
Claim: For all $\epsilon\in (0,\frac{|h(0)|^{\frac{1}{m}}}{100})$, there exists $a^*>0$ such that for all $a\in [0,a^*)$, $F_a(z)=0$ has exactly one root in each $B(\zeta_j,\epsilon)$.
Proof: Let $\epsilon\in (0,\frac{|h(0)|^{\frac{1}{m}}}{100})$ be given. Fix $j$ and let us consider an open ball $B_j =B(\zeta_j,\epsilon)$ centered at $\zeta_j$. Note that $B_j$ are disjoint. If $z\in\partial B_j$, then there exists $\eta>0$ such that $|z^m - h(0)|\ge \eta$ by the compactness of $\partial B_j$. Since $\frac{h(a^{\frac{1}{m}}z)}{g(a^{\frac{1}{m}}z)}\to h(0)$ uniformly on $\partial B_j$, it says that $F_a(z)$ does not vanish on $\partial B_j$ for all $a\in [0,a_j^*)$ for some $a_j^*>0$. Define $$
N(a) = \frac{1}{2\pi i}\int_{\partial B_j}\frac{F_a'(z)}{F_a(z)}dz
$$ for $a\in [0,a_j^*)$. By Cauchy's argument principle, $N(a)$ gives the number of zeros of $F_a$ in $B_j$. By the construction, $N(a)$ is an integer-valued continuous function with $N(0)=1$. This gives $N(a) \equiv 1$. This means $F_a(z)=0$ has exactly one root in $B_j$ for all $a\in [0,a^*_j)$. Now, let $a^* = \min_j a^*_j>0$, then the claim follows.$\blacksquare$
Now denote each root in $B_j$ of $F_a(z)$ by $\gamma_j(a)$. Then by the above claim we can write
$$
\gamma_j(a) = \zeta_j+o(1).
$$ Since the roots $\beta_j(a)$ of $(*)$ can be expressed as $a^{\frac{1}{m}}\gamma_j(a)$, we get
$$
\beta_j(a) = a^{\frac{1}{m}}\zeta_j + o(|a|^{\frac{1}{m}})=\left(ah(0)\right)^{\frac{1}{m}}\omega^j + o(|a|^{\frac{1}{m}}).
$$ Now, we deal with the case where $a<0$. We can modify $(*)$ as
$$
x^m g(x) = (-a)\cdot(-h(x)).
$$ By letting $b=-a>0$ and $k(x)=-h(x)$, as a corollary of the above argument we have that
$$
\tilde{\beta}_j(b) = \left(bk(0)\right)^{\frac{1}{m}}\omega^j + o(|b|^{\frac{1}{m}})=\left(ah(0)\right)^{\frac{1}{m}}\omega^j + o(|a|^{\frac{1}{m}}).
$$ Relabeling $\tilde{\beta}_j(b)$ as $\beta_j(a)$, we get
$$
\beta_j(a) =\left(ah(0)\right)^{\frac{1}{m}}\omega^j + o(|a|^{\frac{1}{m}}).
$$ for all $a\in\mathbb{R}$. Now, turning back to the original equation, we finally get for all $a$,
$$
\alpha_j(a) = x_0 +\left(-(a-a_0)\frac{h(x_0)}{g(x_0)}\right)^{\frac{1}{m}}\omega^j + o(|a-a_0|^{\frac{1}{m}}).
$$ This gives the desired result.
A: Illustration to the answer of @Song
Set $g(x)=1+x^3$, $h(x)=1-x^2$, $m=5$  and $a_0=0=x_0$. Then the polynomial is
$$
f(x)=x^5(1-x^3)+a(1+x^2)
$$
Plot the roots for $a=\pm b^5$ for $b$ in some arithmetic sequence spanning $[0,1]$. Plot the roots (left) and the roots divided by $a^{1/5}=\pm b$ (right). The bold points left are the roots for $a=\pm 1$, blue for positive, red for negative $a$, while the bold points on the right are the locations of the scaled roots for $a\approx 0$.

fig, ax = plt.subplots(1,2,figsize = (2*8, 8))

def F(a): return [1, 0, 0, -1, 0, 0, a, 0, a]
z = np.roots(F(1)); ax[0].plot(z.real, z.imag, 'ob', ms=6);
z = np.roots(F(-1)); ax[0].plot(z.real, z.imag, 'or', ms=6);
ax[1].add_artist(plt.Circle((0,0),1, color='k', fill=False))
for b in np.linspace(0.01,1,11)[::-1]:
    z = np.roots(F(b**5)); ax[0].plot(z.real, z.imag, 'ob', ms=2);
    z = z/b; ax[1].plot(z.real, z.imag, 'ob', ms=2);
    z = np.roots(F(-b**5)); ax[0].plot(z.real, z.imag, 'or', ms=2);
    z = -z/b; ax[1].plot(z.real, z.imag, 'or', ms=2);
z = np.roots(F(b**5))/b; ax[1].plot(z.real, z.imag, 'ob', ms=6);
z = -np.roots(F(-b**5))/b; ax[1].plot(z.real, z.imag, 'or', ms=6);
r=1.5; ax[1].set_ylim([-r,r]); ax[1].set_xlim([-r,r])
plt.show()

