Unfortunately the stride collides with checksum [...snip] we will have to use the full (long) value and pass checksum as a parameter.
Then why make the checksum bits part of the stride in the first place? It doesn't need to be guessable because this part can be derived after the private key is known, so passing the checksum bits makes no sense in this context because it lets the program look for invalid checksums as if it were part of the private key.
The easy way to port Kangaroo to look for WIF values is to convert it into a private key hex, and since the public key and therefore base58 public address can be computed from the private key hex, you can mod it to pass a start and end WIF which are then turned into private keys. However you'll still need to directly pass the public key of the address you want to crack because hashing the public key to an address is irreversible.
True you could scan the blockchain for the public key corresponding to an address but this only works if there's a transaction associated with it.