Q:

Como pego o valor que esta retornando do console.log(results[4].geocode) para usar na comparação do meu if? 

   var init = [iAppLib.getPersonalBits(),
               iAppLib.getGeoCode()                   
               ];
   var codes = false;
    var gcOk = new Array("BRH04700","BRH04600","BRH00200","BRH04500","BRJ01400","BRM00100","BRM00200","BRM09600","BRM04200");

    for(var i = 0; i < gcOk.length; i++){
        if(gcOk[i] == stb){
            codes= true;
        }
    }

  if(codes){
        document.write("</head>");
        document.write("<body background='bg.mpg'>");
        document.write("</body>");
        document.write("</html>");

    }else{
        document.write("</head>");
        document.write("<body background='tv:'>");
        document.write("</body>");
        document.write("</html>");
    };

   Promise.all(init).then(function (results) {
       console.log(results[4].geocode); 

   });

})();

A:

Se o if que você deseja criar é o que já está no código que você postou, basta colocar todo o código (com exceção da função init) dentro do then() da sua Promise.  Isso fará com que o código seja executado assim que a sua promessa tiver o resultado da função init. 
Se o if for algum outro que irá numa implementação posterior, é só utilizar a atribuição normal:
Promise.all(init).then(function (results) {
   var meu_resultado = results[4].geocode;
   if(meu_resultado == minha_condicao){
       //Código do seu if
   }
});

