Advertisement
DrBoat

Untitled

Feb 15th, 2020
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.87 KB | None | 0 0
  1. signed int __cdecl check(const char *input)
  2. {
  3.   signed int v2; // [esp+1Ch] [ebp-1Ch]
  4.   unsigned int i; // [esp+20h] [ebp-18h]
  5.   unsigned int j; // [esp+24h] [ebp-14h]
  6.   size_t len; // [esp+28h] [ebp-10h]
  7.  
  8.   v2 = 0;
  9.   len = strlen(input);
  10.   if ( len <= 4 || !(len & 1) )                 // длина > 4 и нечетная
  11.     v2 = 1;
  12.   if ( *input != '^' || input[len >> 1] != '_' || input[len - 1] != '^' )// [0] = [end] = '^'
  13.                                                 // [mid] = '_'
  14.     v2 = 1;
  15.   for ( i = 1; len >> 1 > i; ++i )
  16.   {
  17.     if ( input[i] <= ' ' || input[i] > '/' )    // ' ' < {[1]..[mid]} <= '/'
  18.       v2 = 1;
  19.   }
  20.   for ( j = (len >> 1) + 1; len - 1 > j; ++j )  // '/' < {[mid]..[end]} <= '9'
  21.   {
  22.     if ( input[j] <= '/' || input[j] > '9' )
  23.       v2 = 1;
  24.   }
  25.   return v2;                                    // подходит '^/_9^'
  26. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement