FUNCTION checkHV18teaser(FLAG VARCHAR2) RETURN NUMBER IS A VARCHAR2(4); B NUMBER(10); C NUMBER(10); H VARCHAR(40); BEGIN A := SUBSTR(FLAG,1,4); IF NOT (A = 'HV18') THEN RETURN 0; END IF; B := TO_NUMBER(SUBSTR(FLAG,6,2)); C := TO_NUMBER(SUBSTR(FLAG,8,2)); IF NOT (((B * C) = 6497) AND (B < C)) THEN RETURN 0; END IF; A := SUBSTR(FLAG,11,4); SELECT STANDARD_HASH(A, 'MD5') INTO H FROM DUAL; IF NOT (H = 'CF945B5A36D1D3E68FFF78829CC8DBF6') THEN RETURN 0; END IF; IF NOT ((UTL_RAW.CAST_TO_VARCHAR2( UTL_RAW.BIT_XOR ( UTL_RAW.CAST_TO_RAW(SUBSTR(FLAG,16,4)), UTL_RAW.CAST_TO_RAW(SUBSTR(FLAG,21,4))) ) = 'zvru') AND (TO_NUMBER(SUBSTR(FLAG,21,4)) = SQRT(8814961))) THEN RETURN 0; END IF; IF NOT ( UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(UTL_RAW.CAST_TO_RAW(SUBSTR(FLAG,26,4)))) = 'RjBtMA==') THEN RETURN 0; END IF; DBMS_OUTPUT.PUT_LINE(A); RETURN 1; END;