Button enter = findViewById(R.id.btn_enter); EditText pinInput = findViewById(R.id.pin_input); enter.setOnClickListener(v -> { String pin = pinInput.getText().toString(); if (checkPin(pin)) { Toast.makeText(this, "Graveyard opened! Flag: CTF{" + pin + "}", Toast.LENGTH_LONG).show(); } else { Toast.makeText(this, "Rest in peace... wrong PIN.", Toast.LENGTH_SHORT).show(); } }); Found in the same class:

But 0xDEADBEEF is 32-bit, while pinInt and timeInt are 6-digit max (e.g., 123456). That XOR condition would unless something else is going on. 4. Finding the Real Logic Look closer — there’s a native library loaded:

return (pinInt ^ timeInt) == 0xDEADBEEF; // Wait — this is suspicious }