Concept:In reported speech, the future perfect tense "will have finished" changes to "would have finished" when the reporting verb is in the past tense.
Explanation:The given sentence talks about a future action that would be completed before a certain time, as reported by someone in the past.
This is a case of indirect or reported speech.
In reported speech, after a past tense reporting verb, "will" changes to "would."
So the future perfect "will have finished" is shifted back to "would have finished."
This rule is called the sequence of tenses.
Option A ("will have finished") is used only in direct speech, not in reported speech.
Options C and D do not express completion of the action before a specific time.
Therefore, option B is the correct choice.
Answer: B. would have finished