diff --git a/ArcFormats/Cmvs/CmvsMD5.cs b/ArcFormats/Cmvs/CmvsMD5.cs index dc07dbf7..7042ec40 100644 --- a/ArcFormats/Cmvs/CmvsMD5.cs +++ b/ArcFormats/Cmvs/CmvsMD5.cs @@ -2,7 +2,7 @@ //! \date Mon Nov 30 13:29:27 2015 //! \brief Cmvs engine MD5 update algorithm. // -// Copyright (C) 2015 by morkt +// Copyright (C) 2015-2016 by morkt // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to @@ -27,7 +27,7 @@ using GameRes.Utility; namespace GameRes.Formats.Cmvs { - public enum Md5Variant { A, B, Chrono, Memoria } + public enum Md5Variant { A, B, Chrono, Memoria, Natsu } public abstract class MD5 : Cryptography.MD5Base { @@ -44,6 +44,7 @@ namespace GameRes.Formats.Cmvs case Md5Variant.B: return new Md5VariantB(); case Md5Variant.Chrono: return new Md5Chrono(); case Md5Variant.Memoria: return new Md5Memoria(); + case Md5Variant.Natsu: return new Md5Natsu(); default: throw new System.ArgumentException ("Unknown MD5 variant", "variant"); } } @@ -131,4 +132,23 @@ namespace GameRes.Formats.Cmvs data[3] = m_state[0]; } } + + public class Md5Natsu : MD5 + { + protected override void InitState () + { + m_state[0] = 0x63FE9A7C; + m_state[1] = 0xC2B93E98; + m_state[2] = 0xEF91BA5C; + m_state[3] = 0x72C9A82E; + } + + protected override void SetResult (uint[] data) + { + data[0] = m_state[1] + 0x45876329; + data[1] = m_state[2] ^ 0x54F36D6C; + data[2] = m_state[3] + 0x4387A749; + data[3] = m_state[0] ^ 0xE3F9A742; + } + } } diff --git a/supported.html b/supported.html index 37e15fb2..24dc174a 100644 --- a/supported.html +++ b/supported.html @@ -465,6 +465,7 @@ Oto☆Puri
Prawf Clwyd
Rakuen no Rukia ~Blood Moon Rising~
Samayou Mitama ni Yasuragi no Toki wo
+School Five ~Itsutsu no Himitsu no Monogatari~
Time Trouble ~Marie ni Kubikkake~
*.dat-NoAil @@ -881,6 +882,7 @@ Chrono Clock
Hapymaher
Haruiro Ouse
Memoria
+Natsu ni Kanaderu Bokura no Uta
*.pb3PB3BNo *.g2
*.stx-NoGLib2 @@ -1086,8 +1088,9 @@ Kuraibito
Natsu Doki! Harem
Naze ka Kanojo ga Boku ni Ecchi o Sematte Kuru Ken
Onna Kyoushi Suzune
-Oshioki ~Gakuen Reijou Kousei Keikaku~
Ore Maou! ~Kudake Chitta Tamashii
+Oshioki ~Gakuen Reijou Kousei Keikaku~
+Ouma no Shoku ~Sei ni Tsukaeshi Yami no Guuzou~
Volley Coaching!
Zoku Etsuraku no Tane
@@ -1177,6 +1180,7 @@ Lost Child
*.esdESDNo *.pakNEKOPACK4ANoNekoSDK In Vitro Shoujo -Aragaishi Junshin Naru Shoujo-
+Shirudaku Settai Okawari Ippaime
*.pcfPackCodeNoSymphony Tiara