zoukankan      html  css  js  c++  java
  • 调试:格蠹汇编笔记 第一章,从堆里抢救丢失的博客

    作者 是写过《软件调试》的张银奎,以例子的形式讲解调试的经验和知识,文字很鲜活比较有趣。

    第一章,从堆里抢救丢失的博客

    其实就是用调试器从内存里找到文字,搜索时搜索文字的头尾确定范围,再写入文件即可

    0:035> s -u 10000 L8000000 "作者 是写过"
    01d29ec0 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0235bdb6 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0671d328 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    081ce0fe 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0968e536 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0a449014 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0a449214 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0a449514 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0a449d14 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0a449e14 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0a770840 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0acc8206 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0acc8914 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0acc8e14 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0d3dd014 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0d3ddf14 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0d445e60 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0da0f428 4f5c 8005 0020 662f 5199 8fc7 300a 8f6f O.. ./f.Q...0o.
    0:035> s -u 10000 L8000000 "找到文字"
    01d29f66 627e 5230 6587 5b57 0000 0000 0000 007c ~b0R.eW[......|.
    0235be7e 627e 5230 6587 5b57 003c 002f 0070 003e ~b0R.eW[<./.p.>.
    0671d3f0 627e 5230 6587 5b57 003c 002f 0070 003e ~b0R.eW[<./.p.>.
    081ce1c6 627e 5230 6587 5b57 003c 002f 0070 003e ~b0R.eW[<./.p.>.
    0968e5fe 627e 5230 6587 5b57 003c 002f 0070 003e ~b0R.eW[<./.p.>.
    0a4490ae 627e 5230 6587 5b57 0000 0000 0000 004b ~b0R.eW[......K.
    0a4491ae 627e 5230 6587 5b57 0000 0000 0000 0001 ~b0R.eW[........
    0a4492ae 627e 5230 6587 5b57 0000 0000 0000 003a ~b0R.eW[......:.
    0a4495ae 627e 5230 6587 5b57 0000 0000 0000 004f ~b0R.eW[......O.
    0a4499ae 627e 5230 6587 5b57 0000 0000 0000 0037 ~b0R.eW[......7.
    0a449dae 627e 5230 6587 5b57 0000 0000 0000 004d ~b0R.eW[......M.
    0a449eae 627e 5230 6587 5b57 0000 0000 0000 004e ~b0R.eW[......N.
    0a7708da 627e 5230 6587 5b57 0000 0000 0000 0000 ~b0R.eW[........
    0a819646 627e 5230 6587 5b57 0000 6f22 226b 3c3e ~b0R.eW[.."ok"><
    0acc82ce 627e 5230 6587 5b57 003c 002f 0070 003e ~b0R.eW[<./.p.>.
    0acc89ae 627e 5230 6587 5b57 0000 0000 0000 0003 ~b0R.eW[........
    0acc8eae 627e 5230 6587 5b57 0000 0000 0000 0002 ~b0R.eW[........
    0d3c928e 627e 5230 6587 5b57 003c 002f 0070 003e ~b0R.eW[<./.p.>.
    0d3dd0ae 627e 5230 6587 5b57 0000 0000 0000 0000 ~b0R.eW[........
    0d3ddfae 627e 5230 6587 5b57 0000 0000 0000 0051 ~b0R.eW[......Q.
    0d445efa 627e 5230 6587 5b57 0000 7372 6f69 736e ~b0R.eW[..rsions
    0da0f4f0 627e 5230 6587 5b57 003c 002f 0070 003e ~b0R.eW[<./.p.>.

    0:034> !address 0x01d29ec0


    Failed to map Heaps (error 80004005)
    Usage: <unclassified>
    Allocation Base: 01cc0000
    Base Address: 01cc0000
    End Address: 01d47000
    Region Size: 00087000
    Type: 00020000 MEM_PRIVATE
    State: 00001000 MEM_COMMIT
    Protect: 00000004 PAGE_READWRITE

    0:035> .writemem c:log.txt 0x01d29ec0 L2000
    Writing 2000 bytes....

    这时打开写入的文件发现是乱码,因为是unicode编码,没按中文显示,有UE打开在最前面插入 0xff fe再打开即可。

    s -u 10000 L8000000 "作者 是写过"

    .writemem c:log.txt 0x01d29ec0 L2000

  • 相关阅读:
    小程序双重for循环实现tab切换小demo
    小程序基础操作小总结
    一道关于类型转换的面试题的研究
    面试准备(6)vue专题
    面试准备(5)一道关于循环,事件执行顺序的题进行剖析
    微信小程序弹出授权用户信息和手机号
    面试准备(4) 作用域 预解析 字面量 arguments 等考察点练习
    ABC135
    CodeForces 1288C
    P4170
  • 原文地址:https://www.cnblogs.com/xujinping/p/4507299.html
Copyright © 2011-2022 走看看