I am attempting to write a script to parse a function table containing structs that look like this:
struct func_table_entry {
void (* func)(void *);
byte unknown1;
byte unknown2;
byte unknown3;
char * func_name;
};
I made a script already to define the stucts, but I am having trouble cleaning up the automatic analysis Ghidra does. I have fixed func_name where sometimes Ghidra thinks that the strings are code. I want to define the functions pointed to by func
.
Most of the time this works, but sometimes I get an error:
Function newFunction = functionManager.createFunction(func_string, funcAddress_real, new AddressSet(funcAddress_real), SourceType.USER_DEFINED);
The error:
ghidra.program.database.function.OverlappingFunctionException: Unable to create function at 0113c4e due to overlap with another namespace
So the question ultimately is that if there is already something labeled "LAB_WXYZ" how do I remove that and define my own function.