-
-
[旧帖]
[求助]用fasm编译汇编程序时的错误?
0.00雪花
-
发表于:
2009-5-24 11:29
3575
-
[旧帖] [求助]用fasm编译汇编程序时的错误?
0.00雪花
format PE GUI 4.0 DLL
include 'win32ax.inc'
entry __DllEntry
.text ///////////////////////////////////////////////////////////////////
;++
;
; BOOL
; DllMain(
; IN HINSTANCE hDllHandle,
; IN DWORD nReason,
; IN LPVOID Reserved
; )
;
; Routine Description:
;
; 测试文件是否是PE文件格式。
;
; Arguments:
;
; (esp) - return address
;
; Data (esp+4) - hDllHandle
; (esp+8) - nReason
; (esp+12)- Reserved
;
; Return Value:
;
; eax = TRUE, initialization succeeds; eax = FALSE, initialization fails。
;
;--
__DllEntry:
xor eax, eax
inc eax
ret 4*3
__MyMessageBox:
xor eax, eax
push eax
@pushsz 'Dll'
@pushsz '一个dll自定导出表结构例子'
push eax
call [MessageBox]
ret
.idata
section '.edata' export data readable
__IMAGE_EXPORT_DIRECTORY:
dd 0, 0, 0, rva szName, 0, 1, 1
dd rva Address_Tab
dd rva FuncName_Tab
dd rva Ordinals_Tab
;dll name
szName db 'Msg.dll', 0
;
Address_Tab:
dd rva __MyMessageBox ;取__MyMessageBox过程 rva地址
FuncName_Tab:
dd rva ($+4) ; ($ + 4) ptr "MyMessageBox"
db 'MyMessageBox', 0
Ordinals_Tab:
dw 0
.fixups
--------------------------------------------------
编译时,有几个错误
第一个是.text 这句有错误,错误为illegal instruction
第二个是 @pushsz 'Dll' 有错误,错误为illegal instruction
这该怎么办啊?
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法