github.com/Mrs4s/MiraiGo@v0.0.0-20240226124653-54bdd873e3fe/internal/tlv/t16.go (about)

     1  package tlv
     2  
     3  import "github.com/Mrs4s/MiraiGo/binary"
     4  
     5  func T16(ssoVersion, appId, subAppId uint32, guid, apkId, apkVersionName, apkSign []byte) []byte {
     6  	return binary.NewWriterF(func(w *binary.Writer) {
     7  		w.WriteUInt16(0x16)
     8  		pos := w.FillUInt16()
     9  		w.WriteUInt32(ssoVersion)
    10  		w.WriteUInt32(appId)
    11  		w.WriteUInt32(subAppId)
    12  		w.Write(guid)
    13  		w.WriteBytesShort(apkId)
    14  		w.WriteBytesShort(apkVersionName)
    15  		w.WriteBytesShort(apkSign)
    16  		w.WriteUInt16At(pos, uint16(w.Len()-4))
    17  	})
    18  }