In a medium bowl, combine the chicken pieces with the garlic, light soy sauce, Shaoxing wine, sugar, five spice powder, white pepper, and salt. Cover and marinate in the refrigerator for at least 2 hours, or ideally overnight.
Make the batter just before frying. In a medium bowl, combine the flour, water, sweet potato starch, baking powder, salt, and white pepper. Toss this batter mixture into the marinated chicken.
If using, wash the Thai basil leaves, and run them through a salad spinner to dry them. Thoroughly pat them dry on a kitchen towel to get rid of any lingering moisture (or it may cause splattering in the frying oil). Set aside.
Add 2 inches of oil to a medium pot, and bring it to 350°F/175°C over medium heat. You may need to adjust the heat to keep the oil temperature at 350°F/175°C during frying.
First, fry the basil leaves until they turn a dark green color. Strain them out and set aside.
Coat each piece of battered chicken in sweet potato starch, and immediately lower it into the 350°F/175°C oil in batches (about a quarter to a third of the chicken per batch). Do not coat the chicken ahead of time, or the coating will become soggy. Fry for 1 minute. Remove the chicken from the oil, set aside, and continue frying subsequent batches, for 1 minute for each batch.
Now it’s time for the second fry. With the temperature still at 350°F/175°C, fry the batches again (in the same order you initially fried them in)—this time, for 2 minutes, until the pieces float to the surface and are crispy.
Once the second fry is done, sprinkle with additional salt and white pepper to taste, and serve with the Thai basil leaves, if using.