Saludos desde Mexico!
Well "Muchacha" is used exclusively to call a lady/woman/young woman/girl.
In the case of "chica" this can have some other meanings, you see, chica/chico means "small" so, if you say "a small pizza" you would say "una pizza chica"...but also since young girls are "small" , we call them "chica", is another way of saying "girl"...for example...when you say to your female dog "good girl! good work"..in spanish we could translate it to "buena chica, buen trabajo".
Also , for example when i had a girlfriend i uses to talk about her as "mi chica"...for example...."Mañana voy con mi chica al cine"...."tomorrow i will go to the movies with my lady/girl/gf/baby" something like that!...so chica depends on the context, and muchacha always reffers to a woman (usually young).
If you have more questions, im here to help!
Saludos amigos, cuidate!