lies2014 发表于 2024-1-18 16:46

Multiline Ultimate Assembler 插件完美支持中文版(32&64位)(20240120更新)

本帖最后由 lies2014 于 2024-1-20 12:40 编辑

折腾了几天,终于搞定了
一个平时不用C的人,硬是把鸭子赶上了架
(主要精力都花在搭建环境让源码通过编译上,以后还是老老实实玩FPC吧:'(weeqw)
附件包含32和64位插件,支持中文输入、显示、双向同步
源码重新编译非二进制修改,稳定性较好
其中中文输入借鉴了@csjwaman 的思路,万分感谢!

注意:如果中文显示乱码请将x32dbg.ini和x64dbg.ini文件中
下“font_name”一项删除



2024.1.20 更新:
修复原版 push (0x6A) 指令识别 bug(感谢@csjwaman 发现的问题)
具体见:https://www.52pojie.cn/forum.php?mod=redirect&goto=findpost&ptid=1882064&pid=49251261
请下载 multiasm_x64dbg_v2.rar


如果这个问题对你不重要或者说你不需要从插件向调试器发送汇编代码也可不更新

csjwaman 发表于 2024-1-18 17:24


这个插件编译的代码,和原始代码会有出入.楼主看看能不能修复:

原始代码:

00401E40| 55                           | PUSH EBP                                       | 中文
00401E41| 8BEC                         | MOV EBP,ESP                                    |
00401E43| 6A FF                        | PUSH 0xFFFFFFFF                              |主要区别在这里
00401E45| 68 90354000                  | PUSH www.403590                              |
00401E4A| 68 C61F4000                  | PUSH <JMP.&_except_handler3>                   |
00401E4F| 64:A1 00000000               | MOV EAX,DWORD PTR FS:                     |
00401E55| 50                           | PUSH EAX                                       |
00401E56| 64:8925 00000000             | MOV DWORD PTR FS:,ESP                     |
00401E5D| 83EC 68                      | SUB ESP,0x68                                 |
00401E60| 53                           | PUSH EBX                                       |
00401E61| 56                           | PUSH ESI                                       |
00401E62| 57                           | PUSH EDI                                       |
00401E63| 8965 E8                      | MOV DWORD PTR SS:,ESP                |
00401E66| 33DB                         | XOR EBX,EBX                                    |
00401E68| 895D FC                      | MOV DWORD PTR SS:,EBX               |
00401E6B| 6A 02                        | PUSH 0x2                                       |
00401E6D| FF15 B4314000                | CALL DWORD PTR DS:[<__set_app_type>]         |
00401E73| 59                           | POP ECX                                        |



插件编译后:

00401E40| 55                           | PUSH EBP                                       | 中文
00401E41| 89E5                         | MOV EBP,ESP                                    |
00401E43| 68 FFFFFFFF                  | PUSH 0xFFFFFFFF                              |主要区别在这里
00401E48| 68 90354000                  | PUSH www.403590                              |
00401E4D| 68 C61F4000                  | PUSH <JMP.&_except_handler3>                   |
00401E52| 64:A1 00000000               | MOV EAX,DWORD PTR FS:                     |
00401E58| 50                           | PUSH EAX                                       |
00401E59| 64:8925 00000000             | MOV DWORD PTR FS:,ESP                     |
00401E60| 83EC 68                      | SUB ESP,0x68                                 |
00401E63| 53                           | PUSH EBX                                       |
00401E64| 56                           | PUSH ESI                                       |
00401E65| 57                           | PUSH EDI                                       |
00401E66| 8965 E8                      | MOV DWORD PTR SS:,ESP                |
00401E69| 31DB                         | XOR EBX,EBX                                    |
00401E6B| 6A 02                        | PUSH 0x2                                       |

csjwaman 发表于 2024-1-20 18:54

lies2014 发表于 2024-1-20 12:31
原来没仔细看,以为是再编译的插件和原版有出入,后来试了一下,才明白你说的是 UMA 处理 push 代码有问 ...


第二行的代码也不一致,估计是指令系统的问题吧.

原始代码:

00401E40| 55                           | PUSH EBP                                       | 中文
00401E41| 8BEC                         | MOV EBP,ESP                                    |

插件编译后:

00401E40| 55                           | PUSH EBP                                       | 中文
00401E41| 89E5                         | MOV EBP,ESP                                    |

高山!&流水 发表于 2024-1-18 16:56

谢谢分享,收藏了

czp13 发表于 2024-1-18 17:05

好东西!感谢分享

csjwaman 发表于 2024-1-18 17:19

敬佩你的钻研精神!

APWN 发表于 2024-1-18 17:55

谢谢大佬的分享!!!

tuota 发表于 2024-1-18 18:28

修改大段代码也该挺实用的

zhenze 发表于 2024-1-18 19:06

感谢分享

vscos 发表于 2024-1-18 21:40

这是做什么的,下来看看

vscos 发表于 2024-1-18 21:48

我安装好了,但插件里不出呀
页: [1] 2 3 4 5
查看完整版本: Multiline Ultimate Assembler 插件完美支持中文版(32&64位)(20240120更新)