post.py 文件源码

python
阅读 18 收藏 0 点赞 0 评论 0

项目:post_pre 作者: coruws 项目源码 文件源码
def main():
    # set current dir
    set_home()

    # read file
    data = get_file_data(path)

    # get pefile infos
    pe_info = pefile.PE(data = data, fast_load=False)

    #--------------------------------------
    #TimeDateStamp

    #clean from whole file
    TimeDateStamp = pe_info.FILE_HEADER.TimeDateStamp
    #raw to byte string
    TimeDateStamp = struct.pack('I',TimeDateStamp)
    new_data = data.replace(TimeDateStamp,'\x00\x00\x00\x00')

    #--------------------------------------
    #DEBUG info

    if hasattr(pe_info,'DIRECTORY_ENTRY_DEBUG'):

        #clean debug datas
        for debug in pe_info.DIRECTORY_ENTRY_DEBUG:
            d_addr = debug.struct.PointerToRawData
            d_size = debug.struct.SizeOfData
            new_data = fill_zero(new_data,d_addr,d_size)

        #clean debug dir
        dir = pefile.DIRECTORY_ENTRY['IMAGE_DIRECTORY_ENTRY_DEBUG']
        debug_offset = pe_info.get_offset_from_rva(pe_info.OPTIONAL_HEADER.DATA_DIRECTORY[dir].VirtualAddress)
        debug_size = pe_info.OPTIONAL_HEADER.DATA_DIRECTORY[dir].Size
        new_data = fill_zero(new_data,debug_offset,debug_size)

        #clean links to dir
        offset = pe_info.OPTIONAL_HEADER.DATA_DIRECTORY[dir].__file_offset__
        size = pe_info.OPTIONAL_HEADER.DATA_DIRECTORY[dir].__format_length__
        new_data = fill_zero(new_data,offset,size)


    SaveFile(path,new_data)
    print '[OK] post-compile\n'
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号