- int SreachIDentKeyOrCodes(int sectionVA, int Limit, int pCodeSreachBuf, int reserveL)
- int c_char; signed int usedl; int remainderDatasize;
- int pOfst_data;int pOfst_a;int result;
- if ( !sectionVA || !pCodeSreachBuf ) goto ERROR;
- memset32(buff_100_, reserveL, 0x100u); charpos = 0;
- if ( reserveL ) { do
- { c_char = *(charpos + pCodeSreachBuf); // c_char equal A Element val by array code
- remainder = reserveL - charpos++ - 1;
- buff_100_[c_char] = remainder; // obrain remainder length to a char index into buf
- } // control reverse the bytes.
- while ( charpos < reserveL ); // like aryA.5 B.4 C 3 D 2 E 1 F 0
- }
- usedl = 1;
- remainderDatasize = Limit - reserveL;
- if ( (Limit - reserveL) >= 1 )
- { while ( 1 )
- { pOfst_data = usedl - 1; // init:0 //provisional offset
- pOfst_a = usedl - 1 - usedl; // init:-1
- if ( pOfst_a + 1 < reserveL )
- {do {if ( *(pOfst_data + sectionVA) != *(pOfst_a + pCodeSreachBuf + 1) )
- break; ++pOfst_data; pOfst_a = pOfst_data - usedl; // init:-1
- }while ( pOfst_data - usedl + 1 < reserveL );
- remainderDatasize = Limit - reserveL;
- } if ( pOfst_data - usedl + 1 == reserveL )
- break; usedl += buff_100_[*(usedl + sectionVA + reserveL - 1)] + 1;
- if ( usedl > remainderDatasize )
- goto ERROR; }result = usedl - 1; } else {
- ERROR: result = -2;
- } return result;
- }
蛮有趣的说,前面那部分。是有优化了。- - 原先的那部分真的不敢看了,

有人玩LOL么。