页次: 1
问题简述:使用 wine7.0-rc* 启动 IDA Pro 7.5 会导致直接崩溃,即程序直接退出,具体崩溃日志:https://paste.rs/Ue1
首先我的尝试是执行如下指令:
sudo pacman -U /var/cache/pacman/pkg/wine-6.23-1-x86_64.pkg.tar.zst
即将 wine 降级,同时使用 winedbg ida.exe 启动调试器并进行单步调试。整个启动前的汇编都没有什么大问题,无非是一些跳转和地址的初始化,之后调试到下面的位置再尝试单步步进,但是 IDA 会直接启动,看不到被调用函数内部:
0x000000017000c968 ntdll+0xc968: calll *0x000000007ffe1000
之后可以正常启动。
然后我再将 wine 升级到 wine-7.0rc4-1,继续使用 winedbg 调试。发现执行的汇编指令甚至地址都一模一样,但是同样调试到上述位置处时,尝试步进,会直接打开 IDA 的欢迎界面:
但是尝试点击 Go 启动时,winedbg 直接报告了异常触发:
Unhandled exception: 0x40000015 in 64-bit code (0x000000007b0123ae).
016c:fixme:dbghelp:dump_unwind_info couldn't read memory for UNWIND_INFO at af740ab8
Register dump:
rip:000000007b0123ae rsp:0000000012e2ec10 rbp:000000000310a2f0 eflags:00000202 ( - -- I - - - )
rax:0000000012e2ec50 rbx:00000000033af690 rcx:0000000012e2ec30 rdx:0000000000000001
rsi:0000000012e2ed28 rdi:0000000012e2ec58 r8:0000000000000001 r9:0000000012e2ed20 r10:0000000000000000
r11:0000000000000001 r12:00000000033ac2f0 r13:0000000000000000 r14:0000000000000000 r15:0000000000000000
Stack dump:
0x0000000012e2ec10: 0000000012e2ec30 0000000000000000
0x0000000012e2ec20: 0000000000000000 0000000000000024
0x0000000012e2ec30: 0000000140000015 0000000000000000
0x0000000012e2ec40: 000000007b0123ae 0000000000000001
0x0000000012e2ec50: 00000000033af690 00000003af710280
0x0000000012e2ec60: 0000000000000038 000000000310a328
0x0000000012e2ec70: 000000000310a2f0 00000003af710280
0x0000000012e2ec80: 000000000000001e 0000000000000000
0x0000000012e2ec90: 0000000000000000 00000003af6a94cd
0x0000000012e2eca0: 00000000fffffffe 00000000033af690
0x0000000012e2ecb0: 0000000000000000 000000000310a328
0x0000000012e2ecc0: 000000000310a2f0 00000000033af690
Backtrace:
=>0 0x000000007b0123ae AccessCheckByTypeAndAuditAlarmW+0x113ae() in kernelbase (0x000000000310a2f0)
1 0x00000000118e8181 in libzmq-v142-mt-4_3_4-4e355e3e (+0x18181) (0x000000000310a2f0)
2 0x00000000118e75a2 in libzmq-v142-mt-4_3_4-4e355e3e (+0x175a2) (0x000000000310a2f0)
3 0x0000000011912998 zmq_atomic_counter_inc+0x23138() in libzmq-v142-mt-4_3_4-4e355e3e (0x0000000000000000)
0x000000007b0123ae kernelbase+0x123ae: nop
可以看到触发了 0x40000015 异常,但是我对于 windows 异常代码以及问题并没有太多了解。我尝试搜索了一下,并没有很好的解决方案。但是通过调用栈,可以确定异常的发生在于AccessCheckByTypeAndAuditAlarmW 函数内部,这是 windowsapi,貌似用于访问权限检查。但我无法确定在 wine-6.23-1 中同样进入该函数时的行为和上下文是什么。
有无大佬救救孩子🥺
XDSEC@XDU
离线
感觉 Arch 官方仓库里的 wine 更新得太激进了,跟的是开发版的更新进度。需要稳定使用的话建议用 AUR 的 wine-stable,就是编译时间有点长,不过也有第三方仓库提供预编译的版本。
离线
页次: 1