Taken by a sort of generalisation frenzy I produced the following (I didn't know it before, but it is possibly included in the wide and advanced literature on the subject: I'd be curious to know it).   I tried to make it as readable as I could.

> **Theorem.**   *Let $f:[a,b]\to \mathbb R$ be a continuous function with $D_*f\le0$ a.e. Then  $$ f(b)-f(a)\le \big|f(\{D^*f=+\infty\})\big|$$*

In particular, if $D_*f\le0$ *a.e.* and $D^*f<\infty$   *everywhere*, applying this to every sub-interval one has that $f$ is decreasing. 

The archeotypical example for this situation is the Cantor function, that has $f'(x)=0$ a.e. and $f(\{D^*f=+\infty\})=[f(0), f(1)]=[0,1]$, because   $\{D^*f =+\infty\}$ is exactly the triadic Cantor set $C$. In general, the situation  is slightly more complicated, but keeping this example in mind, we can construct, for given $\epsilon>0$, a Cantor set 
$K= \bigcap_{n\ge0} K_n\subset \{D^*f=+\infty\}$  such that $\big|[f(a),f(b)]\setminus f(K)\big|\le \epsilon$.  Here the sets  $K_n$  are finite unions of closed intervals, or *pluriintervals*, inductively defined. 

It is convenient to denote, for  a pluriinterval $K\subset[a,b]$ with connected components $\big\{[\alpha_j,\beta_j]\big\}_{1\le j\le p}$, that is a disjoint union 
$\displaystyle K:=\bigsqcup_{1\le j\le p} [\alpha_j,\beta_j]$,  $$K^f: =\bigcup_{1\le j\le p} [f(\alpha_j),f(\beta_j)].$$ (Here $[x,y]=\emptyset$ if $x>y$). Note that $K^f\subset f(K)$ by continuity of $f$.

**Rmk.** In what follows it may be useful to recall the elementary $A\setminus C\subset B\Leftrightarrow A\subset B\cup C$.

 
For the proof we need a Lemma. In the same hypotheses of the Theorem we have

 

> **Lemma.**   *For  every $\eta>0$,   and for every pluri-interval $K\subset[a,b]$  there exists a pluriinterval $L \subset K $ such that $\big|K^f  \setminus {L}^f\big|\le\eta$, and  $\frac{f(\beta)-f(\alpha )}{\beta -\alpha }\ge\frac1\eta$  for every component $[\alpha,\beta]$ of $L$.*

 

***Proof of the Theorem.***  We define inductively a nested sequence of pluriintervals $K_n$ where $K_0=[a,b]$ and for all $n\ge1$, $K_n$ is the pluriinterval $L$ given by the Lemma, corresponding to  $K:=K_{n-1}$, and to the number   $\eta:=\epsilon 2^{-n}$. We then define $K:=\bigcap_{n\ge0}K_n$ and  $S:= \bigcup_{n\ge1} (K_{n-1}^f\setminus K_n^f)$, which is a set of measure  $|S|\le\epsilon$ because for all $n$ we have $|K_{n-1}^f\setminus K_n^f|\le \epsilon 2^{-n}$ .

For every $n$ we have
$[f(a),f(b)]\setminus K_n^f= K_0^f\setminus K_n^f \subset S$, so   $[f(a),f(b)]\setminus S\subset K_n^f\subset f(K_n)$ and then  $[f(a),f(b)]\setminus S\subset \bigcap_{n\ge0} f(K_n)$ ; finally since $K_n$ is a decreasing sequence of compact sets and $f$ is continuous,  $\bigcap_{n\ge0} f(K_n)=  f\big( \bigcap_{n\ge0} K_n\big)=f(K)$. We thus have $[f(a),f(b)]\subset  f(K)\cup S$  whence $$f(b)-f(a)\le |f(K)|+\epsilon$$
 
Note that each component interval of $K_n$ has length at most $ 2^{-n+1}\epsilon\|f\|_\infty $. So if $x\in K$, there is a sequence $x_n\in K_n$ of endpoints of components, such that $x_n\to x$ with $\frac{f(x)-f(x_n)}{x-x_n}\ge {2^n}{\epsilon}$, that is $$K\subset \{D^*f=+\infty\}.$$   
 Since $\epsilon>0$ is arbitrary, the thesis follows.
 
**Rmk.**  More precisely we have shown the inequality w.r.to  the  *inner*  measure of the set $f( \{ D^*f=+\infty\})$, without addressing the issue of measurability of it. Incidentally, this is sufficient for the OP's needs. In fact $ \{ D^*f=+\infty\}$ is a $G_\delta$ set, and a continuous image of a $G_\delta$ set is even a Borel set, by a non-trivial result in Analytic Set Theory (I think for this case there is a direct simpler proof).

***Proof of the Lemma.*** We first do the case $p=1$  and $K:=[a,b]$.  The family of  intervals $[\alpha,\beta]\subset(a,b)$ such that $\frac{f(\beta )-f(\alpha )}{\beta -\alpha }<\frac{\eta}{2(b-a)}$ cover the set  $\{D_*f\le0\}$ in the Vitali sense, that is, every point of $\{D_*f\le0\}$ belongs to arbitrarily small such intervals. By the Vitali covering theorem, there is a finite  disjoint family of these intervals whose sum of lengths is larger than $b-a -\frac{\eta^2}2$. Thus, labelling these intervals $[c_{2k-1},c_{2k}]$ for $k=1\dots n$, with a finite  sequence $$c_0:=a<c_1<\dots <c_{2n+1}:=b$$  we have , for $k=1,\dots,n$ 

 $$f(c_{2k})-f(c_{2k-1})\le \frac{\eta}{2(b-a)}(c_{2k}-c_{2k-1}) $$ and $$\sum_{k=0}^n(c_{2k+1}-c_{2k})=(b-a)- \sum_{k=1}^n(c_{2k}-c_{2k-1})\le \frac{\eta^2}2.$$ 
Let $$J:=\Big\{k\in \mathbb N:0\le k\le n,\, \frac{f(c_{2k+1})-f(c_{2k})}{c_{2k+1}-c_{2k}} \ge\frac1\eta\Big\}$$ and 
$$L:=\bigcup_{k\in J} [c_{2k},c_{2k+1}]$$
Then we have
 
$$ [a,b]^f \setminus {L}^f\subset  \bigcup_{  k\notin J}[c_{2k} , c_{2k+1}]^f\cup \bigcup_{1\le k\le n}   [c_{2k-1} , c_{2k}]^f  $$
so
 $$\bigg|[a,b]^f  \setminus {L}^f\bigg|\le  \sum_{  k\not\in J}\big(  f(c_{2k+1})-f(c_{2k})\big)_+ +\sum_{k=1}^{n}\big( f(c_{2k})-f(c_{2k-1})\big)_+ \le$$ 
$$ \sum_{  k=0}^n \frac1\eta  \big(  c_{2k+1}-c_{2k})+   \sum_{k=1}^{n}\frac{\eta}{2(b-a)}(c_{2k}-c_{2k-1})\le $$

$$\le \frac1\eta \frac{\eta^2}2+\frac{\eta}{2(b-a)}(b-a)=\eta,$$
so $L$ enjoyes the property we wished, for the case $K:=[a,b]$.

 For the case of a general pluri-interval $\displaystyle K:=\bigsqcup_{1\le j\le p} [\alpha_j,\beta_j]$, we apply the preceding case $n=1$ to each component interval $ [\alpha_j,\beta_j]$ w.r.to the number $2^{-j}\eta$ and take $L$ to be the union of the corresponding pluriintervals $L_j\subset  [\alpha_j,\beta_j]$, for $j=1,\dots p$. Then $$ K^f  \setminus {L}^f  =   \bigcup_{1\le j\le p} \big([\alpha_j,\beta_j]^f \setminus {L}^f\big) \subset   \bigcup_{1\le j\le p} \big( [\alpha_j,\beta_j] ^f\setminus {L_j}^f\big) $$ has measure 
 $$\bigg|K^f  \setminus {L}^f\bigg|\le\sum_{1\le j\le p} \big| [\alpha_j,\beta_j] ^f\setminus {L_j}^f\big| \le \sum_{j=1}^p 2^{-j}\eta<\eta,$$
 completing the proof.