Skip to content

Instantly share code, notes, and snippets.

View kjy00302's full-sized avatar
πŸ’­
I may be slow to respond.

kjy00302

πŸ’­
I may be slow to respond.
View GitHub Profile
@kjy00302
kjy00302 / heslunpack.py
Created February 17, 2025 16:48
HuneX heslnk unpacker for Nijigasaki VN Switch Demo
import struct
import lzss # install pylzss, not lzss (requires initial buffer value argument)
import os
def readuntilnull(f):
buf = b''
while True:
data = f.read(16)
offset = data.find(b'\0')
@kjy00302
kjy00302 / hpbunpack.py
Last active April 6, 2025 21:41
HuneX hph/hpb unpacker for Nijigasaki VN Switch Demo
import struct
from zlib import crc32
from pathlib import Path
import sys
# Based on https://github.com/YuriSizuku/GalgameReverse/blob/master/project/hunex/src/hunex_hpb.py
packname = sys.argv[1]
f = open(f'{packname}.hph', 'rb')
@kjy00302
kjy00302 / masterdata_repack.py
Created January 17, 2024 19:42
PoC masterdata unpacker/repacker for Yohane the Parhelion - NUMAZU in the MIRAGE
import msgpack
import glob
import json
import pathlib
out_file = open('masterdata_repacked', 'wb')
jsons = [pathlib.Path(i) for i in glob.glob("unpacked/*.json")]
header = {}
buf = bytearray()
@kjy00302
kjy00302 / yohanuma_decrypt.py
Last active January 17, 2024 03:00
PoC decrypter for Yohane the Parhelion - NUMAZU in the MIRAGE - Demo
import Crypto.Cipher.AES
import Crypto.Hash.SHA1
import sys
import pathlib
filepath = pathlib.Path(sys.argv[1])
decoded_path = 'decrypted_' + filepath.name
enc_file = open(filepath, 'rb')
@kjy00302
kjy00302 / aes-cryptojs.patch
Created June 7, 2023 02:11
aes.py CryptoJS-ify patch
--- aes.py 2023-06-06 15:43:19.437326158 +0900
+++ aes-cryptojs.py 2023-06-07 11:07:27.063221638 +0900
@@ -11,6 +11,8 @@
Although this is an exercise, the `encrypt` and `decrypt` functions should
provide reasonable security to encrypted messages.
+
+Modified to do some "invalid operations" like CryptoJS.
"""
@kjy00302
kjy00302 / crisub_conv.py
Created March 31, 2020 18:53
Sofdec2(USM) subtitle file converter
import struct
import sys
desc = """
Sofdec2(USM) subtitle file converter
crisub_conv.py filename
"""
if len(sys.argv) != 2:
print(desc)
@kjy00302
kjy00302 / sigong.aheui
Created October 9, 2017 05:42
si gong jo a(heui)
γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€μ‹œκ³΅μ‘°μ•„λΉ“
γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€μ‹œκ³΅μ‹œγ€€γ€€λΉκ³΅μ‹œ
γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€μ‹œκ³΅μ‹œγ€€γ€€γ€€γ€€γ€€γ€€μ‹œκ³΅μ‹œ
γ€€γ€€γ€€γ€€γ€€γ€€γ€€γ€€μ‹œκ³΅μ‹œγ€€γ€€γ€€μ‹œγ€€γ€€γ€€γ€€γ€€γ€€μ‹œκ³΅
γ€€γ€€γ€€γ€€γ€€γ€€μ‹œκ³΅μ‹œγ€€γ€€γ€€γ€€μ‹œκ³΅μ‘°μ•„μ”©κ³΅μ‘°μ•„γ€€γ€€μ‹œκ³΅
γ€€γ€€γ€€γ€€γ€€μ‹œκ³΅μ‘°μ•„μ‹œκ³΅γ€€μ‹œκ³΅μ‘°μ•„μ‹œλ½€μ‘°μ•„μ‹œμ™μ‹œγ€€μ‹œκ³΅μ‹œ
γ€€γ€€γ€€μ‹œκ³΅μ‹œγ€€μ‹œκ³΅μ‹œγ€€γ€€μ‹œκ³΅μ‘°μ•„μ‹œν¬μ‘°μ•„μ‹œμ†Œμ‘°μ•„γ€€γ€€μ‹œκ³΅μ‹œ
γ€€μ‹œκ³΅μ‹œγ€€μ‹œκ³΅μ‘°μ•„γ€€γ€€γ€€μ‹œκ³΅μ‘°μ•„μ‹œν† μ‘°μ•„μ‹œλ½€μ‘°μ•„μ‹œκ³΅γ€€μ‹œκ³΅μ‹œ
λΉ“κ³΅μ‹œγ€€γ€€μ‹œκ³΅μ‹œγ€€γ€€γ€€γ€€μ‹œκ³΅μ‘°λ‹€ν„λ˜μ‹Ήμƒ₯μ‹œλ„μ‘°μ•„μ‹œκ³΅μ‹œγ€€γ€€γ€€μ‹œκ³΅
λΉ“γ€€γ€€γ€€μ‹œκ³΅μ‘°μ•„γ€€γ€€γ€€μ‹œκ³΅μ‘°μ•„λ κ³΅λ˜μ•„μ‹œκ³΅μ‘°μ•„μ‹œκ³΅μ‘°μ•„γ€€γ€€γ€€γ€€μ‹œ
myloop? http://myloop.withsmart.com/myloop_introduction.php
β”Œβ”€β”€β”β”Œβ”€β”€β”0V 0V 0V 0Vβ”Œβ”€β”€β”€β”β”Œβ”€β”€β”€β”β”Œβ”€β”€β”€β”β”Œβ”€β”€β”€β”0V 0V 0V 0V 0V 0V 0V 0V 0V 09 13(SCK)
β”‚DCβ”‚β”‚0Vβ”‚5V 5V 5V 5Vβ”‚MA1β”‚β”‚MA2β”‚β”‚MB2β”‚β”‚MB1β”‚5V 5V 5V 5V 5V 5V 5V 5V 5V 05 12(MISO)
β””β”€β”€β”˜β””β”€β”€β”˜06 05 09 10β””β”€β”€β”€β”˜β””β”€β”€β”€β”˜β””β”€β”€β”€β”˜β””β”€β”€β”€β”˜A6 A7 08 04 07 02 A4 A5 10 06 11(MOSI) (RESET)
VCC - LeftButton - A6
VCC - RightButton - A7
?? - LinkLed - GND
RESET - ResetButton - GND
@kjy00302
kjy00302 / pyjack.py
Last active August 29, 2015 14:27
All work and no play makes Jack a dull boy.
#!/usr/bin/python
import StringIO, time, sys, random
#All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy. All work and no play makes Jack a dull boy.
boy=StringIO.StringIO("All work and no play makes Jack a dull boy.")
jack=0
work=0.05
dull=0.2