2nd EDIT:
I decided to abandon this project. Basically can't get Oclvanitygen to work in Windows with sequential search and the speeds seem very slow when using a 1x riser. It would take too long to find the 51st key and 52nd and 53rd would take months.
I had a look at the vanitygen code the last couple of day's to see how to make the sequential search.
I just needed a minor change to have the CPU code to run from EC_key=0x01.
Using the online generator at gobittest(dot)appspot(dot)com/VanityAll a key can be made to generate an offset or start code. (for the -P split-key function)
There are still two issue that need to be solved
1) when starting from 1, there are parts of the code that perform an EC_POINT_ADD on two equal value's, here a EC_POINT_DOUBLE is needed.
2) when running multiple threads the old code uses a random key generation to make sure the threads used unique values, currently all my threads run the same data.
1) Is no issue when an offset key is used
2) I just execute the code in single thread, and run the executable #cpu times with another offset start code.
Since I don't have a GPU system I don't know if the change in that code there is just as hard/easy.
I was kind of curious what code changes you made to get it to run.
Im very bad at programming, all I did was add
const BN_ULONG rekey_max = 10000000000000000;
BIGNUM *bnprivkey, *bnpubkey;
BIGNUM start;
BIGNUM *res;
BN_init(&start);
int keylen = 32;
res = &start;
BN_hex2bn(&res,"6000000000000");
// pkey = EC_KEY_new_by_curve_name(NID_secp256k1);
pgroup = EC_KEY_get0_group(pkey);
pgen = EC_POINT_new(pgroup);
EC_KEY_set_private_key(pkey,res);
if (!EC_POINT_mul(pgroup, pgen, res, NULL, NULL, vxcp->vxc_bnctx));
printf("ERROR AT EC POINT MUL");
EC_KEY_set_public_key(pkey, pgen);
rekey_at = 999999999999999;