I just added : printf("%d:%s \n",i,tmp); at line 575
for (int j = 0; j < nbLetter; j++) {
int mask = 1 << j;
if (mask&i) tmp[letterpos[j]] = toupper(letter[j]);
else tmp[letterpos[j]] = letter[j];
}
printf("%d:%s \n",i,tmp);
list.push_back(string(tmp));
It outputs correct combinations, note that the lookup size printed is the number of the 16bit hash entries of possible prefixes (not the total number of combination):
C:\C++\VanitySearch\x64\Release>VanitySearch.exe -c -stop 1abc
VanitySearch v1.17
0:1abc
1:1Abc
2:1aBc
3:1ABc
4:1abC
5:1AbC
6:1aBC
7:1ABC
Difficulty: 19627
Search: 1abc [Compressed, Case unsensitive] (Lookup size 6)
Start Thu Feb 6 13:16:48 2020
Base Key: B0384C0C93590167CF8AE3FD40E06F9065008F9DF2F2D305A21F84963467C3A
Number of CPU thread: 8
PubAddress: 1ABCE4631tuX4TCSqwRARpeJhouCkCHam5
Priv (WIF): p2pkh:L3eTmtQqjPZnBppJHi6L5c6jeLLu3yYaPQtXUFWg6tR8WbDfD4Gg
Priv (HEX): 0xBFC1EC9B163A2B5F10A1153490E222F8B8AEBAD2E0FEABACB5173CBDB6FC4C34
C:\C++\VanitySearch\x64\Release>VanitySearch.exe -c -stop 1abcd
VanitySearch v1.17
0:1abcd
1:1Abcd
2:1aBcd
3:1ABcd
4:1abCd
5:1AbCd
6:1aBCd
7:1ABCd
8:1abcD
9:1AbcD
10:1aBcD
11:1ABcD
12:1abCD
13:1AbCD
14:1aBCD
15:1ABCD
Difficulty: 569190
Search: 1abcd [Compressed, Case unsensitive] (Lookup size
Start Thu Feb 6 13:23:16 2020
Base Key: 15FC12001ECE83FC425FC81BB34F5457138A92020CFB26FF510A958AC689C474
Number of CPU thread: 8
PubAddress: 1AbcD2q4EHSgP6KBynmyycxCSa5jpKwMiG
Priv (WIF): p2pkh:L3zpLCR5HeN2gsJgd6CeEY3vQJGLCpFVMzYZqgZtaMTcHeEfRkxv
Priv (HEX): 0xCA3A8604599F8FAD61A651B812CB44224864F17F298AB49E92183F4196E43E06