Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Data calculate trace #187

Merged
merged 37 commits into from
Jan 1, 2025
Merged

Data calculate trace #187

merged 37 commits into from
Jan 1, 2025

Conversation

ddkwork
Copy link
Contributor

@ddkwork ddkwork commented Nov 15, 2024

No description provided.

@ddkwork
Copy link
Contributor Author

ddkwork commented Nov 15, 2024

以下是预期的日志输出样式,目标是让sdk api完成这个功能:auto step in 来保存x86寄存器实现64位整数的乘除法的计算过程。根据以往的经验,其它调试器是通过编写脚本或者调用api编写插件,如果能用我们的sdk api完成类似的过程,这将对很多算法追踪工作很有用,用于排查bug类的问题。

https://github.com/ddkwork/asm/blob/master/demo%2Fdemo_test.go#L12-L17

https://github.com/ddkwork/asm/blob/master/demo%2Fbit64.go#L116-L172

func mul(xLow, xHigh, yLow, yHigh uint32) (b Bit64) {
        mulCount++
        x := Bit64{Low: xLow, High: xHigh}
        y := Bit64{Low: yLow, High: yHigh}
        type MulInfo struct {
                Index int
                XLow  uint32
                XHigh uint32
                YLow  uint32
                YHigh uint32
                X     uint64
                Y     uint64
                Z     uint64
        }
        defer mylog.Struct("mul", MulInfo{
                Index: mulCount,
                XLow:  x.Low,
                XHigh: x.High,
                YLow:  y.Low,
                X:     x.Uint64(),
                Y:     y.Uint64(),
                Z:     x.Uint64() * y.Uint64(),
        })
        return FromUint64(x.Uint64() * y.Uint64())
}

func div(xLow, xHigh, yLow, yHigh uint32) (b Bit64) {
        divCount++
        x := Bit64{Low: xLow, High: xHigh}
        y := Bit64{Low: yLow, High: yHigh}
        type DivInfo struct {
                Index int
                XLow  uint32
                XHigh uint32
                YLow  uint32
                YHigh uint32
                X     uint64
                Y     uint64
                Z     uint64
        }
        defer mylog.Struct("div", DivInfo{
                Index: divCount,
                XLow:  x.Low,
                XHigh: x.High,
                YLow:  y.Low,
                YHigh: y.High,
                X:     x.Uint64(),
                Y:     y.Uint64(),
                Z:     x.Uint64() / y.Uint64(),
        })
        return FromUint64(x.Uint64() / y.Uint64())
}

@ddkwork
Copy link
Contributor Author

ddkwork commented Nov 15, 2024

简而言之就是让hyperdbg捕获这里的运算参数到日志

https://github.com/ddkwork/asm/blob/master/main.c#L381-L471

@SinaKarvandi
Copy link
Member

Hi,
Not sure if I understand it correctly from the translation. Do you need some SDK APIs to show registers?
In that case, isn't it what you want:
https://github.com/HyperDbg/HyperDbg/blob/63f620e00a03bf1af3d94f641f920d05b32655e6/hyperdbg/libhyperdbg/code/export/export.cpp#L411

@ddkwork
Copy link
Contributor Author

ddkwork commented Nov 24, 2024

嗨,不确定我是否从翻译中正确理解了它。您需要一些 SDK API 来显示寄存器吗?在这种情况下,这不就是你想要的吗:https://github.com/HyperDbg/HyperDbg/blob/63f620e00a03bf1af3d94f641f920d05b32655e6/hyperdbg/libhyperdbg/code/export/export.cpp#L411

抱歉回复这么晚,我刚刚用x64dbg实现了这个数据拦截的api单元测试,我将抽空让hyperdbg完成同样的事情。以下是x64dbg的单元测试代码,它使用网络调试接口完成:

func Test_x32dbg_GetMainModuleEntry(t *testing.T) {
	stream.RunCommand("netstat -ano | findstr :6589")
	a := New().Connect()
	defer a.Close()
	// a.Restart()//restartadmin todo 重载后服务端被关闭了,还是不方便使用,解决办法是在gui命令栏内输入 restartadmin 重启服务端,这样不用关闭调试器
	// breakpoints := a.Breakpoints()
	// mylog.Struct("breakpoints", breakpoints)
	a.BreakpointsRemoveAll()

	//a.SetBreakpoint(a.GetMainModuleEntry())
	//$+19     | E9 4E060000              | jmp <asm._asm1>                         |
	//$+A7     | E8 99030000              | call <asm.__allmul>                     | main.c:69
	//$+10B    | E8 70030000              | call <asm.__alldiv>                     | main.c:101
	//$+50B    | 68 34A03800              | push asm.38A034                         | 38A034:"asm1 for code3"
	singular := a.DisassemblySingular(a.MainModuleEntry() + 0x19)
	asm1 := getAddressBySingularDisassembly[uint32](singular.Assembly)
	mylog.Hex("asm1", asm1)
	end := asm1 + 0x50B
	a.SetBreakpoint(end)
	a.SetCommentNotes(end, "end trace")

	singular = a.DisassemblySingular(asm1 + 0xa7)
	allmul := getAddressBySingularDisassembly[uint32](singular.Assembly)
	mylog.Hex("__allmul", allmul)
	a.SetCommentNotes(allmul, "__allmul")

	singular = a.DisassemblySingular(asm1 + 0x10b)
	alldiv := getAddressBySingularDisassembly[uint32](singular.Assembly)
	mylog.Hex("__alldiv", alldiv)
	a.SetCommentNotes(alldiv, "__alldiv")

	a.SetBreakpoint(allmul)
	a.SetBreakpoint(alldiv)

	bigNumTrace := func() {
		switch a.Eip() {
		case allmul:
			mul(a.PeekStack(1), a.PeekStack(2), a.PeekStack(3), a.PeekStack(4))
		case alldiv:
			div(a.PeekStack(1), a.PeekStack(2), a.PeekStack(3), a.PeekStack(4))
		case end: // 如何把这个条件传递到RunCommandWithCount的停止条件呢?这样就不会让程序退出了
		}
	}
	a.RunCommandWithCount("run", 400, bigNumTrace)
}

以下是拦截到的大数计算日志:

2024-11-24 22:09:42    Trace ->  --------- title --------------------------- info ------------------ //runtime.doInit1+0xec C:/Program Files/Go/src/runtime/proc.go:7290
2024-11-24 22:09:42      Hex ->                       asm10X381680|3675776 //github.com/ddkwork/debuger/x32dbg.Test_x32dbg_GetMainModuleEntry+0x1b6 D:/workspace/workspace/debuger/x32dbg/x32dbg_test.go:566
2024-11-24 22:09:42      Hex ->                   __allmul0X381AC5|3676869 //github.com/ddkwork/debuger/x32dbg.Test_x32dbg_GetMainModuleEntry+0x2d1 D:/workspace/workspace/debuger/x32dbg/x32dbg_test.go:573
2024-11-24 22:09:42      Hex ->                   __alldiv0X381B00|3676928 //github.com/ddkwork/debuger/x32dbg.Test_x32dbg_GetMainModuleEntry+0x371 D:/workspace/workspace/debuger/x32dbg/x32dbg_test.go:578
2024-11-24 22:09:42   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000001|1,
   XLow: 0x0000F3FF|62463,
  XHigh: 0x00000000|0,
   YLow: 0x00001302|4866,
  YHigh: 0x00000000|0,
      X: 0x000000000000F3FF|62463,
      Y: 0x0000000000001302|4866,
      Z: 0x00000000121DD4FE|303944958
}
2024-11-24 22:09:42   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000002|2,
   XLow: 0x121DD597|303945111,
  XHigh: 0x00000000|0,
   YLow: 0x0071B793|7452563,
  YHigh: 0x00000000|0,
      X: 0x00000000121DD597|303945111,
      Y: 0x000000000071B793|7452563,
      Z: 0x00080C29027796B5|2265170088269493
}
2024-11-24 22:09:42   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000001|1,
   XLow: 0x02F4963B|49583675,
  XHigh: 0x00080C29|527401,
   YLow: 0x6381BE9A|1669447322,
  YHigh: 0x00000000|0,
      X: 0x00080C2902F4963B|2265170096461371,
      Y: 0x000000006381BE9A|1669447322,
      Z: 0x000000000014B426|1356838
}
2024-11-24 22:09:42   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000003|3,
   XLow: 0x031EF4E3|52360419,
  XHigh: 0x00000002|2,
   YLow: 0x00000002|2,
  YHigh: 0x00000000|0,
      X: 0x00000002031EF4E3|8642295011,
      Y: 0x0000000000000002|2,
      Z: 0x00000004063DE9C6|17284590022
}
2024-11-24 22:09:42   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000004|4,
   XLow: 0x0000F3F0|62448,
  XHigh: 0x00000000|0,
   YLow: 0x00001634|5684,
  YHigh: 0x00000000|0,
      X: 0x000000000000F3F0|62448,
      Y: 0x0000000000001634|5684,
      Z: 0x0000000015282CC0|354954432
}
2024-11-24 22:09:42   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000005|5,
   XLow: 0x15282D4B|354954571,
  XHigh: 0x00000000|0,
   YLow: 0x02F4963B|49583675,
  YHigh: 0x00000000|0,
      X: 0x0000000015282D4B|354954571,
      Y: 0x00080C2902F4963B|2265170096461371,
      Z: 0xB0254C132C486249|12692634770044641865
}
2024-11-24 22:09:42   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000002|2,
   XLow: 0x32B36B74|850619252,
  XHigh: 0xB0254C17|2955234327,
   YLow: 0x6381BE9A|1669447322,
  YHigh: 0x00000000|0,
      X: 0xB0254C1732B36B74|12692634787332189044,
      Y: 0x000000006381BE9A|1669447322,
      Z: 0x00000001C52AFD7B|7602896251
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000006|6,
   XLow: 0x1852A1B4|408068532,
  XHigh: 0x00002C0B|11275,
   YLow: 0x00000003|3,
  YHigh: 0x00000000|0,
      X: 0x00002C0B1852A1B4|48426164330932,
      Y: 0x0000000000000003|3,
      Z: 0x0000842148F7E51C|145278492992796
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000007|7,
   XLow: 0x0000F3E1|62433,
  XHigh: 0x00000000|0,
   YLow: 0x00001968|6504,
  YHigh: 0x00000000|0,
      X: 0x000000000000F3E1|62433,
      Y: 0x0000000000001968|6504,
      Z: 0x0000000018340C68|406064232
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000008|8,
   XLow: 0x18340CE4|406064356,
  XHigh: 0x00000000|0,
   YLow: 0x32B36B74|850619252,
  YHigh: 0x00000000|0,
      X: 0x0000000018340CE4|406064356,
      Y: 0xB0254C1732B36B74|12692634787332189044,
      Z: 0x423FF98E44652350|4773808519464166224
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000003|3,
   XLow: 0x8D5D086C|2371684460,
  XHigh: 0x42407DAF|1111522735,
   YLow: 0x6381BE9A|1669447322,
  YHigh: 0x00000000|0,
      X: 0x42407DAF8D5D086C|4773953797957159020,
      Y: 0x000000006381BE9A|1669447322,
      Z: 0x00000000AA720DBB|2859601339
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000009|9,
   XLow: 0x0000F464|62564,
  XHigh: 0x00000000|0,
   YLow: 0x00001C9E|7326,
  YHigh: 0x00000000|0,
      X: 0x000000000000F464|62564,
      Y: 0x0000000000001C9E|7326,
      Z: 0x000000001B51C5B8|458343864
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x000000000000000A|10,
   XLow: 0x1B51C6B7|458344119,
  XHigh: 0x00000000|0,
   YLow: 0x8D5D086C|2371684460,
  YHigh: 0x00000000|0,
      X: 0x000000001B51C6B7|458344119,
      Y: 0x42407DAF8D5D086C|4773953797957159020,
      Z: 0x85C42A2710308D34|9638875449743412532
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x000000000000000B|11,
   XLow: 0xC9DDF112|3386765586,
  XHigh: 0x00001090|4240,
   YLow: 0x00000004|4,
  YHigh: 0x00000000|0,
      X: 0x00001090C9DDF112|18214048100626,
      Y: 0x0000000000000004|4,
      Z: 0x000042432777C448|72856192402504
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000004|4,
   XLow: 0x13530849|324208713,
  XHigh: 0x000010B9|4281,
   YLow: 0x0000006A|106,
  YHigh: 0x00000000|0,
      X: 0x000010B913530849|18387079202889,
      Y: 0x000000000000006A|106,
      Z: 0x0000002863338014|173463011348
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x000000000000000C|12,
   XLow: 0x00000031|49,
  XHigh: 0x00000000|0,
   YLow: 0x633BCC44|1664863300,
  YHigh: 0x00000000|0,
      X: 0x0000000000000031|49,
      Y: 0x00000028633BCC44|173463555140,
      Z: 0x000007BAFE721904|8499714201860
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x000000000000000D|13,
   XLow: 0x000000F1|241,
  XHigh: 0x00000000|0,
   YLow: 0x13530849|324208713,
  YHigh: 0x00000000|0,
      X: 0x00000000000000F1|241,
      Y: 0x000010B913530849|18387079202889,
      Z: 0x000FBE3B312ACCB9|4431286087896249
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000005|5,
   XLow: 0x633BCC44|1664863300,
  XHigh: 0x00000028|40,
   YLow: 0x000014C9|5321,
  YHigh: 0x00000000|0,
      X: 0x00000028633BCC44|173463555140,
      Y: 0x00000000000014C9|5321,
      Z: 0x0000000001F16EFB|32599803
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000006|6,
   XLow: 0x3BF80DB8|1006112184,
  XHigh: 0x000FC5F6|1033718,
   YLow: 0x0000006A|106,
  YHigh: 0x00000000|0,
      X: 0x000FC5F63BF80DB8|4439786009398712,
      Y: 0x000000000000006A|106,
      Z: 0x000026180F0E6A64|41884773673572
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x000000000000000E|14,
   XLow: 0x00000024|36,
  XHigh: 0x00000000|0,
   YLow: 0x16FBA94F|385591631,
  YHigh: 0x00000000|0,
      X: 0x0000000000000024|36,
      Y: 0x0000261816FBA94F|41884906662223,
      Z: 0x00055B633B63CF1C|1507856639840028
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x000000000000000F|15,
   XLow: 0x000000C3|195,
  XHigh: 0x00000000|0,
   YLow: 0x3BF80DB8|1006112184,
  YHigh: 0x00000000|0,
      X: 0x00000000000000C3|195,
      Y: 0x000FC5F63BF80DB8|4439786009398712,
      Z: 0x0C03CA8FADF27328|865758271832748840
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000007|7,
   XLow: 0x16FBA94F|385591631,
  XHigh: 0x00002618|9752,
   YLow: 0x000014C9|5321,
  YHigh: 0x00000000|0,
      X: 0x0000261816FBA94F|41884906662223,
      Y: 0x00000000000014C9|5321,
      Z: 0x00000001D52F6FD7|7871623127
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000008|8,
   XLow: 0xC4507C73|3293609075,
  XHigh: 0x0C0925F4|201926132,
   YLow: 0x0000006A|106,
  YHigh: 0x00000000|0,
      X: 0x0C0925F4C4507C73|867266136441388147,
      Y: 0x000000000000006A|106,
      Z: 0x001D1143844461C7|8181756004164039
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000010|16,
   XLow: 0x00000019|25,
  XHigh: 0x00000000|0,
   YLow: 0x8CE0415D|2363507037,
  YHigh: 0x00000000|0,
      X: 0x0000000000000019|25,
      Y: 0x001D11498CE0415D|8181781918400861,
      Z: 0x02D6B02EC1E66215|204544547960021525
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000011|17,
   XLow: 0x00000047|71,
  XHigh: 0x00000000|0,
   YLow: 0xC4507C73|3293609075,
  YHigh: 0x00000000|0,
      X: 0x0000000000000047|71,
      Y: 0x0C0925F4C4507C73|867266136441388147,
      Z: 0x568986E2725283E5|6235663466209903589
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000009|9,
   XLow: 0x8CE0415D|2363507037,
  XHigh: 0x001D1149|1904969,
   YLow: 0x000014C9|5321,
  YHigh: 0x00000000|0,
      X: 0x001D11498CE0415D|8181781918400861,
      Y: 0x00000000000014C9|5321,
      Z: 0x00000166027AEB15|1537639901973
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x000000000000000A|10,
   XLow: 0x374D770B|927823627,
  XHigh: 0x59603877|1499478135,
   YLow: 0x0000006A|106,
  YHigh: 0x00000000|0,
      X: 0x59603877374D770B|6440209551819896587,
      Y: 0x000000000000006A|106,
      Z: 0x00D7D9E424BF85F4|60756693885093364
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000012|18,
   XLow: 0x00000010|16,
  XHigh: 0x00000000|0,
   YLow: 0x0E3B89E0|238782944,
  YHigh: 0x00000000|0,
      X: 0x0000000000000010|16,
      Y: 0x00D7DA110E3B89E0|60756886780873184,
      Z: 0x0D7DA110E3B89E00|972110188493970944
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000013|19,
   XLow: 0x000000FF|255,
  XHigh: 0x00000000|0,
   YLow: 0x374D770B|927823627,
  YHigh: 0x00000000|0,
      X: 0x00000000000000FF|255,
      Y: 0x59603877374D770B|6440209551819896587,
      Z: 0x06D83EC0162993F5|493213153923535861
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x000000000000000B|11,
   XLow: 0x0E3B89E0|238782944,
  XHigh: 0x00D7DA11|14146065,
   YLow: 0x000014C9|5321,
  YHigh: 0x00000000|0,
      X: 0x00D7DA110E3B89E0|60756886780873184,
      Y: 0x00000000000014C9|5321,
      Z: 0x00000A6288F9B567|11418321139047
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x000000000000000C|12,
   XLow: 0x89ED4C14|2314030100,
  XHigh: 0x1455EA33|341174835,
   YLow: 0x0000006A|106,
  YHigh: 0x00000000|0,
      X: 0x1455EA3389ED4C14|1465334760857226260,
      Y: 0x000000000000006A|106,
      Z: 0x00311CC68621A287|13823912838275719
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000014|20,
   XLow: 0x00000009|9,
  XHigh: 0x00000000|0,
   YLow: 0xC4C2967E|3301086846,
  YHigh: 0x00000000|0,
      X: 0x0000000000000009|9,
      Y: 0x00311CD0C4C2967E|13823956838684286,
      Z: 0x01BA0356EAD74A6E|124415611548158574
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000015|21,
   XLow: 0x0000007C|124,
  XHigh: 0x00000000|0,
   YLow: 0x89ED4C14|2314030100,
  YHigh: 0x00000000|0,
      X: 0x000000000000007C|124,
      Y: 0x1455EA3389ED4C14|1465334760857226260,
      Z: 0xD99D70F6CEF0D9B0|15680813682910091696
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x000000000000000D|13,
   XLow: 0xC4C2967E|3301086846,
  XHigh: 0x00311CD0|3218640,
   YLow: 0x000014C9|5321,
  YHigh: 0x00000000|0,
      X: 0x00311CD0C4C2967E|13823956838684286,
      Y: 0x00000000000014C9|5321,
      Z: 0x0000025CE4DAA774|2597999781748
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x000000000000000E|14,
   XLow: 0x9FD0BF4E|2681257806,
  XHigh: 0xDB5776AA|3679942314,
   YLow: 0x0000006A|106,
  YHigh: 0x00000000|0,
      X: 0xDB5776AA9FD0BF4E|15805231892477820750,
      Y: 0x000000000000006A|106,
      Z: 0x0211BB14EE2FDB29|149105961249790761
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000016|22,
   XLow: 0x00000004|4,
  XHigh: 0x00000000|0,
   YLow: 0x5F1BFF0E|1595670286,
  YHigh: 0x00000000|0,
      X: 0x0000000000000004|4,
      Y: 0x0211BB825F1BFF0E|149106431295749902,
      Z: 0x0846EE097C6FFC38|596425725182999608
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000017|23,
   XLow: 0x0000008B|139,
  XHigh: 0x00000000|0,
   YLow: 0x9FD0BF4E|2681257806,
  YHigh: 0x00000000|0,
      X: 0x000000000000008B|139,
      Y: 0xDB5776AA9FD0BF4E|15805231892477820750,
      Z: 0x187D6EA4C657DF5A|1764688282980441946
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x000000000000000F|15,
   XLow: 0x5F1BFF0E|1595670286,
  XHigh: 0x0211BB82|34716546,
   YLow: 0x000014C9|5321,
  YHigh: 0x00000000|0,
      X: 0x0211BB825F1BFF0E|149106431295749902,
      Y: 0x00000000000014C9|5321,
      Z: 0x0000197C70B1C6BF|28022257338047
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000010|16,
   XLow: 0xB486B809|3028727817,
  XHigh: 0x20C4762A|549746218,
   YLow: 0x0000006A|106,
  YHigh: 0x00000000|0,
      X: 0x20C4762AB486B809|2361142030438414345,
      Y: 0x000000000000006A|106,
      Z: 0x004F22ED150619E3|22274924815456739
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000018|24,
   XLow: 0x00000001|1,
  XHigh: 0x00000000|0,
   YLow: 0x58057D53|1476754771,
  YHigh: 0x00000000|0,
      X: 0x0000000000000001|1,
      Y: 0x004F22FD58057D53|22274994658966867,
      Z: 0x004F22FD58057D53|22274994658966867
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x0000000000000019|25,
   XLow: 0x0000009A|154,
  XHigh: 0x00000000|0,
   YLow: 0xB486B809|3028727817,
  YHigh: 0x00000000|0,
      X: 0x000000000000009A|154,
      Y: 0x20C4762AB486B809|2361142030438414345,
      Z: 0xB62F15B0990AB56A|13127735287034328426
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000011|17,
   XLow: 0x58057D53|1476754771,
  XHigh: 0x004F22FD|5186301,
   YLow: 0x000014C9|5321,
  YHigh: 0x00000000|0,
      X: 0x004F22FD58057D53|22274994658966867,
      Y: 0x00000000000014C9|5321,
      Z: 0x000003CEAF7A71B5|4186242183605
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000012|18,
   XLow: 0xA14DAB74|2706221940,
  XHigh: 0xB67E3C7C|3061726332,
   YLow: 0x0000006A|106,
  YHigh: 0x00000000|0,
      X: 0xB67E3C7CA14DAB74|13150014467948260212,
      Y: 0x000000000000006A|106,
      Z: 0x01B8BCF2AF6894F0|124056740263662832
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x000000000000001A|26,
   XLow: 0x00000000|0,
  XHigh: 0x00000000|0,
   YLow: 0x38C8971C|952669980,
  YHigh: 0x00000000|0,
      X: 0x0000000000000000|0,
      Y: 0x01B8BD4E38C8971C|124057133410457372,
      Z: 0x0000000000000000|0
}
2024-11-24 22:09:43   Struct ->                          *//github.com/ddkwork/debuger/x32dbg.mul.func1+0x69 D:/workspace/workspace/debuger/x32dbg/bit64.go:136
MulInfo {
  Index: 0x000000000000001B|27,
   XLow: 0x0000000A|10,
  XHigh: 0x00000000|0,
   YLow: 0xA14DAB74|2706221940,
  YHigh: 0x00000000|0,
      X: 0x000000000000000A|10,
      Y: 0xB67E3C7CA14DAB74|13150014467948260212,
      Z: 0x20EE5CDE4D08B288|2372936163515740808
}
2024-11-24 22:09:43   Struct ->                          ///github.com/ddkwork/debuger/x32dbg.div.func1+0x70 D:/workspace/workspace/debuger/x32dbg/bit64.go:164
DivInfo {
  Index: 0x0000000000000013|19,
   XLow: 0x38C8971C|952669980,
  XHigh: 0x01B8BD4E|28884302,
   YLow: 0x000014C9|5321,
  YHigh: 0x00000000|0,
      X: 0x01B8BD4E38C8971C|124057133410457372,
      Y: 0x00000000000014C9|5321,
      Z: 0x000015345C187A6C|23314627590764
}
2024-11-24 22:09:43  Success ->               detected EOFyou should call CheckEof() //github.com/ddkwork/debuger/x32dbg.(*x32dbg).Request+0x1b1 D:/workspace/workspace/debuger/x32dbg/x32dbg.go:434
2024-11-24 22:09:43  Success ->               detected EOFyou should call CheckEof() //github.com/ddkwork/debuger/x32dbg.(*x32dbg).Request.func3+0xf7 D:/workspace/workspace/debuger/x32dbg/x32dbg.go:411

@ddkwork ddkwork changed the title debug log file test Data calculate trace Nov 24, 2024
@ddkwork ddkwork merged commit 3655d90 into HyperDbg:main Jan 1, 2025
1 check passed
@ddkwork ddkwork mentioned this pull request Jan 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants