Exemple #1
0
def pt32_walk(data, ttbr, skip):
    print("First level (va = %08x)" % ttbr)
    print("---------------------------------------------")
    fl = data[ttbr - ttbr:ttbr - ttbr + 0x4000]

    i = 0
    for (va, fl) in pt.parse_pt(fl):
        i += 1
        if i <= skip:
            continue
        if type(fl) == pt.pt_desc:
            print("")
            print("Second level (va = %08x)" % va)
            print("---------------------------------------------")
            sldata = data[fl.coarse_base - ttbr:fl.coarse_base - ttbr + 0x400]
            pt.parse_spt(sldata, va)
Exemple #2
0
    def pt32_walk(ttbr, skip):
        I("First level (va = %08x)", ttbr)
        I("---------------------------------------------")
        fl = Framework.peek(ttbr, 0x4000)

        i = 0
        for (va, fl) in pt.parse_pt(fl):
            i += 1
            if i <= skip:
                continue
            if type(fl) == pt.pt_desc:
                I("")
                I("Second level (va = %08x)", va)
                I("---------------------------------------------")
                sldata = Framework.peek(fl.coarse_base, 0x400)
                pt.parse_spt(sldata, va)