예제 #1
0
def main():
    reload(structures)
    structures.build_struc(dict_of_struc)

    start_file = cvar.inf.minEA
    end_file = cvar.inf.maxEA
    clear_file(start_file, end_file)

    string_list = ('$PCIDATA', '$SIODATA', '$APIDATA')

    SIGN_DATA = '0x24'
    curr_addr = start_file
    while curr_addr < end_file:
        string = GetString(curr_addr, 8, ASCSTR_C)
        if string in string_list:
            make_struc(curr_addr, dict_of_struc[string[1:]])
            curr_addr = curr_addr + Dword(curr_addr + 0x8)
        else:
            curr_addr += 1
예제 #2
0
def main():
    reload(structures)
    
    structures.build_struc(dict_of_struc)

    start_file = cvar.inf.minEA 
    end_file = cvar.inf.maxEA 
    clear_file(start_file, end_file)
    
    SIGN_NVAR = '0x5241564eL'
    curr_addr = start_file

    while curr_addr < end_file:
        if hex(Dword(curr_addr)) == SIGN_NVAR:
            make_struc(curr_addr, dict_of_struc['NVAR_HDR'])

        curr_addr += 1

    make_ins_cmt(end_file - 16, 'Before', '\nGUID текущего файла')
    make_struc(end_file - 16, dict_of_struc['GUID'])
def main():
    reload(structures)
    _clear_all()

    dict_of_struc = {}
    structures.build_struc(dict_of_struc)
    # print dict_of_struc

    dict_of_ea = {}
    parse_main_struc(dict_of_ea)
    # print dict_of_ea

    make_SetupPackageScreen(dict_of_ea['ea_SetupPackageScreen'])
    make_SetupPackagePageList(dict_of_ea['ea_SetupPackagePageList'], dict_of_ea['ea_SetupControlInfo_N_N'])
    make_SetupControlInfo_N_N(dict_of_ea['ea_SetupControlInfo_N_N'])
    make_SetupPackageVariableList(dict_of_ea['ea_SetupPackageVariableList'])
    make_SetupPackageHpkData(dict_of_ea['ea_SetupPackageHpkData'])
    make_SetupPackageGUIDList(dict_of_ea['ea_SetupPackageGUIDList'])
    make_SetupPackagePageIdList(dict_of_ea['ea_SetupPackagePageIdList'])
    make_SetupIFRDataList(dict_of_ea['ea_SetupIFRDataList'])
def make_struc():
    reload(structures)
    structures.build_struc(dict_of_struct)