You should associate the list with the marker itself.
so when you create your marker in Angular try this
var markers = [];
for(var i = 0; i < latLng.length; i++){
markers.push({
id: i,
...
...
myList:[{...},{...}]
});
}
Your html should look something like this:
<ui-gmap-google-map...
<ui-gmap-marker ng-repeat="m in markers"...
<ui-gmap-window...
[Your Info Window Content Here]
<div>{{m.myList[0].stuff}}</div>
<div>{{m.myList[1].stuff}}</div>
<div>{{m.myList[2].stuff}}</div>
</ui-gmap-window>
</ui-gmap-marker>
</ui-gmap-google-map>
As you can see, you can pull data from the parent marker collection (m, defined in ui-gmap-marker) and use it in any of its children.
<ui-gmap-windows>, please show your controller.js especially how you set up the markers.