bhyg-decomp/loader/loader.py

47 lines
759 B
Python

import importlib
import importlib.machinery
import sys
from pathlib import Path
_BINARY_DIR = Path(__file__).parent / 'binary'
_MODULES = [
'utils',
'i18n',
'login',
'globals',
'api',
'main',
]
def load_binary():
sys.path.append(str(_BINARY_DIR))
# 先载入并 patch utils
importlib.import_module('utils')
patch_module()
importlib.import_module('main')
return sys.modules['main']
def patch_module():
def check_policy():
from loguru import logger
logger.info('Bypass check_policy')
sys.modules['utils'].check_policy = check_policy
def run_module(module):
module.main()
def main():
module = load_binary()
run_module(module)
if __name__ == '__main__':
main()