Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <idc.idc>
- /*
- Author: fastman92
- Description: this script marks values as strings in specified range of addresses (firstAddress, endAddress).
- Useful when there are many string values and you don't want to press 50, 100 or 1000+ times.
- */
- static FindNonZeroByte(curAddress, endAddress)
- {
- while(curAddress < endAddress)
- {
- if(Byte(curAddress))
- return curAddress;
- else
- curAddress++;
- }
- return BADADDR;
- }
- static main() {
- Message("Setting strings in range!\n");
- auto firstAddress = 0x4B6588;
- auto endAddress = 0x4B6C50;
- // Loop
- auto curAddress = firstAddress;
- while(1)
- {
- curAddress = FindNonZeroByte(curAddress, endAddress);
- if(curAddress != BADADDR)
- {
- auto str = GetString(curAddress, -1, ASCSTR_C);
- auto l = strlen(str);
- MakeStr(curAddress, curAddress + l);
- curAddress = curAddress + l;
- Message("Marked string on adress: 0x%X Value: %s\n", curAddress, str);
- }
- else
- break;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement