def load_file(ctx): if not os.path.exists(ctx.filename): error("file {ctx.filename} doesn't exists".format(ctx=ctx)) if ctx.interactive: return False die() if not os.path.isfile(ctx.filename): error("this is not a file".format(ctx=ctx)) if ctx.interactive: return False die() try: dis = Disassembler(ctx.filename, ctx.raw_type, ctx.raw_base, ctx.raw_big_endian) except ExcArch as e: error("arch %s is not supported" % e.arch) if ctx.interactive: return False die() except ExcFileFormat: error("the file is not PE or ELF binary") if ctx.interactive: return False die() except ExcPEFail as e: error(str(e.e)) error("It seems that pefile.parse_data_directories is bugged.") error("Maybe you should Retry") if ctx.interactive: return False die() ctx.dis = dis ctx.libarch = dis.load_arch_module() if ctx.symfile: dis.load_user_sym_file(ctx.symfile) return True
def load_file(ctx): if not os.path.exists(ctx.filename): error("file {ctx.filename} doesn't exists".format(ctx=ctx)) if ctx.interactive: return False die() if not os.path.isfile(ctx.filename): error("this is not a file".format(ctx=ctx)) if ctx.interactive: return False die() try: dis = Disassembler(ctx.filename, ctx.raw_type, ctx.raw_base, ctx.raw_big_endian) except ExcArch as e: error("arch %s is not supported" % e.arch) if ctx.interactive: return False die() except ExcFileFormat: error("the file is not PE or ELF binary") if ctx.interactive: return False die() except ExcPEFail as e: error(str(e.e)) error("It seems that pefile.parse_data_directories is bugged.") error("Maybe you should Retry") if ctx.interactive: return False die() ctx.dis = dis ctx.libarch = dis.load_arch_module() if ctx.symfile: dis.load_user_sym_file(ctx.symfile) return True