lets think of a kind of "matched" decoder
we have the rough structure for 1 found user:
byte 1 or 0 //always beetween users, has to be replaced by dw 1 later
string, byte 0 //filename + 0
bytearray [140] //maybe its 139 or 142
--- start of main block
dw nparms //doubleword number of parameters
loop nparms // repeated nparms
dw ptype1 // doubleword parametertype
dw plength // doubleword parameterlength
bytearray [plength] //parameter
end loop
bytearray [12] //unknown parms 12+-1
string downloadpath + byte 0 //filename downloadpath +0
bytearray [29] //unknown parms
string "KAZAAxxyyyy" //Kazaastring
EOF //end of file
just write a decoder or statemachine that resembles this structure,
then let it loop with an increasing offset from the
end of file, if it gets ready exactly with EOF -
bingo
.
at least you can try
indy