QQ帝国ol刷怪中怎么原地刷怪?就是动一下就进...

您的位置:
揭露一下腾讯QQ发家史
发贴人:61.132.63.*发贴时间:【】[]
&& ()&& ()说到腾讯大家都知道,现在流行国产即时通讯就是QQ。&& ()&& ()&& ()&& ()&& ()&& ()&& ()&& ()&& ()&& ()&& ()&& ()&& ()&& () QQ正与51.com就彩虹外挂进行着激烈的对抗,一边说要起诉,一边不怕应诉网上大多数网友都是力挺彩虹外挂,但为什么各大门户的调查却是支持QQ的网友多过反对QQ的网友呢?其中的原由就不多说了,这些私下的潜规则也就如此只要涉及到商业合作的利益,门户网站也会低下那高傲的头      腾讯是如何起家的呢?在网上搜索到的“腾讯发家史”如同腾讯的企业说明书,没有任何参考价值就在腾讯一味的指责别人抄袭或是窜改他们的QQ时,却少有人知道腾讯本来就是一个以抄袭起家的深圳小公司腾讯公司于1998年成立,当时在国内即时通讯还是比较少了,当时只有网站(网页形式的)聊天室,而各大门户网站大多是以提供免费电子邮箱及个人主页空间为主的时期1999年2月腾讯才说外宣布完成了Tencent Instant Messenger,即当时的名称:OICQ,也种中文网络寻呼机殊不知在1996年以色列公司开发的ICQ(ICQ是ISeekYou(我找你)的连音缩写)已经在全球新兴的年轻人网民当中占有一席之地,到为止ICQ注册依然免费,功能也在不停的升级新的功能,不需要提供付费注册及享受其新开发的服务有意思的事情是,当OICQ出现的时候,其功能与ICQ基本相似,只不过风格界面有些不同罢了,包括声音的提示,ICQ是“啊哦”,OICQ是“嘀嘀嘀”      到了2000年以后,随着国内互联网的普及,大量类似的即时通讯也相续出现腾讯OICQ随着的不断增加,已经在国产即时通讯中首屈一指了,而其它的如aicq、bicq、cicq、Xicq相续只能分享小部分群体的而此时的门户网站们似乎还没有意识到这个定局已经产生,ICQ也是最早实现线上语音寻呼的功能,在新浪很早就有“新浪寻呼”可进行在线语音呼叫聊天(当时国内用NetMeeting的也只是少数群体),腾讯OICQ发现这个很有市场,于是再次向ICQ借鉴最终的结果是,新浪寻呼没落了,新浪只是把“新浪寻呼”做为一个小项目开发,所以消失也是很正常的事情自此语音聊天又成为OICQ的一个插件了同样的道理,只要ICQ有什么功能新增,OICQ必然要模仿AOL给腾讯发来律师函,ICQ是AOL的注册商标,因此任何在名称中使用ICQ字样的同类都有侵犯AOL商标使用权的风险要求腾讯把OICQ改名,否则将诉诸以法庭所以在OICQ2000 Build 0325版里面,OICQ做了另一个提前自我保护的改变,0325版本却从安装文件开始就自称为"QQ2000",以避免和ICQ发生法律冲突,这QQ本来是网友对OICQ的一种昵称,不料一夜之间却成了OICQ正式的新名字 这里也就引发了QQ.com域名的高价收购,及抢夺的“灰幕”      自2004年后,腾讯发现MSN一直占据高端及商业的市场,尔后就全面新增转型TM,这里还有一段小插曲,TM针对的就是商业及高端,并开始从风格上正式抄袭MSN的界面风格,并将视频功能强化到TM(据有推广TM的业务人员讲,可多方视频会议)当MSN推出登录弹出新闻版块功能不久,腾讯QQ又再次抄袭,模仿,这一切都是在不断的紧盯MSN的新功能得到的效果但是市场反应却一直没有MSN好,据大量商务办公的高端人群还是喜欢使用MSN即时,国际上的使用范围也比较广,一是界面友好,广告没有那么多,二是可拒绝垃圾内容的骚扰      至于QQ衣服,3D形像,QQ表情,基本上都是用ICQ上的功能,有兴趣的朋友可以注册一下ICQ再做比较从此之后,QQ把国内能抄的都抄进他的功能,如浏览器、网上商店、网上硬盘、书签、聊天室、论坛、游戏平台、通讯录….      ,腾讯各种新功能的收费遍地开花,在马化腾享受机遇与偶然成功的喜悦之时,面临的是功能更复杂,捆绑更多的“肥企鹅”他们试图将除了注册QQ号码之外,所有的功能都能收上费用可怜的早期付费后来发现,其实很多功能慢慢的也向免费开放,而他们享受的无非只是花钱买“试用”罢了腾讯的服务越多,功能越多,他的服务也就越差,对于大量QQ被盗,大量QQ被中奖信息***,几乎无能力为      而当这些赚钱的招数受到国内同行竞争之时,却是不停的摆出龙头老大的姿态,只要谁做他相类似的东西或是涉及到他的东西,一概官司起诉珊瑚虫QQ败了,因为它是小工作室群体;彩虹QQ还在对抗,因为它是大公司行为而腾讯多年起家往往就归功于两个字“抄袭”,没有“抄袭”就没有腾讯的今天,也没有腾讯如此傲慢的态度一个为利图的抄袭者,何来资格告别人侵权,真希望MSN及ICQ一同告倒腾讯QQ这个“抄袭大鳄”,还网络自由竞争的环境  向好友推荐本贴:&&&& 标题:《揭露一下腾讯QQ发家史》&&&& 地址: .cn/Article/200811/showp1.html
发表您的评论
点评字数 0
?尊重网上道德,遵守中华人民共和国各项有关法律法规
?承担一切因您的行为直接间接导致的民事刑事法律责任
?本站管理人员有权保留或删除其管辖留言中的任意内容
?本站有权在网站内转载或引用您的评论
?参与本评论即表明您已经阅读并接受上述条款
?共同建立健康的网络社区,请向管理员举报不良帖子
?举报邮箱:社会化媒体
了解更多>>
桂ICP备 号
桂公网安备 36号
阅读下一篇
自媒体运营攻略
行业经验交流
Hi,在你登录以后,就可以永久免费的收藏任何您感兴趣的内容,关注感兴趣的作者!
请输入正确的邮箱
已有帐号请点击
帐号创建成功!
我们刚刚给你发送了一封验证邮件
请在48小时内查收邮件,并按照提示验证邮箱
感谢你对微口网的信任与支持
如果你没有收到邮件,请留意垃圾箱 或 重新发送
你输入的邮箱还未注册
还没有帐号请点击
你输入的邮箱还未注册
又想起来了?
邮件发送成功!
我们刚刚给你发送了一封邮件
请在5分钟内查收邮件,并按照提示重置密码
感谢你对微口网的信任与支持
如果你没有收到邮件,请留意垃圾箱 或 重新发送
对不起,你的帐号尚未验证
如果你没有收到邮件,请留意垃圾箱 或
意见与建议
请留下您的联系方式
* 留下您正确的联系方式,以便工作人员尽快与你取得联系
转藏至我的藏点403 Forbidden
403 Forbidden/**&* @file 2005beta2-IQQData_IQQCore_IDynamicData.txt&* &* @brief 2005beta2-IQQData_IQQCore_IDynamicData.txt,v1.0
23:58:18 sunwang&*&* QQ的核心接口分析 IQQData IQQCore IDynamicData,主要集中在BasicCtrlDll.dll QQHelperDll.dll,找几个引出函数分析分析&* 如 CreateQQData IsFriendOnline GetFriendQQVer etc... 这些接口除了00 04 08是IUnknown以外,其他只有分析代码了&* void __cdecl CreateQQData(struct IQQData * *)&* int __cdecl IsFriendOnline(struct IQQCore *,unsigned long) [*]&* int __cdecl GetFriendQQData(struct IQQCore *,unsigned long,struct IQQData * *) [*]&* int __cdecl GetCurrentUin(struct IQQCore *,unsigned long *)&* void __cdecl GetCurrentUserData(struct IQQCore *,struct IQQData * *)&* int __cdecl GetFriendStat(struct IQQCore *,unsigned long)&* long __cdecl GetQQDataBuf(struct IQQData *,char const *,class CString &) [*]& //&-------刚开始不知道有这个函数,好累&* long __cdecl GetQQDataStr(struct IQQData *,char const *,class CString &) [*]& //&-------刚开始不知道有这个函数,好累&*&* 两个问题:& 其他的都可以通过上面的函数搞定! &* 1.IQQCore* 哪里得到? &*&& 1.1 找一个不接口上不需要IQQCore*的函数分析,起内部肯定有引用,看这个引用在哪里,就可以得到了。嘿嘿。&*&& int __cdecl IsFriend3GUser(unsigned long)& //&--------分析太苦难了,自己找苦头&*&& 1.2 hook一个带IQQCore*为参数的函数,就可以得到了,如&*&& int __cdecl InitQQShow(struct IQQCore *) [*]&*&& 1.3 得到IQQCore*指针后,根据需要,拼凑vtbl就可以了&* &* 2.FriendUID 哪里得到? unsigned long 都是uin。tnnd。难点! 和 hook CQQCtrlBarWndEx wndproc一样困难。&*&& 2.1 总会有函数初始化这个东西,并放在哪里的,要找准函数分析了&*&&&&&& 2.1.1 CQQBarCtrlWndEx,只能依赖这个对象的偏移了,它的某个偏移肯定有uid&*&&&&&& 2.1.2 CQQAllInOneDlg,只能依赖这个对象的偏移了,它的某个偏移肯定有uid。前面分析过CQQAllInStatusBar,上面有拼凑nickname(uid):xxx&*&&&&&&&&&&&& 的代码,可能有用。void __thiscall CAllInOneStatusBar::GenStrShow(void),便宜340h就是!!!。 [*]&*&&&&&&&&&&&& 第一次WM_CREATE时候,得到偏移,此时肯定没有uid,以后得到消息就重新取,并增加自定义消息发给窗口来刷新显示了&*&& 2.2 hook函数拦截参数? 呵呵,不合适。我们要在对话框窗口出来和在CQQBarCtrlWndEx出来的时候,就能得到friend uin,呵呵&*&* @author sunwang&&&*/&/* BasicCtrlDll.dll.text:10001C05 ; Exported entry& 42. .text:10001C05.text:10001C05 ; 圹圹圹圹圹圹圹?S U B R O U T I N E 圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹?.text:10001C05.text:10001C05.text:10001C05 ; void __cdecl CreateQQData(struct IQQData * *).text:10001C05&&&&&&&&&&&&&&&& public .text:10001C05
proc near.text:10001C05.text:10001C05 arg_0&&&&&&&&&& = dword ptr& 8.text:10001C05.text:10001C05&&&&&&&&&&&&&&&& push&&& edi.text:10001C06&&&&&&&&&&&&&&&& mov&&&& edi, [esp+arg_0].text:10001C0A&&&&&&&&&&&&&&&& test&&& edi, edi.text:10001C0C&&&&&&&&&&&&&&&& jz&&&&& short loc_10001C33.text:10001C0E&&&&&&&&&&&&&&&& push&&& esi.text:10001C0F&&&&&&&&&&&&&&&& mov&&&& ecx, offset off_.text:10001C14&&&&&&&&&&&&&&&& call&&& CRuntimeClass::CreateObject(void).text:10001C19&&&&&&&&&&&&&&&& mov&&&& esi, eax.text:10001C1B&&&&&&&&&&&&&&&& test&&& esi, esi.text:10001C1D&&&&&&&&&&&&&&&& jnz&&&& short loc_10001C24.text:10001C1F&&&&&&&&&&&&&&&& call&&& AfxThrowMemoryException(void).text:10001C24.text:10001C24 loc_10001C24:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: CreateQQData(IQQData * *)+18j.text:10001C24&&&&&&&&&&&&&&&& push&&& offset clsid_IQQData.text:10001C29&&&&&&&&&&&&&&&& mov&&&& ecx, esi.text:10001C2B&&&&&&&&&&&&&&&& call&&& CCmdTarget::GetInterface(void const *).text:10001C30&&&&&&&&&&&&&&&& mov&&&& [edi], eax&&&&& ; *(void**)=IQQData*.text:10001C32&&&&&&&&&&&&&&&& pop&&&& esi.text:10001C33.text:10001C33 loc_10001C33:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: CreateQQData(IQQData * *)+7j.text:10001C33&&&&&&&&&&&&&&&& pop&&&& edi.text:10001C34&&&&&&&&&&&&&&&& retn.text:10001C34
endp*//* BasicCtrlDll.dll.rdata: clsid_IQQData&& db& 1Eh&&&&&&&&&&&&&&&& ; DATA XREF: CreateQQData(IQQData * *):loc_10001C24o.rdata:&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ; GetFriendNetwork(IQQCore *,ulong,int &,ulong &,ulong &,int &)+9Ao ....rdata:&&&&&&&&&&&&&&&& db& 3A :.rdata:100229CA&&&&&&&&&&&&&&&& db& 86 ?.rdata:100229CB&&&&&&&&&&&&&&&& db 0BA ?.rdata:100229CC&&&&&&&&&&&&&&&& db& 79 y.rdata:100229CD&&&&&&&&&&&&&&&& db 0C9 ?.rdata:100229CE&&&&&&&&&&&&&&&& db& 8A ?.rdata:100229CF&&&&&&&&&&&&&&&& db& 49 I.rdata:&&&&&&&&&&&&&&&& db& 97 ?.rdata:&&&&&&&&&&&&&&&& db& 5C /.rdata:&&&&&&&&&&&&&&&& db 0C5 ?.rdata:&&&&&&&&&&&&&&&& db&&& 0.rdata:&&&&&&&&&&&&&&&& db& 1Ch.rdata:&&&&&&&&&&&&&&&& db& 4F O.rdata:&&&&&&&&&&&&&&&& db& 31 1.rdata:&&&&&&&&&&&&&&&& db 0A3 ?*//* BasicCtrlDll.dllstatic CLSID clsid_QQData= {&&& 0xBA863A1E,&&& 0x0C979,&&& 0x498A,&&& 0x97, 0x5C, 0x0C5, 0, 0x1C, 0x4F, 0x31, 0x0A3};*//* QQHelperDll.dll 怎么使用CreateQQData(IQQData * *)的产生的接口IQQData.text:60865BD5 loc_60865BD5:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: sub_j.text:60865BD5&&&&&&&&&&&&&&&& lea&&&& eax, [ebp+8].text:60865BD8&&&&&&&&&&&&&&&& push&&& eax.text:60865BD9&&&&&&&&&&&&&&&& call&&& CreateQQData(IQQData * *).text:60865BDE&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8]&&& ; eax=IQQData*.text:60865BE1&&&&&&&&&&&&&&&& pop&&&& ecx.text:60865BE2&&&&&&&&&&&&&&&& push&&& dword ptr [ebp-2Ch] ; var_ID.text:60865BE5&&&&&&&&&&&&&&&& mov&&&& ecx, [eax]&&&&& ; IQQData-&vtbl.text:60865BE7&&&&&&&&&&&&&&&& push&&& offset aId&&&&& ; param_str_ID.text:60865BEC&&&&&&&&&&&&&&&& push&&& eax&&&&&&&&&&&& ; (IData*)this.text:60865BED&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+20h] ; IQQData-&vf_20h(param_str_ID,(void*)&var_ID).text:60865BF0&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8]&&& ; eax=IQQData*.text:60865BF3&&&&&&&&&&&&&&&& lea&&&& edx, [ebp-218h] ; var_NUMBER.text:60865BF9&&&&&&&&&&&&&&&& push&&& edx.text:60865BFA&&&&&&&&&&&&&&&& push&&& offset aNumber& ; &NUMBER&.text:60865BFF&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865C01&&&&&&&&&&&&&&&& push&&& eax.text:60865C02&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+20h] ; IQQData-&vf_20h(param_str_NUMBER,(void*)&var_NUMBER).text:60865C05&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865C08&&&&&&&&&&&&&&&& lea&&&& edx, [ebp-218h].text:60865C0E&&&&&&&&&&&&&&&& push&&& edx.text:60865C0F&&&&&&&&&&&&&&&& push&&& offset aN &NUMSAVE&.text:60865C14&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865C16&&&&&&&&&&&&&&&& push&&& eax.text:60865C17&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+20h] ; IQQData-&vf_20h(param_str_NUMSAVE,(void*)&var_NUMSAVE).text:60865C1A&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865C1D&&&&&&&&&&&&&&&& lea&&&& edx, [ebp-248h].text:60865C23&&&&&&&&&&&&&&&& push&&& edx.text:60865C24&&&&&&&&&&&&&&&& push&&& offset aName&&& ; &NAME&.text:60865C29&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865C2B&&&&&&&&&&&&&&&& push&&& eax.text:60865C2C&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+20h] ; IQQData-&vf_20h(param_str_NAME,(void*)&var_NAME).text:60865C2F&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8]&&& ; eax=IQQData*.text:60865C32&&&&&&&&&&&&&&&& mov&&&& esi, eax&&&&&&& ; esi=IQQData*.text:60865C34&&&&&&&&&&&&&&&& mov&&&& edi, [eax]&&&&& ; edi=IQQData*-&vtbl.text:60865C36&&&&&&&&&&&&&&&& lea&&&& eax, [ebp-228h] ; var_UIN.text:60865C3C&&&&&&&&&&&&&&&& push&&& eax&&&&&&&&&&&& ; char *.text:60865C3D&&&&&&&&&&&&&&&& call&&& ds:atol.text:60865C43&&&&&&&&&&&&&&&& pop&&&& ecx.text:60865C44&&&&&&&&&&&&&&&& push&&& eax&&&&&&&&&&&& ; var_UIN.text:60865C45&&&&&&&&&&&&&&&& push&&& offset aUin&&&& ; &UIN&.text:60865C4A&&&&&&&&&&&&&&&& push&&& esi&&&&&&&&&&&& ; (IQQData*)this.text:60865C4B&&&&&&&&&&&&&&&& call&&& dword ptr [edi+18h] ; IQQData*-&vf_18h(var_UIN,str_UIN).text:60865C4E&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865C51&&&&&&&&&&&&&&&& push&&& dword ptr [ebp-25Ch].text:60865C57&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865C59&&&&&&&&&&&&&&&& push&&& offset aType&&& ; &TYPE&.text:60865C5E&&&&&&&&&&&&&&&& push&&& eax.text:60865C5F&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+10h] ; IQQData*-&vf_10h(str_TYPE,var_TYPE).text:60865C62&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865C65&&&&&&&&&&&&&&&& push&&& dword ptr [ebp-25Bh].text:60865C6B&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865C6D&&&&&&&&&&&&&&&& push&&& offset aImage&& ; &IMAGE&.text:60865C72&&&&&&&&&&&&&&&& push&&& eax.text:60865C73&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+10h] ; IQQData*-&vf_10h(str_IMAGE,var_IMAGE).text:60865C76&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865C79&&&&&&&&&&&&&&&& push&&& dword ptr [ebp-250h].text:60865C7F&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865C81&&&&&&&&&&&&&&&& push&&& offset aGender& ; &GENDER&.text:60865C86&&&&&&&&&&&&&&&& push&&& eax.text:60865C87&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+0Ch] ; IQQData*-&vf_0ch(str_GENDER,var_GENDER).text:60865C8A&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865C8D&&&&&&&&&&&&&&&& push&&& dword ptr [ebp-254h].text:60865C93&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865C95&&&&&&&&&&&&&&&& push&&& offset aFace&&& ; &FACE&.text:60865C9A&&&&&&&&&&&&&&&& push&&& eax.text:60865C9B&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+14h] ; IQQData*-&vf_14h(str_FACE,var_FACE).text:60865C9E&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865CA1&&&&&&&&&&&&&&&& push&&& dword ptr [ebp-24Ch].text:60865CA7&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865CA9&&&&&&&&&&&&&&&& push&&& offset aL &LANTYPE&.text:60865CAE&&&&&&&&&&&&&&&& push&&& eax.text:60865CAF&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+0Ch] ; IQQData*-&vf_0ch(str_LANTYPE,var_LANTYPE).text:60865CB2&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865CB5&&&&&&&&&&&&&&&& lea&&&& edx, [ebp-1F8h].text:60865CBB&&&&&&&&&&&&&&&& push&&& edx.text:60865CBC&&&&&&&&&&&&&&&& push&&& offset aNote&&& ; &NOTE&.text:60865CC1&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865CC3&&&&&&&&&&&&&&&& push&&& eax.text:60865CC4&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+20h].text:60865CC7&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865CCA&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865CCC&&&&&&&&&&&&&&&& lea&&&& edx, [ebp-178h].text:60865CD2&&&&&&&&&&&&&&&& push&&& edx.text:60865CD3&&&&&&&&&&&&&&&& push&&& offset aState&& ; &STATE&.text:60865CD8&&&&&&&&&&&&&&&& push&&& eax.text:60865CD9&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+20h].text:60865CDC&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865CDF&&&&&&&&&&&&&&&& push&&& dword ptr [ebp-0F8h].text:60865CE5&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865CE7&&&&&&&&&&&&&&&& push&&& offset aGrpclr& ; &GRPCLR&.text:60865CEC&&&&&&&&&&&&&&&& push&&& eax.text:60865CED&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+18h].text:60865CF0&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-34h].text:60865CF3&&&&&&&&&&&&&&&& cmp&&&& [eax+20h], ebx.text:60865CF6&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865CF9&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865CFB&&&&&&&&&&&&&&&& jz&&&&& loc_60865E50.text:60865D01&&&&&&&&&&&&&&&& push&&& dword ptr [ebp-0F4h].text:60865D07&&&&&&&&&&&&&&&& push&&& offset aM &MBLTYPE&.text:60865D0C&&&&&&&&&&&&&&&& push&&& eax.text:60865D0D&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+1Ch].text:60865D10&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865D13&&&&&&&&&&&&&&&& push&&& dword ptr [ebp-0F0h].text:60865D19&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865D1B&&&&&&&&&&&&&&&& push&&& offset aMbrand& ; &MBRAND&.text:60865D20&&&&&&&&&&&&&&&& push&&& eax.text:60865D21&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+1Ch].text:60865D24&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+8].text:60865D27&&&&&&&&&&&&&&&& lea&&&& edx, [ebp-0ECh].text:60865D2D&&&&&&&&&&&&&&&& push&&& edx.text:60865D2E&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:60865D30&&&&&&&&&&&&&&&& jmp&&&& loc_60865E75.text:60865D35 ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?*//* QQHelperDll.dll 怎么使用CreateQQData(IQQData * *)的产生的接口IQQDataext:6087289F ; Exported entry 352. .text:6087289F.text:6087289F ; 圹圹圹圹圹圹圹?S U B R O U T I N E 圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹?.text:6087289F.text:6087289F.text:6087289F ; int __cdecl IsFriendOnline(struct IQQCore *,unsigned long).text:6087289F&&&&&&&&&&&&&&&& public .text:6087289F
proc near.text:6087289F&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsAllowAddToGAudioChat(ulong,int,HWND__ *)+18Fp.text:6087289F&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ; IsAllowAddToInGAudioChat(ulong,ulong,int,HWND__ *)+125p.text:6087289F&&&&&&&&&&&&&&&& mov&&&& eax, offset loc_60895A2C.text:&&&&&&&&&&&&&&&& call&&& __EH_prolog.text:&&&&&&&&&&&&&&&& push&&& ecx.text:608728AA&&&&&&&&&&&&&&&& push&&& ebx.text:608728AB&&&&&&&&&&&&&&&& xor&&&& ebx, ebx.text:608728AD&&&&&&&&&&&&&&&& mov&&&& [ebp-10h], ebx& ; ebx = 0.text:&&&&&&&&&&&&&&&& lea&&&& eax, [ebp-10h]& ; var_IQQData**.text:&&&&&&&&&&&&&&&& mov&&&& [ebp-4], ebx.text:&&&&&&&&&&&&&&&& push&&& eax&&&&&&&&&&&& ; var_IQQData**.text:&&&&&&&&&&&&&&&& push&&& dword ptr [ebp+0Ch] ; arg_QQID.text:608728BA&&&&&&&&&&&&&&&& push&&& dword ptr [ebp+8] ; arg_IQQCore*.text:608728BD&&&&&&&&&&&&&&&& call&&& GetFriendQQData(IQQCore *,ulong,IQQData * *).text:&&&&&&&&&&&&&&&& add&&&& esp, 0Ch.text:&&&&&&&&&&&&&&&& test&&& eax, eax&&&&&&& ; if(IQQData* == NULL).text:&&&&&&&&&&&&&&&& jz&&&&& short loc_.text:&&&&&&&&&&&&&&&& mov&&&& [ebp+0Ch], ebx& ; arg_QQID = 0.text:608728CC&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-10h]& ; eax = IQQData*.text:608728CF&&&&&&&&&&&&&&&& lea&&&& edx, [ebp+0Ch]& ; edx = &arg_QQID,IDynamicData*.text:&&&&&&&&&&&&&&&& push&&& edx.text:&&&&&&&&&&&&&&&& push&&& offset clsid_IQQData.text:&&&&&&&&&&&&&&&& mov&&&& ecx, [eax]&&&&& ; ecx = IQQData*-&vtbl.text:608728DA&&&&&&&&&&&&&&&& push&&& offset aQquser_ &QQUSER_DYNAMIC_DATA&.text:608728DF&&&&&&&&&&&&&&&& push&&& eax&&&&&&&&&&&& ; (IQQData*)this.text:&&&&&&&&&&&&&&&& mov&&&& byte ptr [ebp-4], 1 ; *var_4 = 1.text:&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+54h] ; IQQData*-&vf_54h(str_QQUSER_DYNAMIC_DATA,clsid_IQQData,void*).text:&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+0Ch]& ; if(IDynamicData* == 0).text:608728EA&&&&&&&&&&&&&&&& cmp&&&& eax, ebx.text:608728EC&&&&&&&&&&&&&&&& jz&&&&& short loc_.text:608728EE&&&&&&&&&&&&&&&& mov&&&& ecx, [eax]&&&&& ; ecx = IDynamicData*-&vtbl.text:&&&&&&&&&&&&&&&& lea&&&& edx, [ebp+8]&&& ; &var_8.text:&&&&&&&&&&&&&&&& push&&& edx.text:&&&&&&&&&&&&&&&& push&&& offset aQqdd_ &QQDD_STATUS&.text:&&&&&&&&&&&&&&&& push&&& eax&&&&&&&&&&&& ; (IDynamicData*)this.text:608728FA&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+38h] ; IDynamicData*-&vf_38h(str_QQDD_STATUS,void*).text:608728FD&&&&&&&&&&&&&&&& cmp&&&& dword ptr [ebp+8], 14 if(var_8 == 14h).text:&&&&&&&&&&&&&&&& mov&&&& eax, [ebp+0Ch]& ; eax = IDynamicData*.text:&&&&&&&&&&&&&&&& mov&&&& [ebp-4], bl.text:&&&&&&&&&&&&&&&& jz&&&&& short loc_.text:&&&&&&&&&&&&&&&& cmp&&&& eax, ebx&&&&&&& ; if (IDynamicData* == 0),操,没有优化的代码.text:6087290B&&&&&&&&&&&&&&&& jz&&&&& short loc_ ; eax = IQQData*.text:6087290D&&&&&&&&&&&&&&&& mov&&&& ecx, [eax]&&&&& ; ecx = IDynamicData*-&vtbl.text:6087290F&&&&&&&&&&&&&&&& push&&& eax&&&&&&&&&&&& ; (IDynamicData*)this.text:&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+8] ; IDynamicData*-&vf_08h_Release().text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriendOnline(IQQCore *,ulong)+6Cj.text:&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-10h]& ; eax = IQQData*.text:&&&&&&&&&&&&&&&& or&&&&& dword ptr [ebp-4], 0FFFFFFFFh.text:6087291A&&&&&&&&&&&&&&&& cmp&&&& eax, ebx.text:6087291C&&&&&&&&&&&&&&&& jz&&&&& short loc_.text:6087291E&&&&&&&&&&&&&&&& mov&&&& ecx, [eax]&&&&& ; ecx = IQQData*-&vtbl.text:&&&&&&&&&&&&&&&& push&&& eax&&&&&&&&&&&& ; (IQQData*)this.text:&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+8] ; IQQData*-&vf_08h_Release().text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriendOnline(IQQCore *,ulong)+7Dj.text:&&&&&&&&&&&&&&&& push&&& 1.text:&&&&&&&&&&&&&&&& pop&&&& eax.text:&&&&&&&&&&&&&&&& jmp&&&& short loc_.text: ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?.text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriendOnline(IQQCore *,ulong)+68j.text:&&&&&&&&&&&&&&&& cmp&&&& eax, ebx.text:6087292B&&&&&&&&&&&&&&&& jz&&&&& short loc_.text:6087292D&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:6087292F&&&&&&&&&&&&&&&& push&&& eax.text:&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+8].text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriendOnline(IQQCore *,ulong)+28j.text:&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ; IsFriendOnline(IQQCore *,ulong)+4Dj ....text:&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-10h].text:&&&&&&&&&&&&&&&& or&&&&& dword ptr [ebp-4], 0FFFFFFFFh.text:6087293A&&&&&&&&&&&&&&&& cmp&&&& eax, ebx.text:6087293C&&&&&&&&&&&&&&&& jz&&&&& short loc_.text:6087293E&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:&&&&&&&&&&&&&&&& push&&& eax.text:&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+8].text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriendOnline(IQQCore *,ulong)+9Dj.text:&&&&&&&&&&&&&&&& xor&&&& eax, eax.text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriendOnline(IQQCore *,ulong)+88j.text:&&&&&&&&&&&&&&&& mov&&&& ecx, [ebp-0Ch].text:&&&&&&&&&&&&&&&& pop&&&& ebx.text:6087294A&&&&&&&&&&&&&&&& mov&&&& large fs:0, ecx.text:&&&&&&&&&&&&&&&& leave.text:&&&&&&&&&&&&&&&& retn.text: sp =& 4*//*.text: ; Exported entry 349. .text:.text: ; 圹圹圹圹圹圹圹?S U B R O U T I N E 圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹圹?.text:.text:.text: ; int __cdecl IsFriend3GUser(unsigned long).text:&&&&&&&&&&&&&&&& public .text:
proc near&&&&&& ; CODE XREF: StartTrayAnimate(IQQCore *)+708p.text:&&&&&&&&&&&&&&&& mov&&&& eax, offset loc_.text:&&&&&&&&&&&&&&&& call&&& __EH_prolog.text:6087E8FC&&&&&&&&&&&&&&&& sub&&&& esp, 10h.text:6087E8FF&&&&&&&&&&&&&&&& push&&& ebx.text:&&&&&&&&&&&&&&&& xor&&&& ebx, ebx.text:&&&&&&&&&&&&&&&& push&&& esi.text:&&&&&&&&&&&&&&&& mov&&&& [ebp-18h], ebx.text:&&&&&&&&&&&&&&&& mov&&&& [ebp-4], ebx.text:&&&&&&&&&&&&&&&& call&&& AfxGetAppModuleState(void).text:6087E90E&&&&&&&&&&&&&&&& mov&&&& eax, [eax+4].text:&&&&&&&&&&&&&&&& lea&&&& ecx, [ebp-18h].text:&&&&&&&&&&&&&&&& push&&& ecx&&&&&&&&&&&& ; var_IQQData*.text:&&&&&&&&&&&&&&&& push&&& dword ptr [ebp+8] ; arg_UIN.text:&&&&&&&&&&&&&&&& mov&&&& eax, [eax+0D4h].text:6087E91E&&&&&&&&&&&&&&&& push&&& eax&&&&&&&&&&&& ; IQQCore*.text:6087E91F&&&&&&&&&&&&&&&& call&&& GetFriendQQData(IQQCore *,ulong,IQQData * *).text:&&&&&&&&&&&&&&&& add&&&& esp, 0Ch.text:&&&&&&&&&&&&&&&& test&&& eax, eax.text:&&&&&&&&&&&&&&&& jz&&&&& loc_.text:6087E92F&&&&&&&&&&&&&&&& mov&&&& [ebp-1Ch], ebx.text:&&&&&&&&&&&&&&&& mov&&&& [ebp-0Dh], bl.text:&&&&&&&&&&&&&&&& mov&&&& [ebp-14h], ebx.text:&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-18h].text:6087E93B&&&&&&&&&&&&&&&& lea&&&& edx, [ebp-0Dh].text:6087E93E&&&&&&&&&&&&&&&& mov&&&& esi, offset aQquser_ &QQUSER_DYNAMIC_DATA&.text:&&&&&&&&&&&&&&&& push&&& edx.text:&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:&&&&&&&&&&&&&&&& push&&& esi.text:&&&&&&&&&&&&&&&& push&&& eax.text:&&&&&&&&&&&&&&&& mov&&&& byte ptr [ebp-4], 1.text:6087E94C&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+70h].text:6087E94F&&&&&&&&&&&&&&&& test&&& eax, eax.text:&&&&&&&&&&&&&&&& jl&&&&& loc_.text:&&&&&&&&&&&&&&&& cmp&&&& byte ptr [ebp-0Dh], 8.text:6087E95B&&&&&&&&&&&&&&&& jnz&&&& short loc_.text:6087E95D&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-14h].text:&&&&&&&&&&&&&&&& cmp&&&& eax, ebx.text:&&&&&&&&&&&&&&&& jz&&&&& short loc_6087E96D.text:&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:&&&&&&&&&&&&&&&& push&&& eax.text:&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+8].text:6087E96A&&&&&&&&&&&&&&&& mov&&&& [ebp-14h], ebx.text:6087E96D.text:6087E96D loc_6087E96D:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriend3GUser(ulong)+70j.text:6087E96D&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-18h].text:&&&&&&&&&&&&&&&& lea&&&& edx, [ebp-14h].text:&&&&&&&&&&&&&&&& push&&& edx.text:&&&&&&&&&&&&&&&& push&&& offset clsid_IQQData.text:&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:6087E97B&&&&&&&&&&&&&&&& push&&& esi.text:6087E97C&&&&&&&&&&&&&&&& push&&& eax.text:6087E97D&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+54h].text:&&&&&&&&&&&&&&&& test&&& eax, eax.text:&&&&&&&&&&&&&&&& jl&&&&& short loc_.text:&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-14h].text:&&&&&&&&&&&&&&&& lea&&&& edx, [ebp-0Dh].text:6087E98A&&&&&&&&&&&&&&&& mov&&&& esi, offset aQquser_3g_ &QQUSER_3G_USERLOGIN&.text:6087E98F&&&&&&&&&&&&&&&& push&&& edx.text:&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:&&&&&&&&&&&&&&&& push&&& esi.text:&&&&&&&&&&&&&&&& push&&& eax.text:&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+70h].text:&&&&&&&&&&&&&&&& test&&& eax, eax.text:&&&&&&&&&&&&&&&& jl&&&&& short loc_.text:6087E99B&&&&&&&&&&&&&&&& cmp&&&& byte ptr [ebp-0Dh], 1.text:6087E99F&&&&&&&&&&&&&&&& jnz&&&& short loc_.text:&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-14h].text:&&&&&&&&&&&&&&&& lea&&&& edx, [ebp-1Ch].text:&&&&&&&&&&&&&&&& push&&& edx.text:&&&&&&&&&&&&&&&& push&&& esi.text:&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:6087E9AB&&&&&&&&&&&&&&&& push&&& eax.text:6087E9AC&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+28h].text:6087E9AF&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-14h].text:&&&&&&&&&&&&&&&& mov&&&& esi, [ebp-1Ch].text:&&&&&&&&&&&&&&&& cmp&&&& eax, ebx.text:&&&&&&&&&&&&&&&& mov&&&& [ebp-4], bl.text:6087E9BA&&&&&&&&&&&&&&&& jz&&&&& short loc_.text:6087E9BC&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:6087E9BE&&&&&&&&&&&&&&&& push&&& eax.text:6087E9BF&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+8].text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriend3GUser(ulong)+C8j.text:&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-18h].text:&&&&&&&&&&&&&&&& or&&&&& dword ptr [ebp-4], 0FFFFFFFFh.text:&&&&&&&&&&&&&&&& cmp&&&& eax, ebx.text:6087E9CB&&&&&&&&&&&&&&&& jz&&&&& short loc_.text:6087E9CD&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:6087E9CF&&&&&&&&&&&&&&&& push&&& eax.text:&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+8].text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriend3GUser(ulong)+D9j.text:&&&&&&&&&&&&&&&& mov&&&& eax, esi.text:&&&&&&&&&&&&&&&& jmp&&&& short loc_6087E9FA.text: ; 哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪?.text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriend3GUser(ulong)+5Fj.text:&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ; IsFriend3GUser(ulong)+69j ....text:&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-14h].text:6087E9DA&&&&&&&&&&&&&&&& mov&&&& [ebp-4], bl.text:6087E9DD&&&&&&&&&&&&&&&& cmp&&&& eax, ebx.text:6087E9DF&&&&&&&&&&&&&&&& jz&&&&& short loc_.text:&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:&&&&&&&&&&&&&&&& push&&& eax.text:&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+8].text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriend3GUser(ulong)+37j.text:&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ; IsFriend3GUser(ulong)+EDj.text:&&&&&&&&&&&&&&&& mov&&&& eax, [ebp-18h].text:6087E9EA&&&&&&&&&&&&&&&& or&&&&& dword ptr [ebp-4], 0FFFFFFFFh.text:6087E9EE&&&&&&&&&&&&&&&& cmp&&&& eax, ebx.text:&&&&&&&&&&&&&&&& jz&&&&& short loc_.text:&&&&&&&&&&&&&&&& mov&&&& ecx, [eax].text:&&&&&&&&&&&&&&&& push&&& eax.text:&&&&&&&&&&&&&&&& call&&& dword ptr [ecx+8].text:.text: loc_:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriend3GUser(ulong)+FEj.text:&&&&&&&&&&&&&&&& xor&&&& eax, eax.text:6087E9FA.text:6087E9FA loc_6087E9FA:&&&&&&&&&&&&&&&&&&&&&&&&&& ; CODE XREF: IsFriend3GUser(ulong)+E3j.text:6087E9FA&&&&&&&&&&&&&&&& mov&&&& ecx, [ebp-0Ch].text:6087E9FD&&&&&&&&&&&&&&&& pop&&&& esi.text:6087E9FE&&&&&&&&&&&&&&&& pop&&&& ebx.text:6087E9FF&&&&&&&&&&&&&&&& mov&&&& large fs:0, ecx.text:6087EA06&&&&&&&&&&&&&&&& leave.text:6087EA07&&&&&&&&&&&&&&&& retn.text:6087EA07 sp =& 4*/
本文已收录于以下专栏:
相关文章推荐
  +----------------------------------------------------------
 * 原样输出print_r的内容
  +----------...
微信、QQ这类IM App怎么做——谈谈Websocket
这里采用的方法是按下截屏按钮截取整个桌面,然后通过鼠标的拖动选中截取的区域,并把这个区域用截取的那张大图中相应的位置设置为QLabel背景,其他的保存或者完成等操作通过按钮的响应来完成。值得说的就是这...
要说到这个话题,时光要追溯到大概半年前吧!可见我的解决问题的能力和解决问题的决心,还真真是远远不够呢!
其实要不是昨天晚上韩义同学"炫耀"他的博学,这个问题我真是想不到解决!记得那是寒假的时候,我看...
本文原作者:一缕殇流化隐半边冰霜(简书)
关于我和WebSocket的缘:我从大二在计算机网络课上听老师讲过之后,第一次使用就到了毕业之后的第一份工作。直到最近换了工作,到了一家是含...
近来闲着没事,做了一个类似QQ相册的图片展示应用,网上搜了一些JS代码,找到一个自己感觉代码比较优化、便于后台编程、前台展示漂亮美观的JS,结合Domino后台,做了这么一个应用,难度到不大,只是感觉...
对于QQ空间的数据一直来是垂涎不已,老早就想偷过来研究研究,这几天闲下来便开始动手。。。
下面提到的这三种 授权登录 是分别嵌入,不是 share sdk 或者友盟 其它的。
一、下载sdk 地址
1.新浪微博
新浪微博SDK 下载
2.QQ 
QQ SDK 下载
原文链接:/ios/82.html
本文投稿文章,作者:一缕殇流化隐半边冰霜(简书)
关于我和We...
他的最新文章
讲师:王哲涵
讲师:王渊命
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 帝国ol刷怪 的文章

 

随机推荐