几个月前逆过,写得很乱,很多地方我自己都不明白为什么这样,用处不大吧,复制粘贴给lz。
call qqext.61E1DF5A
好友:
调用GetPlatformCore取得ITXCore
获取ITXCore->Member(0x20)的函数地址
call这个函数,3个参数,this,guid,ref,使用GUID为:0x27F36E1E,0x4A158321,0x58D06B91,0xB257F1CA,ref返回一个指向IM.dll的class指针,我们下面称为IM_this
对ITXCore->Release进行call,并带着IM_this返回
获取IM_this->Member(0x14)的函数地址
call这个函数,3个参数,this,index,ref,index为好友类型,1是好友,2是陌生人,3是黑名单,ref返回一个指向Common的class的指针,下面我们成为CMM_this
对IM_this->Release进行call,并带着CMM_this返回
获取CMM_this->Member(0x60)的函数地址
call这个函数,2个参数,this,ref,ref返回一个DWORD值,值为好友总数
再次重复GetPlatformCore获取ITXCore,并且获取ITXCore->Member(0x20)的函数地址
call这个函数,3个参数,this,guid,ref,使用GUID变为:0x4A2E4F63,0x46EDA211,0xFFDD9F83,0xE8270D76,ref再次返回一个指向IM.dll的class指针,下面称IM_this
对ITXCore->Release进行call,并带着IM_this返回
获取IM_this->Member(0x30)的函数地址
call这个函数,3个参数,this,1,ref,ref返回一个指向Common的class的指针,下面我们成为CMM_this
对IM_this->Release进行call,并带着CMM_this返回
获取CMM_this->Member(0x60)的函数地址
call这个函数,2个参数,this,ref,ref返回一个DWORD值,值为好友分组总数
获取CMM_this->Member(0x20)的函数地址
call这个函数,3个参数,this,index,ref,index为好友分组索引,ref递增1,意义不明
再次重复GetPlatformCore获取ITXCore,并且获取ITXCore->Member(0x20)的函数地址
call这个函数,3个参数,this,guid,ref,使用GUID还是为:0x4A2E4F63,0x46EDA211,0xFFDD9F83,0xE8270D76,ref再次返回一个指向IM.dll的class指针,下面称IM_this2
对ITXCore->Release进行call,并带着IM_this2返回
获取IM_this2->Member(0x1C)的函数地址
call这个函数,3个参数,this,index,ref,index为好友分组索引,ref返回一个指向Common的class的指针,下面我们成为CMM_this2
获取CMM_this2->Member(0x40)的函数地址
call这个函数,3个参数,this,"strFolderName",ref,ref返回好友分组名称
对CMM_this2->Release进行call
对IM_this2->Release进行call
再次重复GetPlatformCore获取ITXCore,并且获取ITXCore->Member(0x20)的函数地址
call这个函数,3个参数,this,guid,ref,使用GUID变为:0xCEE82B03,0x4CD434B7,0x743B95BE,0xF1F1493A,ref再次返回一个指向IM.dll的class指针,下面称IM_this3
对ITXCore->Release进行call,并带着IM_this3返回
获取IM_this3->Member(0x20)的函数地址
call这个函数,3个参数,this,index,ref,index为好友分组索引,ref返回一个指向Common的class的指针,下面我们成为CMM_this3
对IM_this3->Release进行call,并带着CMM_this3返回
获取CMM_this3->Member(0x60)的函数地址
call这个函数,2个参数,this,ref,ref返回一个DWORD值,值为此分组好友总数
获取CMM_this3->Member(0x30)的函数地址
call这个函数,3个参数,this,index,ref,ref返回好友QQ号
一直call到index=好友总数为止
对CMM_this3->Release进行call
结束对好友列表的获取
群:
调用GetPlatformCore取得ITXCore
获取ITXCore->Member(0x20)的函数地址
call这个函数,3个参数,this,guid,ref,使用GUID为:0x76063A86,0x44A6D553,0x44A6D553,0xA71A2187,ref返回一个指向IM.dll的class指针,我们下面称为IM_this
对ITXCore->Release进行call,并带着IM_this返回
获取IM_this->Member(0x28)的函数地址(代码内是CALL DWOR PTR[ECX+28])
call这个函数,2个参数,this,ref,ref返回一个Common的class指针,,下面我们成为CMM_this
对IM_this->Release进行call,并带着CMM_this返回
获取CMM_this->Member(0x60)的函数地址
call这个函数,2个参数,this,ref,ref返回一个DWORD值,值为群总数
获取CMM_this->Member(0x30)的函数地址
call这个函数,3个参数,this,index,ref,index为群索引,ref返回群号(不是显示的)
CMM_this*大概都是ITXData