注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

且行且记录

点滴记录,行的更远!

 
 
 

日志

 
 

WZCPassword2Key调试  

2016-06-13 08:55:48|  分类: 调试记录 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
0:010> uf /c WZCSAPI!WZCPassword2Key
WZCSAPI!WZCPassword2Key (72fa3e39)
  WZCSAPI!WZCPassword2Key+0x2d (72fa3e66):
    call to WZCSAPI!GetEncryptionForAdapter+0x1c6d (72fa7477)
  WZCSAPI!WZCPassword2Key+0x41 (72fa3e7a):
    call to WZCSAPI!GetEncryptionForAdapter+0x1c6d (72fa7477)
  WZCSAPI!WZCPassword2Key+0x5e (72fa3e97):
    call to WZCSAPI!GetEncryptionForAdapter+0x14d (72fa5957)

WZCSAPI!WZCPassword2Key+0x56:
72fa3e8f f3a5            rep movs dword ptr es:[edi],dword ptr [esi] es:0023:03e876fc=00000000 ds:0023:032ce590=d2d38392
0:012> db esi l20
032ce590  92 83 d3 d2 1e 00 d3 af-92 70 ed 3f d0 d1 17 48
032ce5a0  76 32 25 e8 b9 03 fc 07-af 0a 9c d4 eb 30 9c bb


OD中反汇编:
72FA7E9E  |> push    dword ptr [ebp+10] 密码指针
72FA7EA1  |.  push    ebx 指针指向一个结构
72FA7EA2  |.  call    WZCPassword2Key 

72FA3E39=WZCPassword2Key

72FA3E39 >/$  mov     edi, edi
72FA3E3B  |.  push    ebp
72FA3E3C  |.  mov     ebp, esp
72FA3E3E  |.  sub     esp, 2C
72FA3E41  |.  mov     eax, dword ptr [72FAD1DC]
72FA3E46  |.  push    ebx
72FA3E47  |.  mov     ebx, dword ptr [ebp+C] ;-->"111122223333"
72FA3E4A  |.  push    esi
72FA3E4B  |.  push    edi
72FA3E4C  |.  mov     edi, dword ptr [ebp+8] ;-->c8 02 ...
72FA3E4F  |.  lea     ecx, dword ptr [ebp-2C]
72FA3E52  |.  push    ecx ; buff
72FA3E53  |.  push    1
72FA3E55  |.  mov     esi, 1000
72FA3E5A  |.  push    esi
72FA3E5B  |.  push    dword ptr [edi+10] ;length
72FA3E5E  |.  mov     dword ptr [ebp-4], eax
72FA3E61  |.  lea     eax, dword ptr [edi+14] ;eax-->yyyyyyyyyyyy.
72FA3E64  |.  push    eax ;-->yangshouguang.
72FA3E65  |.  push    ebx ;-->"111122223333"
72FA3E66  |.  call    72FA7477 <---------
72FA3E6B  |.  lea     eax, dword ptr [ebp-18]
72FA3E6E  |.  push    eax
72FA3E6F  |.  push    2
72FA3E71  |.  push    esi
72FA3E72  |.  push    dword ptr [edi+10]
72FA3E75  |.  lea     eax, dword ptr [edi+14]
72FA3E78  |.  push    eax
72FA3E79  |.  push    ebx
72FA3E7A  |.  call    72FA7477
72FA3E7F  |.  push    8
72FA3E81  |.  mov     dword ptr [edi+70], 20 ;写入长度,偏移70h
72FA3E88  |.  pop     ecx
72FA3E89  |.  add     edi, 74 ;加密的密码在偏移74h的地方
72FA3E8C  |.  lea     esi, dword ptr [ebp-2C]
72FA3E8F  |.  rep     movs dword ptr es:[edi], dword p>
72FA3E91  |.  mov     ecx, dword ptr [ebp-4]
72FA3E94  |.  pop     edi
72FA3E95  |.  pop     esi
72FA3E96  |.  pop     ebx
72FA3E97  |.  call    72FA5957
72FA3E9C  |.  leave
72FA3E9D  \.  retn    8

72FA7477  /$  mov     edi, edi
72FA7479  |.  push    ebp
72FA747A  |.  mov     ebp, esp
72FA747C  |.  sub     esp, 48
72FA747F  |.  mov     eax, dword ptr [72FAD1DC]
72FA7484  |.  mov     ecx, dword ptr [ebp+1C]
72FA7487  |.  push    ebx
72FA7488  |.  mov     ebx, dword ptr [ebp+8]
72FA748B  |.  mov     dword ptr [ebp-4], eax
72FA748E  |.  mov     eax, dword ptr [ebp+10]
72FA7491  |.  cmp     eax, 20
72FA7494  |.  push    esi
72FA7495  |.  mov     esi, dword ptr [ebp+C]
72FA7498  |.  push    edi
72FA7499  |.  mov     dword ptr [ebp-40], ecx
72FA749C  |.  jl      short 72FA74A1
72FA749E  |.  push    20
72FA74A0  |.  pop     eax
72FA74A1  |>  mov     ecx, eax
72FA74A3  |.  mov     edx, ecx
72FA74A5  |.  shr     ecx, 2
72FA74A8  |.  lea     edi, dword ptr [ebp-28]
72FA74AB  |.  rep     movs dword ptr es:[edi], dword p>
72FA74AD  |.  mov     ecx, edx
72FA74AF  |.  and     ecx, 3
72FA74B2  |.  rep     movs byte ptr es:[edi], byte ptr>
72FA74B4  |.  mov     ecx, dword ptr [ebp+18]
72FA74B7  |.  mov     edx, ecx
72FA74B9  |.  sar     edx, 18
72FA74BC  |.  mov     byte ptr [ebp+eax-28], dl
72FA74C0  |.  mov     edx, ecx
72FA74C2  |.  sar     edx, 10
72FA74C5  |.  mov     byte ptr [ebp+eax-27], dl
72FA74C9  |.  mov     edx, ecx
72FA74CB  |.  mov     byte ptr [ebp+eax-25], cl
72FA74CF  |.  sar     edx, 8
72FA74D2  |.  mov     ecx, ebx
72FA74D4  |.  mov     byte ptr [ebp+eax-26], dl
72FA74D8  |.  lea     esi, dword ptr [ecx+1]
72FA74DB  |>  /mov     dl, byte ptr [ecx]
72FA74DD  |.  |inc     ecx
72FA74DE  |.  |test    dl, dl
72FA74E0  |.^ \jnz     short 72FA74DB
72FA74E2  |.  push    14
72FA74E4  |.  lea     edx, dword ptr [ebp-3C]
72FA74E7  |.  push    edx
72FA74E8  |.  sub     ecx, esi
72FA74EA  |.  push    ecx
72FA74EB  |.  push    ebx
72FA74EC  |.  add     eax, 4
72FA74EF  |.  push    eax
72FA74F0  |.  lea     eax, dword ptr [ebp-28]
72FA74F3  |.  push    eax
72FA74F4  |.  call    72FA72B1
72FA74F9  |.  mov     eax, dword ptr [ebp+14]
72FA74FC  |.  cmp     eax, 1
72FA74FF  |.  mov     edi, dword ptr [ebp-40]
72FA7502  |.  push    5
72FA7504  |.  pop     ecx
72FA7505  |.  lea     esi, dword ptr [ebp-3C]
72FA7508  |.  rep     movs dword ptr es:[edi], dword p>
72FA750A  |.  jle     short 72FA755C
72FA750C  |.  lea     ecx, dword ptr [ebp-28]
72FA750F  |.  sub     ecx, dword ptr [ebp-40]
72FA7512  |.  dec     eax
72FA7513  |.  mov     dword ptr [ebp-48], ecx
72FA7516  |.  mov     dword ptr [ebp-44], eax
72FA7519  |>  /mov     eax, ebx
72FA751B  |.  |lea     esi, dword ptr [eax+1]
72FA751E  |>  |/mov     cl, byte ptr [eax]
72FA7520  |.  ||inc     eax
72FA7521  |.  ||test    cl, cl
72FA7523  |.^ |\jnz     short 72FA751E
72FA7525  |.  |push    24
72FA7527  |.  |lea     ecx, dword ptr [ebp-28]
72FA752A  |.  |push    ecx
72FA752B  |.  |sub     eax, esi
72FA752D  |.  |push    eax
72FA752E  |.  |push    ebx
72FA752F  |.  |push    14
72FA7531  |.  |lea     eax, dword ptr [ebp-3C]
72FA7534  |.  |push    eax
72FA7535  |.  |call    72FA72B1
72FA753A  |.  |mov     eax, dword ptr [ebp-40]
72FA753D  |.  |push    5
72FA753F  |.  |pop     ecx
72FA7540  |.  |lea     esi, dword ptr [ebp-28]
72FA7543  |.  |lea     edi, dword ptr [ebp-3C]
72FA7546  |.  |push    14
72FA7548  |.  |rep     movs dword ptr es:[edi], dword >
72FA754A  |.  |pop     esi
72FA754B  |>  |/mov     ecx, dword ptr [ebp-48]
72FA754E  |.  ||mov     cl, byte ptr [ecx+eax]
72FA7551  |.  ||xor     byte ptr [eax], cl
72FA7553  |.  ||inc     eax
72FA7554  |.  ||dec     esi
72FA7555  |.^ |\jnz     short 72FA754B
72FA7557  |.  |dec     dword ptr [ebp-44]
72FA755A  |.^ \jnz     short 72FA7519
72FA755C  |>  mov     ecx, dword ptr [ebp-4]
72FA755F  |.  pop     edi
72FA7560  |.  pop     esi
72FA7561  |.  pop     ebx
72FA7562  |.  call    72FA5957
72FA7567  |.  leave
72FA7568  \.  retn    18
  评论这张
 
阅读(13)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017