本文整理汇总了Python中commands.Commands.creatergcfg方法的典型用法代码示例。如果您正苦于以下问题:Python Commands.creatergcfg方法的具体用法?Python Commands.creatergcfg怎么用?Python Commands.creatergcfg使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类commands.Commands
的用法示例。
在下文中一共展示了Commands.creatergcfg方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: reobfuscate
# 需要导入模块: from commands import Commands [as 别名]
# 或者: from commands.Commands import creatergcfg [as 别名]
def reobfuscate(conffile, reobf_all, keep_lvt, keep_generics, only_client, only_server, srg_names, force_rg):
try:
commands = Commands(conffile, verify=True)
if keep_generics:
keep_lvt = True
# client or server
process_client = True
process_server = True
if only_client and not only_server:
process_server = False
if only_server and not only_client:
process_client = False
commands.logger.info('> Creating Retroguard config files')
commands.creatergcfg(reobf=True, keep_lvt=keep_lvt, keep_generics=keep_generics, srg_names=srg_names)
if process_client:
reobfuscate_side(commands, CLIENT, reobf_all=reobf_all, srg_names=srg_names, force_rg=force_rg)
if process_server:
reobfuscate_side(commands, SERVER, reobf_all=reobf_all, srg_names=srg_names, force_rg=force_rg)
except Exception: # pylint: disable-msg=W0703
logging.exception('FATAL ERROR')
sys.exit(1)
示例2: reobfuscate
# 需要导入模块: from commands import Commands [as 别名]
# 或者: from commands.Commands import creatergcfg [as 别名]
def reobfuscate(conffile, reobf_all, keep_lvt, keep_generics):
try:
commands = Commands(conffile, verify=True)
if keep_generics:
keep_lvt = True
commands.logger.info('> Creating Retroguard config files')
commands.creatergcfg(reobf=True, keep_lvt=keep_lvt, keep_generics=keep_generics)
reobfuscate_side(commands, CLIENT, reobf_all=reobf_all)
reobfuscate_side(commands, SERVER, reobf_all=reobf_all)
except Exception: # pylint: disable-msg=W0703
logging.exception('FATAL ERROR')
sys.exit(1)
示例3: main
# 需要导入模块: from commands import Commands [as 别名]
# 或者: from commands.Commands import creatergcfg [as 别名]
def main(conffile=None, force_jad=False):
commands = Commands(conffile)
commands.checkupdates()
cltdone = False
srvdone = False
use_ff = os.path.exists(commands.fernflower) and not force_jad
commands.logger.info ('> Creating Retroguard config files')
commands.creatergcfg()
srcdir = os.path.join(commands.srcclient, commands.ffsource).replace('/',os.sep).replace('\\',os.sep)
if not os.path.exists(srcdir):
commands.logger.info ('== Decompiling Client ==')
if commands.checkjars(0):
clienttime = time.time()
commands.logger.info ('> Creating SRGS for client')
commands.createsrgs(0)
commands.logger.info ('> Applying Retroguard to client')
commands.applyrg(0)
commands.logger.info ('> Applying Exceptor to client')
commands.applyexceptor(0)
if use_ff:
commands.logger.info ('> Decompiling...')
commands.applyff(0)
commands.logger.info ('> Unzipping the client sources')
commands.extractsrc(0)
commands.logger.info ('> Unzipping the client jar')
commands.extractjar(0)
if not use_ff:
commands.logger.info ('> Applying jadretro')
commands.applyjadretro(0)
commands.logger.info ('> Decompiling...')
commands.applyjad(0)
commands.logger.info ('> Applying patches')
if not use_ff:
commands.applypatches(0)
else:
commands.applyffpatches(0)
commands.logger.info ('> Renaming sources')
commands.rename(0)
commands.logger.info ('> Creating reobfuscation tables')
commands.renamereobsrg(0)
commands.logger.info ('> Done in %.2f seconds'%(time.time()-clienttime))
else:
commands.logger.warn ('!! Client already decompiled. Run cleanup before decompiling again !!')
cltdone = True
srcdir = os.path.join(commands.srcserver, commands.ffsource).replace('/',os.sep).replace('\\',os.sep)
if not os.path.exists(srcdir):
commands.logger.info ('== Decompiling Server ==')
if commands.checkjars(1):
servertime = time.time()
commands.logger.info ('> Creating SRGS for server')
commands.createsrgs(1)
commands.logger.info ('> Applying Retroguard to server')
commands.applyrg(1)
commands.logger.info ('> Applying Exceptor to server')
commands.applyexceptor(1)
if use_ff:
commands.logger.info ('> Decompiling...')
commands.applyff(1)
commands.logger.info ('> Unzipping the server sources')
commands.extractsrc(1)
commands.logger.info ('> Unzipping the server jar')
commands.extractjar(1)
if not use_ff:
commands.logger.info ('> Applying jadretro')
commands.applyjadretro(1)
commands.logger.info ('> Decompiling...')
commands.applyjad(1)
commands.logger.info ('> Applying patches')
if not use_ff:
commands.applypatches(1)
else:
commands.applyffpatches(1)
commands.logger.info ('> Renaming sources')
commands.rename(1)
commands.logger.info ('> Creating reobfuscation tables')
commands.renamereobsrg(1)
commands.logger.info ('> Done in %.2f seconds'%(time.time()-servertime))
else:
commands.logger.warn ('!! Server already decompiled. Run cleanup before decompiling again !!')
srvdone = True
commands.logger.info ('== Post decompiling operations ==')
if not cltdone or not srvdone:
commands.logger.info ('> Recompiling')
recompile.main(conffile)
if not cltdone:
commands.logger.info ('> Generating the md5 (client)')
commands.gathermd5s(0)
if not srvdone:
commands.logger.info ('> Generating the md5 (server)')
commands.gathermd5s(1)
示例4: decompile
# 需要导入模块: from commands import Commands [as 别名]
# 或者: from commands.Commands import creatergcfg [as 别名]
def decompile(conffile, force_jad, force_csv, no_recompile, no_comments, no_reformat, no_renamer, no_patch, only_patch,
keep_lvt, keep_generics, only_client, only_server):
try:
commands = Commands(conffile, verify=True, no_patch=no_patch)
commands.checkupdates()
use_ff = commands.has_ff and not force_jad
use_srg = commands.has_srg and not force_csv
if force_jad and not commands.has_jad:
commands.logger.error('!! forcing jad when not available !!')
sys.exit(1)
if force_csv and not commands.has_map_csv:
commands.logger.error('!! forcing csvs when not available !!')
sys.exit(1)
# client or server
process_client = True
process_server = True
if only_client and not only_server:
process_server = False
if only_server and not only_client:
process_client = False
# always strip comments by default, turn off in update mode if required
strip_comments = True
# update only options
rg_update = False
exc_update = False
if no_patch:
# no_patch is basically update mode, disables everything
# and reuses a few different options to do update stuff
if only_patch:
# with only_patch then we actually do the patches, but not the comment stripping, for use when updating
# the fernflower patches
no_patch = False
strip_comments = False
if no_reformat:
# reuse -a no_reformat to switch rg to fullmap=1 startindex=RGIndex
rg_update = True
if no_renamer:
# reuse -n to switch mcinjector to outputing exc file, and adding new parameters
exc_update = True
no_comments = True
no_reformat = True
no_renamer = True
no_recompile = True
elif only_patch:
# if only_patch then disable everything but patching and comment stripping
no_comments = True
no_reformat = True
no_renamer = True
no_recompile = True
# if we have generics enabled we need the lvt as well
if keep_generics:
keep_lvt = True
commands.logger.info('> Creating Retroguard config files')
commands.creatergcfg(reobf=False, keep_lvt=keep_lvt, keep_generics=keep_generics, rg_update=rg_update)
try:
if process_client:
cltdecomp = decompile_side(commands, CLIENT, use_ff=use_ff, use_srg=use_srg, no_comments=no_comments,
no_reformat=no_reformat, no_renamer=no_renamer, no_patch=no_patch,
strip_comments=strip_comments, exc_update=exc_update)
else:
cltdecomp = False
if process_server:
srvdecomp = decompile_side(commands, SERVER, use_ff=use_ff, use_srg=use_srg, no_comments=no_comments,
no_reformat=no_reformat, no_renamer=no_renamer, no_patch=no_patch,
strip_comments=strip_comments, exc_update=exc_update)
else:
srvdecomp = False
except CalledProcessError:
# retroguard or other called process error so bail
commands.logger.error('Decompile failed')
sys.exit(1)
if not no_recompile:
if cltdecomp:
try:
updatemd5_side(commands, CLIENT)
except CalledProcessError:
commands.logger.error('Initial client recompile failed, correct source then run updatemd5')
if srvdecomp:
try:
updatemd5_side(commands, SERVER)
except CalledProcessError:
commands.logger.error('Initial server recompile failed, correct source then run updatemd5')
else:
commands.logger.info('!! recompile disabled !!')
except Exception: # pylint: disable-msg=W0703
logging.exception('FATAL ERROR')
sys.exit(1)
示例5: decompile
# 需要导入模块: from commands import Commands [as 别名]
# 或者: from commands.Commands import creatergcfg [as 别名]
def decompile(conffile=None, force_jad=False):
commands = Commands(conffile)
try:
commands.checkupdates()
cltdone = False
srvdone = False
use_ff = os.path.exists(commands.fernflower) and not force_jad
commands.logger.info('> Creating Retroguard config files')
commands.creatergcfg()
srcdir = os.path.join(commands.srcclient, os.path.normpath(commands.ffsource))
if not os.path.exists(srcdir):
commands.logger.info('== Decompiling Client ==')
if commands.checkjars(CLIENT):
clienttime = time.time()
commands.logger.info('> Creating SRGS for client')
commands.createsrgs(CLIENT)
commands.logger.info('> Applying Retroguard to client')
commands.applyrg(CLIENT)
commands.logger.info('> Applying Exceptor to client')
commands.applyexceptor(CLIENT)
if use_ff:
commands.logger.info('> Decompiling...')
commands.applyff(CLIENT)
commands.logger.info('> Unzipping the client sources')
commands.extractsrc(CLIENT)
commands.logger.info('> Unzipping the client jar')
commands.extractjar(CLIENT)
if not use_ff:
commands.logger.info('> Applying jadretro')
commands.applyjadretro(CLIENT)
commands.logger.info('> Decompiling...')
commands.applyjad(CLIENT)
commands.logger.info('> Copying the client sources')
commands.copysrc(CLIENT)
commands.logger.info('> Applying patches')
if commands.osname == 'osx' and not use_ff:
commands.applypatches(CLIENT, False, True)
commands.applypatches(CLIENT, use_ff)
commands.logger.info('> Removing comments')
commands.process_comments(CLIENT)
commands.logger.info('> Renaming sources')
commands.process_rename(CLIENT)
commands.logger.info('> Reformating sources')
commands.applyastyle(CLIENT)
commands.logger.info('> Commenting OpenGL constants')
commands.process_annotate(CLIENT)
commands.logger.info('> Creating reobfuscation tables')
commands.renamereobsrg(CLIENT)
commands.logger.info('> Done in %.2f seconds' % (time.time() - clienttime))
else:
commands.logger.warn('!! Client already decompiled. Run cleanup before decompiling again !!')
cltdone = True
srcdir = os.path.join(commands.srcserver, os.path.normpath(commands.ffsource))
if not os.path.exists(srcdir):
commands.logger.info('== Decompiling Server ==')
if commands.checkjars(SERVER):
servertime = time.time()
commands.logger.info('> Creating SRGS for server')
commands.createsrgs(SERVER)
commands.logger.info('> Applying Retroguard to server')
commands.applyrg(SERVER)
commands.logger.info('> Applying Exceptor to server')
commands.applyexceptor(SERVER)
if use_ff:
commands.logger.info('> Decompiling...')
commands.applyff(SERVER)
commands.logger.info('> Unzipping the server sources')
commands.extractsrc(SERVER)
commands.logger.info('> Unzipping the server jar')
commands.extractjar(SERVER)
if not use_ff:
commands.logger.info('> Applying jadretro')
commands.applyjadretro(SERVER)
commands.logger.info('> Decompiling...')
commands.applyjad(SERVER)
commands.logger.info('> Copying the server sources')
commands.copysrc(SERVER)
commands.logger.info('> Applying patches')
if commands.osname == 'osx' and not use_ff:
commands.applypatches(SERVER, False, True)
commands.applypatches(SERVER, use_ff)
commands.logger.info('> Removing comments')
commands.process_comments(SERVER)
commands.logger.info('> Renaming sources')
commands.process_rename(SERVER)
commands.logger.info('> Reformating sources')
commands.applyastyle(SERVER)
commands.logger.info('> Creating reobfuscation tables')
commands.renamereobsrg(SERVER)
commands.logger.info('> Done in %.2f seconds' % (time.time() - servertime))
else:
commands.logger.warn('!! Server already decompiled. Run cleanup before decompiling again !!')
srvdone = True
#.........这里部分代码省略.........
示例6: main
# 需要导入模块: from commands import Commands [as 别名]
# 或者: from commands.Commands import creatergcfg [as 别名]
def main(conffile):
commands = Commands(conffile)
commands.checkupdates()
#TODO: Add a check for java here.
cltdone = False
srvdone = False
commands.logger.info ('> Creating Retroguard config files')
commands.creatergcfg()
if not os.path.exists(commands.srcclient):
commands.logger.info ('== Decompiling Client ==')
if commands.checkjars(0):
clienttime = time.time()
commands.logger.info ('> Creating SRGS for client')
commands.createsrgs(0)
commands.logger.info ('> Applying Retroguard to client')
commands.applyrg(0)
commands.logger.info ('> Unzipping the client jar')
commands.extractjar(0)
commands.logger.info ('> Applying jadretro')
commands.applyjadretro(0)
commands.logger.info ('> Decompiling...')
commands.applyjad(0)
commands.logger.info ('> Applying patches')
commands.applypatches(0)
commands.logger.info ('> Renaming sources')
commands.rename(0)
commands.logger.info ('> Creating reobfuscation tables')
#commands.createsaffx(0)
commands.renamereobsrg(0)
#print ('> Cleaning temp directory')
#commands.cleantempbin(0)
commands.logger.info ('> Done in %.2f seconds'%(time.time()-clienttime))
else:
commands.logger.warn ('!! Client already decompiled. Run cleanup before decompiling again !!')
cltdone = True
if not os.path.exists(commands.srcserver):
commands.logger.info ('== Decompiling Server ==')
if commands.checkjars(1):
servertime = time.time()
commands.logger.info ('> Creating SRGS for server')
commands.createsrgs(1)
commands.logger.info ('> Applying Retroguard to server')
commands.applyrg(1)
commands.logger.info ('> Unzipping the server jar')
commands.extractjar(1)
commands.logger.info ('> Applying jadretro')
commands.applyjadretro(1)
commands.logger.info ('> Decompiling...')
commands.applyjad(1)
commands.logger.info ('> Applying patches')
commands.applypatches(1)
commands.logger.info ('> Renaming sources')
commands.rename(1)
commands.logger.info ('> Creating reobfuscation tables')
#commands.createsaffx(1)
commands.renamereobsrg(1)
#print ('> Cleaning temp directory')
#commands.cleantempbin(1)
commands.logger.info ('> Done in %.2f seconds'%(time.time()-servertime))
else:
commands.logger.warn ('!! Server already decompiled. Run cleanup before decompiling again !!')
srvdone = True
commands.logger.info ('== Post decompiling operations ==')
if not cltdone or not srvdone:
commands.logger.info ('> Recompiling')
recompile.main(conffile)
if not cltdone:
commands.logger.info ('> Generating the md5 (client)')
commands.gathermd5s(0)
if not srvdone:
commands.logger.info ('> Generating the md5 (server)')
commands.gathermd5s(1)