Big Bank plc

BigBank PLC has developed a new online banking tool, and has outsourced the development of some of the security code to Budget Coding Ltd. The code is to be installed as part of a mobile application on customers phones and will generate a one-time passcode as part of 2-Factor Authentication.

Budget Coding Ltd. have submitted two files: PassCodeGenerator.py (the main PassCode generator code) and IntegrityChecker.pyc (which makes sure the main code hasn't been tampered with).

Either by analysing the algorithm, or by modifying the code, can you work out what the 4-digit PassCode will be on 20th January 2018 at 10:45, for account number 25894561?

Files:

IntegrityChecker.pyc

PassCodeGenerator.py