D'abord, 4 chiffres hexadécimaux ne sont pas 4 octets. Puisque tous vos exemples montrent 4 chiffres hexadécimaux - 2 octets - je suppose que vous voulez dire 2 octets.
Il n'y a que 65 536 valeurs de hachage distinctes, voici ce que vous faites.
Exécute la fonction de hachage pour toutes les 65.536 valeurs de 0000 à FFFF. Tabuler les résultats. Cette table est la fonction. Il mappe la valeur d'entrée à la valeur de sortie.
Bien que boiteux, c'est toujours correct, ce n'est pas terriblement gros (65K octets), et c'est vraiment rapide après avoir fait le calcul.
Vous ne pouvez pas effectuer de reverse engineering de fonctions de hachage très facilement. Les bons sont des machines d'état sophistiquées qui utilisent tous les bits d'entrée de manière «équitable», de sorte que les valeurs de sortie sont radicalement différentes pour les valeurs d'entrée qui ne diffèrent que de quelques bits.
Si vous comparez 0000 avec 0001, 0002, 0004, 0008, 0010, 0020, 0040, 0080, 0100, 0200, 0400, 0800, 1000, 2000, 4000 et 8000, vous pourriez être en mesure de comprendre ce que chaque peu contribue au hachage. Mais j'en doute.
Vos chaînes d'entrée ressemblent plus à des chaînes de 2 octets, c'est-à-dire 16 bits. Si ce n'est pas le cas, vous devez les écrire avec des espaces et (éventuellement) les zéros manquants, par ex. 0C 0E 01 0E -> 03. – unwind
Avez-vous seulement des données de fil, aucun exécutable qui peut être rétrocontrôlé? –