在内存中搜索 UTF8 编码的字符串

Searching for UTF8 encoded strings in memory

使用 windbg,是否可以在内存中搜索 UTF8 编码的字符串。例如,我试图在内存中找到以下字符串:

memory contents:       3c 00 64 00 69 00 76 00 20 00 69 00 64 00 3d 00  
corresponding string:  "<.d.i.v. .i.d.=."

是否可以执行如下搜索功能?

search "\<d[=11=]x00i[=11=]x00v[=11=]x00 [=11=]x00i[=11=]x00d[=11=]x00=[=11=]x00"

其中 [=12=]x00 表示内存中的 hex 00

lkd> s -u nt l10000 "cat"
804dcbec  0063 0061 0074 0069 006f 006e 0050 006f  c.a.t.i.o.n.P.o.
804dedfa  0063 0061 0074 0069 006f 006e 0073 0000  c.a.t.i.o.n.s...
804dfa5e  0063 0061 0074 0069 006f 006e 0046 0072  c.a.t.i.o.n.F.r.
804dfb5c  0063 0061 0074 0069 006f 006e 0050 0072  c.a.t.i.o.n.P.r.

或您的实际搜索字符串

lkd> s -u 0 L?10000000 "<div id"
009f582e  003c 0064 0069 0076 0020 0069 0064 0022  <.d.i.v. .i.d.".
009f5924  003c 0064 0069 0076 0020 0069 0064 0022  <.d.i.v. .i.d.".
00a08200  003c 0064 0069 0076 0020 0069 0064 0022  <.d.i.v. .i.d.".
00a0b598  003c 0064 0069 0076 0020 0069 0064 0022  <.d.i.v. .i.d.".