首页
社区
课程
招聘
请问有人见过个算法?
发表于: 2011-11-5 21:24 2916

请问有人见过个算法?

2011-11-5 21:24
2916
IDA的伪码
int __thiscall sub_4C2FA0(void *this, const char *Str, const char *Source, const void *Src, signed int a5)
{
  int result; // eax@2
  DWORD v6; // esi@14
  size_t v7; // esi@14
  unsigned __int16 v8; // ax@21
  char v9; // [sp+5Ch] [bp-2ACh]@22
  char v10; // [sp+5Dh] [bp-2ABh]@22
  char v11; // [sp+5Eh] [bp-2AAh]@22
  char v12; // [sp+5Fh] [bp-2A9h]@22
  char v13; // [sp+60h] [bp-2A8h]@22
  char v14; // [sp+61h] [bp-2A7h]@22
  char v15; // [sp+62h] [bp-2A6h]@22
  char v16; // [sp+63h] [bp-2A5h]@22
  char v17; // [sp+64h] [bp-2A4h]@22
  char v18; // [sp+65h] [bp-2A3h]@22
  char *v19; // [sp+15Ch] [bp-1ACh]@19
  __int16 *v20; // [sp+160h] [bp-1A8h]@19
  int v21; // [sp+164h] [bp-1A4h]@19
  int v22; // [sp+168h] [bp-1A0h]@19
  char *v23; // [sp+16Ch] [bp-19Ch]@16
  char Dest; // [sp+170h] [bp-198h]@16
  int v25; // [sp+1F0h] [bp-118h]@14
  DWORD v26; // [sp+1F4h] [bp-114h]@14
  int i; // [sp+1F8h] [bp-110h]@8
  char v28; // [sp+1FFh] [bp-109h]@8
  int v29; // [sp+200h] [bp-108h]@6
  char v30; // [sp+204h] [bp-104h]@8
  char Dst; // [sp+205h] [bp-103h]@8
  char v32; // [sp+206h] [bp-102h]@22
  char v33; // [sp+207h] [bp-101h]@22
  char v34; // [sp+208h] [bp-100h]@22
  char v35; // [sp+209h] [bp-FFh]@22
  void *v36; // [sp+304h] [bp-4h]@1
  signed int v37; // [sp+31Ch] [bp+14h]@6

  v36 = this;
  if ( AfxIsValidAddress(this, 0x1404u, 1) )
  {
    if ( a5 >= 7 && a5 < 255 )
    {
      v37 = a5 + 1;
      v29 = v37;
      if ( v37 % 4 )
        v29 = 4 * v37 / 4 + 4;
      memcpy(&Dst, Src, v37 - 1);
      memset(&v30 + v37, 0, v29 - v37);
      v28 = 0;
      for ( i = 1; i < v37; ++i )
        v28 += *(&v30 + i);
      v30 = ~v28 + 1;
      for ( i = 0; i < v37; ++i )
        *(&v30 + i) = sub_4C3520(*(&v30 + i));
      v6 = GetTickCount();
      v26 = GetTickCount() * v6;
      v7 = strlen(Str);
      v25 = strlen(Source) + v7;
      if ( v25 % 4 )
        v25 = 4 * v25 / 4 + 4;
      strcpy(&Dest, Source);
      strcat(&Dest, Str);
      v23 = &Dest;
      for ( i = 0; i < v25 / 4; ++i )
      {
        v26 ^= *(_DWORD *)v23;
        v23 += 4;
      }
      v22 = (unsigned __int16)sub_4C14A0(v26);
      v22 = (v22 | ((unsigned __int16)sub_4C14A0(v26 >> 16) << 16)) ^ 0xA55AA55A;
      v21 = v22;
      *((_DWORD *)v36 + 227) = v22;
      v20 = (__int16 *)&v30;
      v19 = &v30;
      for ( i = 0; i < v29 / 4; ++i )
      {
        *(_DWORD *)v19 ^= v22;
        v19 += 4;
        v22 = (unsigned __int16)sub_4C14A0(*v20);
        ++v20;
        v8 = sub_4C14A0(*v20);
        ++v20;
        v22 = (v22 | (v8 << 16)) ^ 0xA55AA55A;
      }
      *((_DWORD *)v36 + 226) = v22;
      v9 = v30;
      v10 = v21;
      v11 = Dst;
      v12 = BYTE1(v21);
      v13 = v32;
      v14 = v33;
      v15 = BYTE2(v21);
      v16 = v34;
      v17 = BYTE3(v21);
      memcpy(&v18, &v35, v37 - 5);
      result = sub_4C2E00(&v9, v37 + 4);
    }
    else
    {
      result = 0;
    }
  }
  else
  {
    result = 0;
  }
  return result;
}


堆栈:

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 42
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
忘记OD的反汇编码了

004C2FA0 /$ 55 push ebp
004C2FA1 |. 8BEC mov ebp, esp
004C2FA3 |. 81EC FC020000 sub esp, 2FC
004C2FA9 |. 53 push ebx
004C2FAA |. 56 push esi
004C2FAB |. 57 push edi
004C2FAC |. 894D FC mov dword ptr [ebp-4], ecx
004C2FAF |. 6A 01 push 1
004C2FB1 |. 68 04140000 push 1404
004C2FB6 |. 8B45 FC mov eax, dword ptr [ebp-4]
004C2FB9 |. 50 push eax
004C2FBA |. E8 57200400 call <jmp.&MFC71.#AfxIsValidAddress_1110>
004C2FBF |. 85C0 test eax, eax
004C2FC1 |. 75 07 jnz short 004C2FCA
004C2FC3 |. 33C0 xor eax, eax
004C2FC5 |. E9 4B050000 jmp 004C3515
004C2FCA |> 837D 14 07 cmp dword ptr [ebp+14], 7
004C2FCE |. 7C 09 jl short 004C2FD9
004C2FD0 |. 817D 14 FF000>cmp dword ptr [ebp+14], 0FF
004C2FD7 |. 7C 07 jl short 004C2FE0
004C2FD9 |> 33C0 xor eax, eax
004C2FDB |. E9 35050000 jmp 004C3515
004C2FE0 |> 8B45 14 mov eax, dword ptr [ebp+14]
004C2FE3 |. 83C0 01 add eax, 1
004C2FE6 |. 8945 14 mov dword ptr [ebp+14], eax
004C2FE9 |. 8B45 14 mov eax, dword ptr [ebp+14]
004C2FEC |. 8985 F8FEFFFF mov dword ptr [ebp-108], eax
004C2FF2 |. 8B45 14 mov eax, dword ptr [ebp+14]
004C2FF5 |. 25 03000080 and eax, 80000003
004C2FFA |. 79 05 jns short 004C3001
004C2FFC |. 48 dec eax
004C2FFD |. 83C8 FC or eax, FFFFFFFC
004C3000 |. 40 inc eax
004C3001 |> 85C0 test eax, eax
004C3003 |. 74 19 je short 004C301E
004C3005 |. 8B45 14 mov eax, dword ptr [ebp+14]
004C3008 |. 99 cdq
004C3009 |. 83E2 03 and edx, 3
004C300C |. 03C2 add eax, edx
004C300E |. C1F8 02 sar eax, 2
004C3011 |. 8D0485 040000>lea eax, dword ptr [eax*4+4]
004C3018 |. 8985 F8FEFFFF mov dword ptr [ebp-108], eax
004C301E |> 8B45 14 mov eax, dword ptr [ebp+14]
004C3021 |. 83E8 01 sub eax, 1
004C3024 |. 50 push eax ; /n
004C3025 |. 8B4D 10 mov ecx, dword ptr [ebp+10] ; |
004C3028 |. 51 push ecx ; |src
004C3029 |. 8D95 FDFEFFFF lea edx, dword ptr [ebp-103] ; |
004C302F |. 52 push edx ; |dest
004C3030 |. E8 4B280400 call <jmp.&MSVCR71.memcpy> ; \memcpy
004C3035 |. 83C4 0C add esp, 0C
004C3038 |. 8B85 F8FEFFFF mov eax, dword ptr [ebp-108]
004C303E |. 2B45 14 sub eax, dword ptr [ebp+14]
004C3041 |. 50 push eax ; /n
004C3042 |. 6A 00 push 0 ; |c = 00
004C3044 |. 8B4D 14 mov ecx, dword ptr [ebp+14] ; |
004C3047 |. 8D940D FCFEFF>lea edx, dword ptr [ebp+ecx-104] ; |
004C304E |. 52 push edx ; |s
004C304F |. E8 72250400 call <jmp.&MSVCR71.memset> ; \memset
004C3054 |. 83C4 0C add esp, 0C
004C3057 |. C685 F7FEFFFF>mov byte ptr [ebp-109], 0
004C305E |. C785 F0FEFFFF>mov dword ptr [ebp-110], 1
004C3068 |. EB 0F jmp short 004C3079
004C306A |> 8B85 F0FEFFFF /mov eax, dword ptr [ebp-110]
004C3070 |. 83C0 01 |add eax, 1
004C3073 |. 8985 F0FEFFFF |mov dword ptr [ebp-110], eax
004C3079 |> 8B85 F0FEFFFF mov eax, dword ptr [ebp-110]
004C307F |. 3B45 14 |cmp eax, dword ptr [ebp+14]
004C3082 |. 7D 1F |jge short 004C30A3
004C3084 |. 8B85 F0FEFFFF |mov eax, dword ptr [ebp-110]
004C308A |. 0FBE8C05 FCFE>|movsx ecx, byte ptr [ebp+eax-104]
004C3092 |. 0FB695 F7FEFF>|movzx edx, byte ptr [ebp-109]
004C3099 |. 03D1 |add edx, ecx
004C309B |. 8895 F7FEFFFF |mov byte ptr [ebp-109], dl
004C30A1 |.^ EB C7 \jmp short 004C306A
004C30A3 |> 0FB685 F7FEFF>movzx eax, byte ptr [ebp-109]
004C30AA |. F7D0 not eax
004C30AC |. 83C0 01 add eax, 1
004C30AF |. 8885 FCFEFFFF mov byte ptr [ebp-104], al
004C30B5 |. C785 F0FEFFFF>mov dword ptr [ebp-110], 0
004C30BF |. EB 0F jmp short 004C30D0
004C30C1 |> 8B85 F0FEFFFF /mov eax, dword ptr [ebp-110]
004C30C7 |. 83C0 01 |add eax, 1
004C30CA |. 8985 F0FEFFFF |mov dword ptr [ebp-110], eax
004C30D0 |> 8B85 F0FEFFFF mov eax, dword ptr [ebp-110]
004C30D6 |. 3B45 14 |cmp eax, dword ptr [ebp+14]
004C30D9 |. 7D 25 |jge short 004C3100
004C30DB |. 8B85 F0FEFFFF |mov eax, dword ptr [ebp-110]
004C30E1 |. 8A8C05 FCFEFF>|mov cl, byte ptr [ebp+eax-104]
004C30E8 |. 51 |push ecx
004C30E9 |. 8B4D FC |mov ecx, dword ptr [ebp-4]
004C30EC |. E8 2F040000 |call 004C3520
004C30F1 |. 8B95 F0FEFFFF |mov edx, dword ptr [ebp-110]
004C30F7 |. 888415 FCFEFF>|mov byte ptr [ebp+edx-104], al
004C30FE |.^ EB C1 \jmp short 004C30C1
004C3100 |> FF15 50825100 call dword ptr [<&KERNEL32.GetTickCount>] ; [GetTickCount
004C3106 |. 8BF0 mov esi, eax
004C3108 |. FF15 50825100 call dword ptr [<&KERNEL32.GetTickCount>] ; [GetTickCount
004C310E |. 0FAFF0 imul esi, eax
004C3111 |. 89B5 ECFEFFFF mov dword ptr [ebp-114], esi
004C3117 |. 8B45 08 mov eax, dword ptr [ebp+8]
004C311A |. 50 push eax ; /s
004C311B |. E8 7A260400 call <jmp.&MSVCR71.strlen> ; \strlen
004C3120 |. 83C4 04 add esp, 4
004C3123 |. 8BF0 mov esi, eax
004C3125 |. 8B4D 0C mov ecx, dword ptr [ebp+C]
004C3128 |. 51 push ecx ; /s
004C3129 |. E8 6C260400 call <jmp.&MSVCR71.strlen> ; \strlen
004C312E |. 83C4 04 add esp, 4
004C3131 |. 03F0 add esi, eax
004C3133 |. 89B5 E8FEFFFF mov dword ptr [ebp-118], esi
004C3139 |. 8B85 E8FEFFFF mov eax, dword ptr [ebp-118]
004C313F |. 25 03000080 and eax, 80000003
004C3144 |. 79 05 jns short 004C314B
004C3146 |. 48 dec eax
004C3147 |. 83C8 FC or eax, FFFFFFFC
004C314A |. 40 inc eax
004C314B |> 85C0 test eax, eax
004C314D |. 74 1E je short 004C316D
004C314F |. 8B85 E8FEFFFF mov eax, dword ptr [ebp-118]
004C3155 |. 99 cdq
004C3156 |. 83E2 03 and edx, 3
004C3159 |. 03C2 add eax, edx
004C315B |. C1F8 02 sar eax, 2
004C315E |. 8D0485 040000>lea eax, dword ptr [eax*4+4]
004C3165 |. 8985 E8FEFFFF mov dword ptr [ebp-118], eax
004C316B |. EB 0C jmp short 004C3179
004C316D |> 8B85 E8FEFFFF mov eax, dword ptr [ebp-118]
004C3173 |. 8985 E8FEFFFF mov dword ptr [ebp-118], eax
004C3179 |> 8B45 0C mov eax, dword ptr [ebp+C]
004C317C |. 50 push eax ; /src
004C317D |. 8D8D 68FEFFFF lea ecx, dword ptr [ebp-198] ; |
004C3183 |. 51 push ecx ; |dest
004C3184 |. E8 0B260400 call <jmp.&MSVCR71.strcpy> ; \strcpy
004C3189 |. 83C4 08 add esp, 8
004C318C |. 8B45 08 mov eax, dword ptr [ebp+8]
004C318F |. 50 push eax ; /src
004C3190 |. 8D8D 68FEFFFF lea ecx, dword ptr [ebp-198] ; |
004C3196 |. 51 push ecx ; |dest
004C3197 |. E8 48260400 call <jmp.&MSVCR71.strcat> ; \strcat
004C319C |. 83C4 08 add esp, 8
004C319F |. 8D85 68FEFFFF lea eax, dword ptr [ebp-198]
004C31A5 |. 8985 64FEFFFF mov dword ptr [ebp-19C], eax
004C31AB |. C785 F0FEFFFF>mov dword ptr [ebp-110], 0
004C31B5 |. EB 0F jmp short 004C31C6
004C31B7 |> 8B85 F0FEFFFF /mov eax, dword ptr [ebp-110]
004C31BD |. 83C0 01 |add eax, 1
004C31C0 |. 8985 F0FEFFFF |mov dword ptr [ebp-110], eax
004C31C6 |> 8B85 E8FEFFFF mov eax, dword ptr [ebp-118]
004C31CC |. 99 |cdq
004C31CD |. 83E2 03 |and edx, 3
004C31D0 |. 03C2 |add eax, edx
004C31D2 |. C1F8 02 |sar eax, 2
004C31D5 |. 3985 F0FEFFFF |cmp dword ptr [ebp-110], eax
004C31DB |. 7D 25 |jge short 004C3202
004C31DD |. 8B85 64FEFFFF |mov eax, dword ptr [ebp-19C]
004C31E3 |. 8B8D ECFEFFFF |mov ecx, dword ptr [ebp-114]
004C31E9 |. 3308 |xor ecx, dword ptr [eax]
004C31EB |. 898D ECFEFFFF |mov dword ptr [ebp-114], ecx
004C31F1 |. 8B95 64FEFFFF |mov edx, dword ptr [ebp-19C]
004C31F7 |. 83C2 04 |add edx, 4
004C31FA |. 8995 64FEFFFF |mov dword ptr [ebp-19C], edx
004C3200 |.^ EB B5 \jmp short 004C31B7
004C3202 |> 66:8B85 ECFEF>mov ax, word ptr [ebp-114]
004C3209 |. 50 push eax
004C320A |. E8 91E2FFFF call 004C14A0
004C320F |. 83C4 04 add esp, 4
004C3212 |. 0FB7C8 movzx ecx, ax
004C3215 |. 898D 60FEFFFF mov dword ptr [ebp-1A0], ecx
004C321B |. 8B85 ECFEFFFF mov eax, dword ptr [ebp-114]
004C3221 |. C1E8 10 shr eax, 10
004C3224 |. 50 push eax
004C3225 |. E8 76E2FFFF call 004C14A0
004C322A |. 83C4 04 add esp, 4
004C322D |. 0FB7C8 movzx ecx, ax
004C3230 |. C1E1 10 shl ecx, 10
004C3233 |. 0B8D 60FEFFFF or ecx, dword ptr [ebp-1A0]
004C3239 |. 898D 60FEFFFF mov dword ptr [ebp-1A0], ecx
004C323F |. 8B85 60FEFFFF mov eax, dword ptr [ebp-1A0]
004C3245 |. 35 5AA55AA5 xor eax, A55AA55A
004C324A |. 8985 60FEFFFF mov dword ptr [ebp-1A0], eax
004C3250 |. 8B85 60FEFFFF mov eax, dword ptr [ebp-1A0]
004C3256 |. 8985 5CFEFFFF mov dword ptr [ebp-1A4], eax
004C325C |. 8B45 FC mov eax, dword ptr [ebp-4]
004C325F |. 8B8D 5CFEFFFF mov ecx, dword ptr [ebp-1A4]
004C3265 |. 8988 8C030000 mov dword ptr [eax+38C], ecx
004C326B |. 8D85 FCFEFFFF lea eax, dword ptr [ebp-104]
004C3271 |. 8985 58FEFFFF mov dword ptr [ebp-1A8], eax
004C3277 |. 8D85 FCFEFFFF lea eax, dword ptr [ebp-104]
004C327D |. 8985 54FEFFFF mov dword ptr [ebp-1AC], eax
004C3283 |. C785 F0FEFFFF>mov dword ptr [ebp-110], 0
004C328D |. EB 0F jmp short 004C329E
004C328F |> 8B85 F0FEFFFF /mov eax, dword ptr [ebp-110]
004C3295 |. 83C0 01 |add eax, 1
004C3298 |. 8985 F0FEFFFF |mov dword ptr [ebp-110], eax
004C329E |> 8B85 F8FEFFFF mov eax, dword ptr [ebp-108]
004C32A4 |. 99 |cdq
004C32A5 |. 83E2 03 |and edx, 3
004C32A8 |. 03C2 |add eax, edx
004C32AA |. C1F8 02 |sar eax, 2
004C32AD |. 3985 F0FEFFFF |cmp dword ptr [ebp-110], eax
004C32B3 |. 0F8D B4000000 |jge 004C336D
004C32B9 |. 8B85 54FEFFFF |mov eax, dword ptr [ebp-1AC]
004C32BF |. 8B08 |mov ecx, dword ptr [eax]
004C32C1 |. 338D 60FEFFFF |xor ecx, dword ptr [ebp-1A0]
004C32C7 |. 8B95 54FEFFFF |mov edx, dword ptr [ebp-1AC]
004C32CD |. 890A |mov dword ptr [edx], ecx
004C32CF |. 8B85 54FEFFFF |mov eax, dword ptr [ebp-1AC]
004C32D5 |. 83C0 04 |add eax, 4
004C32D8 |. 8985 54FEFFFF |mov dword ptr [ebp-1AC], eax
004C32DE |. 8B85 58FEFFFF |mov eax, dword ptr [ebp-1A8]
004C32E4 |. 66:8B08 |mov cx, word ptr [eax]
004C32E7 |. 66:898D 06FDF>|mov word ptr [ebp-2FA], cx
004C32EE |. 66:8B95 06FDF>|mov dx, word ptr [ebp-2FA]
004C32F5 |. 52 |push edx
004C32F6 |. E8 A5E1FFFF |call 004C14A0
004C32FB |. 83C4 04 |add esp, 4
004C32FE |. 0FB7C0 |movzx eax, ax
004C3301 |. 8985 60FEFFFF |mov dword ptr [ebp-1A0], eax
004C3307 |. 8B8D 58FEFFFF |mov ecx, dword ptr [ebp-1A8]
004C330D |. 83C1 02 |add ecx, 2
004C3310 |. 898D 58FEFFFF |mov dword ptr [ebp-1A8], ecx
004C3316 |. 8B85 58FEFFFF |mov eax, dword ptr [ebp-1A8]
004C331C |. 66:8B08 |mov cx, word ptr [eax]
004C331F |. 66:898D 06FDF>|mov word ptr [ebp-2FA], cx
004C3326 |. 66:8B95 06FDF>|mov dx, word ptr [ebp-2FA]
004C332D |. 52 |push edx
004C332E |. E8 6DE1FFFF |call 004C14A0
004C3333 |. 83C4 04 |add esp, 4
004C3336 |. 0FB7C0 |movzx eax, ax
004C3339 |. C1E0 10 |shl eax, 10
004C333C |. 0B85 60FEFFFF |or eax, dword ptr [ebp-1A0]
004C3342 |. 8985 60FEFFFF |mov dword ptr [ebp-1A0], eax
004C3348 |. 8B8D 58FEFFFF |mov ecx, dword ptr [ebp-1A8]
004C334E |. 83C1 02 |add ecx, 2
004C3351 |. 898D 58FEFFFF |mov dword ptr [ebp-1A8], ecx
004C3357 |. 8B85 60FEFFFF |mov eax, dword ptr [ebp-1A0]
004C335D |. 35 5AA55AA5 |xor eax, A55AA55A
004C3362 |. 8985 60FEFFFF |mov dword ptr [ebp-1A0], eax
004C3368 |.^ E9 22FFFFFF \jmp 004C328F
004C336D |> 8B45 FC mov eax, dword ptr [ebp-4]
004C3370 |. 8B8D 60FEFFFF mov ecx, dword ptr [ebp-1A0]
004C3376 |. 8988 88030000 mov dword ptr [eax+388], ecx
004C337C |. C785 50FDFFFF>mov dword ptr [ebp-2B0], 0
004C3386 |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C338C |. 8A8D FCFEFFFF mov cl, byte ptr [ebp-104]
004C3392 |. 888C05 54FDFF>mov byte ptr [ebp+eax-2AC], cl
004C3399 |. 8B95 50FDFFFF mov edx, dword ptr [ebp-2B0]
004C339F |. 83C2 01 add edx, 1
004C33A2 |. 8995 50FDFFFF mov dword ptr [ebp-2B0], edx
004C33A8 |. 8D85 5CFEFFFF lea eax, dword ptr [ebp-1A4]
004C33AE |. 8985 4CFDFFFF mov dword ptr [ebp-2B4], eax
004C33B4 |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C33BA |. 8B8D 4CFDFFFF mov ecx, dword ptr [ebp-2B4]
004C33C0 |. 8A11 mov dl, byte ptr [ecx]
004C33C2 |. 889405 54FDFF>mov byte ptr [ebp+eax-2AC], dl
004C33C9 |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C33CF |. 83C0 01 add eax, 1
004C33D2 |. 8985 50FDFFFF mov dword ptr [ebp-2B0], eax
004C33D8 |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C33DE |. 8A8D FDFEFFFF mov cl, byte ptr [ebp-103]
004C33E4 |. 888C05 54FDFF>mov byte ptr [ebp+eax-2AC], cl
004C33EB |. 8B95 50FDFFFF mov edx, dword ptr [ebp-2B0]
004C33F1 |. 83C2 01 add edx, 1
004C33F4 |. 8995 50FDFFFF mov dword ptr [ebp-2B0], edx
004C33FA |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C3400 |. 8B8D 4CFDFFFF mov ecx, dword ptr [ebp-2B4]
004C3406 |. 8A51 01 mov dl, byte ptr [ecx+1]
004C3409 |. 889405 54FDFF>mov byte ptr [ebp+eax-2AC], dl
004C3410 |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C3416 |. 83C0 01 add eax, 1
004C3419 |. 8985 50FDFFFF mov dword ptr [ebp-2B0], eax
004C341F |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C3425 |. 8A8D FEFEFFFF mov cl, byte ptr [ebp-102]
004C342B |. 888C05 54FDFF>mov byte ptr [ebp+eax-2AC], cl
004C3432 |. 8B95 50FDFFFF mov edx, dword ptr [ebp-2B0]
004C3438 |. 83C2 01 add edx, 1
004C343B |. 8995 50FDFFFF mov dword ptr [ebp-2B0], edx
004C3441 |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C3447 |. 8A8D FFFEFFFF mov cl, byte ptr [ebp-101]
004C344D |. 888C05 54FDFF>mov byte ptr [ebp+eax-2AC], cl
004C3454 |. 8B95 50FDFFFF mov edx, dword ptr [ebp-2B0]
004C345A |. 83C2 01 add edx, 1
004C345D |. 8995 50FDFFFF mov dword ptr [ebp-2B0], edx
004C3463 |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C3469 |. 8B8D 4CFDFFFF mov ecx, dword ptr [ebp-2B4]
004C346F |. 8A51 02 mov dl, byte ptr [ecx+2]
004C3472 |. 889405 54FDFF>mov byte ptr [ebp+eax-2AC], dl
004C3479 |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C347F |. 83C0 01 add eax, 1
004C3482 |. 8985 50FDFFFF mov dword ptr [ebp-2B0], eax
004C3488 |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C348E |. 8A8D 00FFFFFF mov cl, byte ptr [ebp-100]
004C3494 |. 888C05 54FDFF>mov byte ptr [ebp+eax-2AC], cl
004C349B |. 8B95 50FDFFFF mov edx, dword ptr [ebp-2B0]
004C34A1 |. 83C2 01 add edx, 1
004C34A4 |. 8995 50FDFFFF mov dword ptr [ebp-2B0], edx
004C34AA |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C34B0 |. 8B8D 4CFDFFFF mov ecx, dword ptr [ebp-2B4]
004C34B6 |. 8A51 03 mov dl, byte ptr [ecx+3]
004C34B9 |. 889405 54FDFF>mov byte ptr [ebp+eax-2AC], dl
004C34C0 |. 8B85 50FDFFFF mov eax, dword ptr [ebp-2B0]
004C34C6 |. 83C0 01 add eax, 1
004C34C9 |. 8985 50FDFFFF mov dword ptr [ebp-2B0], eax
004C34CF |. 8B45 14 mov eax, dword ptr [ebp+14]
004C34D2 |. 83E8 05 sub eax, 5
004C34D5 |. 50 push eax ; /n
004C34D6 |. 8D8D 01FFFFFF lea ecx, dword ptr [ebp-FF] ; |
004C34DC |. 51 push ecx ; |src
004C34DD |. 8B95 50FDFFFF mov edx, dword ptr [ebp-2B0] ; |
004C34E3 |. 8D8415 54FDFF>lea eax, dword ptr [ebp+edx-2AC] ; |
004C34EA |. 50 push eax ; |dest
004C34EB |. E8 90230400 call <jmp.&MSVCR71.memcpy> ; \memcpy
004C34F0 |. 83C4 0C add esp, 0C
004C34F3 |. 8B45 14 mov eax, dword ptr [ebp+14]
004C34F6 |. 83C0 04 add eax, 4
004C34F9 |. 8985 48FDFFFF mov dword ptr [ebp-2B8], eax
004C34FF |. 8B85 48FDFFFF mov eax, dword ptr [ebp-2B8]
004C3505 |. 50 push eax
004C3506 |. 8D8D 54FDFFFF lea ecx, dword ptr [ebp-2AC]
004C350C |. 51 push ecx
004C350D |. 8B4D FC mov ecx, dword ptr [ebp-4]
004C3510 |. E8 EBF8FFFF call 004C2E00
004C3515 |> 5F pop edi
004C3516 |. 5E pop esi
004C3517 |. 5B pop ebx
004C3518 |. 8BE5 mov esp, ebp
004C351A |. 5D pop ebp
004C351B \. C2 1000 retn 10

2011-11-5 21:26
0
雪    币: 19
活跃值: (1086)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
有点像DES
2011-11-5 22:49
0
游客
登录 | 注册 方可回帖
返回
//