Hola, ALUCARD81
Se me ocurre que -asumiendo que los checkboxes tienen ID numérico como parece que indicas- se pueden definir en una matriz de datos los que se deben marcar para cada opción y luego irlos recorriendo cada vez que se elija en el select.
Código HTML:
<head><script>
var nOpciones = 3 , nSucursales = 25
var sucursales = new Array(nOpciones)
sucursales[0] = [1, 5, 8, 9, 10]
sucursales[1] = [1, 2, 4, 6]
sucursales[2] = [7, 8, 9, 11]
function marca(j)
{
for (var k=0; k<nSucursales; k++)
{
var cb = document.getElementById(k+1)
for (var i=0; i<sucursales[j].length; i++)
{
if (cb.id == sucursales[j][i]) { cb.checked=true; break }
cb.checked=false
}
}
}
</script></head>
<body>
...
<select onChange="marca(this.selectedIndex)">
...
</body>
A ver si te sirve