import os

SAVE_SEC = 192
SEC_SIZE = 131072
START_OFFSET = SAVE_SEC * SEC_SIZE
PKMN_SEC_SIZE = 4096

buf = b''

with open('save.sav', 'rb') as f:
    f.seek(START_OFFSET)
    for i in range(32):
        buf += f.read(4096)
        f.seek(SEC_SIZE - PKMN_SEC_SIZE, os.SEEK_CUR)

with open('extracted.sav', 'wb') as f:
    f.write(buf)
