asmodean's reverse engineering page

news and updates / index of tools / message board

2007/11/01 / exkifint

These guys use some interesting compression techniques. I recognize the Elias gamma coding, but is the fancy delta filtering an existing algorithm... ?

Merging the fragments from Windmill's games is really annoying. I have a script to do it ... I may add it to this package later.

Updated: I added merge_windmill to merge the event images (use -large if you want the 1600x1200 variety). It seems to work ok, but I didn't try it on everything. If you use it, let me know how it works. 全部試してなかったから、merge_windmillを使ったら連絡してください。
Updated: I'm not sure why, but suddenly these guys felt the need for a variety of encryption. Once again we see Blowfish encryption, this time with weak pseudo-random keys being generated via the Mersenne Twister algorithm. A little home-grown obfuscation on top of that was for extra credit I guess. ;)

I think exkifint will still work for original unencrypted archives; let me know if it's broken.

Updated: Now supports a slightly different TOC variation (v2) for Campanella. In order to decrypt properly you must provide the game_id; read the usage. 復号にはgame_idが必要です。usageを読んで。
Updated: hgx2bmp now supports two different varieties of HG-3 data.
Updated: hgx2bmp now extracts multiple composite images from HG-3.
Updated: Added merge_windmill_chr to merge the character images.
Updated: hgx2bmp now extracts a few more frames from broken(?) composite HG-3 images. merge_windmill_chr now handles broken CharList.set sets gracefully.
Updated: exkifint now supports archives larger than 2GB.
Updated: exkifint can now find v_code information in executables.
Updated: Added exzt for the *.zt archives in グリザイアの果実.
Updated: merge_windmill now handles some more bugs. merge_windmill_chr_v2_kamikaze supports カミカゼ☆エクスプローラー (sortof? it's messy and I didn't try very hard...)

I wrote a thing to scan the cst scripts for chr variations, which works but I'm not sure it's actually correct...

Updated: Update merge_windmill to work around a bug(?) in シークレットゲーム CODE Revise's list_cg.dat.

Note: For いきなりあなたに恋している, use exkifint_v2 with game id "MK-EC0ZZAR1".

Updated: Added merge_chr_from_cst2 for 真夏の夜の雪物語. I accidently deleted the source for the original script scanner I wrote, so I'm not sure if this will work for older games.

exkifint.zip

Contents:
// exkifint.cpp, v1.2 2010/10/30
// This tool extracts data from Windmill's encrypted KIF (*.int) archives.

// hgx2bmp.cpp, v1.03 2010/05/24
// This tool decompresses Windmill's HG-3 (*.hg3) and HG-2 (*.hg2) images.

// merge_windmill.cpp, v1.04 2011/05/27
// This tool merges event images from some of Windmill's games.

// merge_windmill_chr.cpp, v1.03 2011/05/27
// This tool merges character images from some of Windmill's games.

// exzt.cpp, v1.02 2011/02/25
// This tool extract *.zt archives used by グリザイアの果実.

// merge_chr_from_cst2.cpp, v1.0 2011/12/23
// This tool merges character images from 真夏の夜の雪物語.
Known to work with:

2005/08/26   ういんどみる   「ちょっと素直にどんぶり感情」
2005/10/21   ういんどみる   「はぴねす!」
2006/07/28   ういんどみるOasis   「はぴねす!りらっくす」
2007/10/26   ういんどみる   「ツナガル★バングル」
2008/07/18   うぃんどみる   「ツナバン▽らぶみくす」
2009/01/30   ういんどみるOasis   「祝福のカンパネラ」
2009/01/30   クロシェットlumie   「スズノネセブン!」
2009/11/27   クロシェットlumie   「スズノネセブン!-Sweet Lovers' Concerto-」
2010/04/23   フロントウイング   「魔界天使ジブリール4」
2010/04/29   ういんどみる   「色に出でにけり わが恋は」
2010/05/28   クロシェット   「あまつみそらに!」
2010/05/28   FLAT   「うたてめぐり」
2010/10/29   ういんどみるOasis   「祝祭のカンパネラ!」
2011/02/25   フロントウイング   「グリザイアの果実」
2011/03/31   FLAT   「シークレットゲーム CODE Revise」
2011/05/27   クロシェット   「カミカゼ☆エクスプローラー!」
2011/06/24   ういんどみる   「Hyper→Highspeed→Genius -ハイパー ハイスピード ジーニアス-」
2011/07/29   枕   「いきなりあなたに恋している」
2011/07/29   フロントウイング   「戦国天使ジブリール」
2011/09/03   NANACAN   「妹調教日記〜こんなツンデレが俺の妹なわけない!〜」
2011/12/22   EX-ONE   「真夏の夜の雪物語 -MIDSUMMER SNOW NIGHT-」

*.int, *.zt; *.hg3 (sig=KIF, none; HG-3)
image.int; *.hg3 (sig=KIF; HG-3)


All source © 2006-2012, asmodean. Don't copy, learn.