Μαρινάρουμε τον κόκορα: Πλένουμε και στεγνώνουμε ελαφρά τα κομμάτια του με χαρτί κουζίνας. Τα βάζουμε σε μπολ με το κρεμμύδι και το καρότο, το θυμάρι, τους κόκκους πιπεριού, τη δάφνη και το κρασί μέχρι να σκεπάσει τα υλικά. Καλύπτουμε το μπολ με μεμβράνη και το βάζουμε στο ψυγείο για ένα 24ωρο. Την επομένη βγάζουμε τα κομμάτια του κόκορα και τα σκουπίζουμε καλά με χαρτί κουζίνας. Σουρώνουμε τη μαρινάδα, την κρατάμε χωριστά, κρατάμε επίσης τα λαχανικά και πετάμε τα υπόλοιπα.
Μαγειρεύουμε τον κόκορα: Σε μεγάλο βαθύ τηγάνι ζεσταίνουμε το λάδι να κάψει και τσιγαρίζουμε σε δόσεις τα κομμάτια του κόκορα και από τις δύο πλευρές για 3-4 λεπτά, να πάρουν χρώμα. Τα μεταφέρουμε σε μεγάλη κατσαρόλα. Στο ίδιο λάδι σοτάρουμε τα λαχανικά της μαρινάδας με το σκόρδο και τα προσθέτουμε στην κατσαρόλα. Ρίχνουμε και την μαρινάδα και βάζουμε την κατσαρόλα σε μέτρια προς δυνατή φωτιά. Μόλις πάρει βράση, χαμηλώνουμε τη θερμοκρασία σκεπάζουμε το σκεύος και σιγομαγειρεύουμε για 1 ώρα και 30 λεπτά, ανάλογα με τον κόκορα.
Κάνουμε τα μανιτάρια και τα κρεμμυδάκια: Στο τηγάνι βάζουμε το μπέικον σε μέτρια φωτιά και το σοτάρουμε για 7-10 λεπτά μέχρι να φύγει το περισσότερο λίπος και να ξεροψηθεί. Το αδειάζουμε σε μπολ με απορροφητικό χαρτί. Ρίχνουμε το μισό βούτυρο και μόλις κάψει, βάζουμε τα κρεμμυδάκια και τα σοτάρουμε σε μέτρια φωτιά για 10 λεπτά. Προσθέτουμε λίγο ζουμί απ’ το κοκόρι (ή μισό ποτήρι κρασί) και τα αφήνουμε 20 λεπτά περίπου σε σιγανή φωτιά να μαλακώσουν. Ρίχνουμε το υπόλοιπο βούτυρο να κάψει και βάζουμε τα μανιτάρια για 5-7 λεπτά περίπου. Αφαιρούμε τα σοταρισμένα κρεμμυδάκια και μανιτάρια και τα μεταφέρουμε στο μπολ με το μπέικον.
Όταν το κοκόρι είναι σχεδόν έτοιμο (περίπου 5 λεπτά πριν), βγάζουμε λίγο ζουμί, το αναμιγνύουμε με το αλεύρι και το ξαναρίχνουμε πίσω για να δέσει κάπως τη σάλτσα – δεν χρειάζεται να είναι πηχτή, αλλά ελαφρά παχύρρευστη.