Time Graveyard Pin | Apk
In that case: pin = 1337 ^ 0xCA7 = 1337 ^ 3243 = 0x0539 ^ 0x0CA7 = 0x099E = 2462 → PIN 002462 , sum=14 (still fails sum). So sum check must be ignored.
bool verifyPin(JNIEnv *env, jobject thiz, jstring pin, jint timeInt) { const char *pinStr = (*env)->GetStringUTFChars(env, pin, NULL); int pinInt = atoi(pinStr); int computed = (pinInt ^ timeInt) & 0xFFFF; // Note: only low 16 bits // Graveyard magic constant int expected = 0xCA7; apk time graveyard pin
Open output/sources/com/ctf/graveyardpin/ – the main activity is MainActivity.java . In that case: pin = 1337 ^ 0xCA7
CTF{0420CA7} ? No, PIN is numeric only.
(pin ^ time) & 0xFFFF == 0xCA7