专业丰富的破解论坛技术交流,提供软件安全,病毒分析,脱壳破解,安卓破解,加密解密等,由无数热衷于软件爱好者共同维护
 
发新帖
查看: 717|回复: 0

[技术文章] 十六节 逆向病毒分析(实战)

[复制链接]
玉面飞龙之王 发表于 2020-9-22 13:42:47 | 显示全部楼层
seg000:004D5203 push esi
;esi: 字符串表基址
;参数 3 压栈
seg000:004D5204 push edi
;edi:数据段基址
;参数 2 压栈
seg000:004D5205 lea ecx, [ebp+var_38]
seg000:004D5208 push ecx
;ecx:函数地址表基址
;参数 1 压栈
seg000:004D5209 lea eax, [ebp+var_13E]
seg000:004D520F push eax
;eax:指向 v_13E 注意,&v_13e = &v_140 + sizeof(WORD),可见 v_13e 属于上边已经被初始化
;的大小为 0x106 的缓冲区。这里指针 eax 很可能被用作输入参数而不是输出参数。
;参数 0(缓冲区指针&v_140+2)压栈。
seg000:004D5210 call sub_4D53BE
分析函数 sub_004D53BE(实现部分)
seg000:004D53BE sub_4D53BE proc near ; CODE XREF:
sub_4D51AA+66p
seg000:004D53BE ; sub_4D51AA+93p
seg000:004D53BE
seg000:004D53BE arg_0 = dword ptr 8
;arg_0:缓冲区基址(指向的缓冲区极可能用于输入)
seg000:004D53BE arg_4 = dword ptr 0Ch
;arg_4:函数地址表基址
seg000:004D53BE arg_8 = dword ptr 10h
;arg_8:数据段基址
seg000:004D53BE arg_C = dword ptr 14h
;arg_C:字符串表基址
seg000:004D53BE
seg000:004D53BE push ebp
seg000:004D53BF mov ebp, esp
seg000:004D53C1 push ebx
seg000:004D53C2 mov ebx, [ebp+arg_4]
;ebx:函数地址表基址(指针)
seg000:004D53C5 push [ebp+arg_0]
;arg_0 缓冲区基址,这里可以看出指向的缓冲区明显是用于输入的(已经被初始化)
;参数 0 压栈
seg000:004D53C8 call dword ptr [ebx]
;查询函数地址表,确认这里调用的是 0 号函数,LoadLibraryA,因此也可以知道,刚压入的
;参数 arg_0 指向某表示(dll)模块路径的字符串
seg000:004D53CA test eax, eax
seg000:004D53CC jz short loc_4D53ED


快速回复 返回顶部 返回列表