Finding the index of a symbol in unsigned char and extracting contents?

I'll take the easy way out and let strtok() do the work:

void someFunction(byte *);

void setup() {
  const char dog[] = "A0:433.33";
  
  Serial.begin(115200);
  delay(2000);

  someFunction((byte *)dog);
}

void loop() {
}

void someFunction(byte *payload) {
  char *ptr, tempBuffer[25];
  strcpy(tempBuffer, (const char *)payload);  // strtok changes the string, so make a local copy
  ptr = strtok(tempBuffer, ":");
  Serial.print("First Token = ");Serial.println(ptr);
  ptr = strtok(NULL, ":");
  Serial.print("Second Token = ");Serial.println(ptr);
}