JSFiddle - React, Tailwind, and code Playground

by Tgwizman

JavaScript

function badHash(data) {
	while (data.length < 16) data += data;

	var output = '',
		numLine = '',
		tn1, tn2;

	for (var i=0; i<data.length; i++) {
		switch (i%4) {
			case 0:
				tn1 = data.charCodeAt((i*1)%data.length)
					* data.charCodeAt((i*25)%data.length)
					* data.charCodeAt((i*9)%data.length)
					* data.charCodeAt((i*17)%data.length);
				tn2 = data.charCodeAt((i*11)%data.length)
					* data.charCodeAt((i*2)%data.length)
					* data.charCodeAt((i*18)%data.length)
					* data.charCodeAt((i*26)%data.length);
				break;
			case 1:
				tn1 += data.charCodeAt((i*19)%data.length)
					* data.charCodeAt((i*10)%data.length)
					* data.charCodeAt((i*3)%data.length)
					* data.charCodeAt((i*27)%data.length);
				tn2 += data.charCodeAt((i*28)%data.length)
					* data.charCodeAt((i*20)%data.length)
					* data.charCodeAt((i*12)%data.length)
					* data.charCodeAt((i*4)%data.length);
				break;
			case 2:
				tn1 += data.charCodeAt((i*5)%data.length)
					* data.charCodeAt((i*21)%data.length)
					* data.charCodeAt((i*29)%data.length)
					* data.charCodeAt((i*13)%data.length);
				tn2 += data.charCodeAt((i*14)%data.length)
					* data.charCodeAt((i*6)%data.length)
					* data.charCodeAt((i*22)%data.length)
					* data.charCodeAt((i*30)%data.length);
				break;
			case 3:
				tn1 += data.charCodeAt((i*31)%data.length)
					* data.charCodeAt((i*15)%data.length)
					* data.charCodeAt((i*7)%data.length)
					* data.charCodeAt((i*23)%data.length);
				tn2 += data.charCodeAt((i*32)%data.length)
					* data.charCodeAt((i*24)%data.length)
					* data.charCodeAt((i*16)%data.length)
					* data.charCodeAt((i*8)%data.length);
				tn1 = Math.round(tn1/32);
				tn2 = Math.round(tn2/32);
				numLine += (tn1 + '' + tn2).toString(16);
		}
	}

	while (numLine.length > 1) {
		if (parseInt(numLine.slice(0,3)).toString(16) < 256) {
			output += parseInt(numLine.slice(0, 3)).toString(16);
			numLine = numLine.slice(3, numLine.length);
		} else {
			output +=...