Pat the chicken dry with paper towels. Don’t rinse it.
Whisk the soy sauce, Worcestershire sauce, vinegar, olive oil, brown sugar, garlic and black pepper together in a bowl. Add the crushed bay leaves.
Put the chicken in a large zip-top bag or covered container, then pour in the marinade. Refrigerate for 4 to 8 hours, turning the chicken once or twice so the marinade reaches all sides.
Remove the chicken from the refrigerator about 20 minutes before roasting. Preheat the oven to 400°F (200°C).
Remove the chicken from the marinade. Discard the marinade, garlic and bay leaves that touched the raw chicken.
Pat the skin dry, then rub the softened butter over the breast, legs and wings.
Put the onion and a clean bay leaf loosely inside the cavity. Don’t pack the cavity tightly.
Place the chicken breast-side up in a roasting pan. Roast for 1 hour 15 minutes to 1 hour 30 minutes, depending on its size. Cover the breast loosely with foil if the skin browns too quickly.
Check the thickest part of the breast and inner thigh without touching the bone. Both should reach at least 165°F (74°C). Remove the onion and bay leaf from the cavity. Rest the chicken for 15 minutes before carving.