代码的主要功能应该是从文件里读内容,下面的代码具体什么意思?如果转换为C++或C#,应该怎么读取文件?
aDataEpcdata_da db '\Data\Data.dat',0 ; DATA XREF: sub_52845C+4Eo
align 4
dd 0FFFFFFFFh, 12h]
mov edx, [ebp+var_8]
mov eax, offset unk_619FB4
mov ecx, offset aDataEpcdata_da ; "\\Data\\Data.dat"
call sub_4051BC
sub_4051BC proc near ; CODE XREF: sub_40A658+5Cp
CODE:004051BC ; sub_418554+E2p ...
CODE:004051BC test edx, edx
CODE:004051BE jz short loc_405221
CODE:004051C0 test ecx, ecx
CODE:004051C2 jz sub_404F04
CODE:004051C8 cmp edx, [eax]
CODE:004051CA jz short loc_405228
CODE:004051CC cmp ecx, [eax]
CODE:004051CE jz short loc_4051DE
CODE:004051D0 push eax
CODE:004051D1 push ecx
CODE:004051D2 call sub_404F04
CODE:004051D7 pop edx
CODE:004051D8 pop eax
CODE:004051D9 jmp sub_405178
------解决方案--------------------
这是 IDA 反汇编的?
C++ 里会调用 ReadFile 这个系统函数来读文件, 你的读取功能也许还在 sub_404F04 里面吧.
------解决方案--------------------
就是二进制数据,
db 表示 DATA BYTE
dd 表示 DATA DWORD
------解决方案--------------------
加载一下符号表呀,这样子不好看出是什么功能的
------解决方案--------------------
写软件的可以自己定义格式啊, 没办法猜的.
------解决方案--------------------
嗯, 文件名这些常量的话是放在只读数据区的.
你看以查看里面的所有字符串, 找找有没有 select, insert 之类的 SQL 语句.