Skip to content

Instantly share code, notes, and snippets.

@Aetopia
Aetopia / README.md
Last active November 3, 2024 11:47
How to verify if a valid license exists for a given Microsoft Store app on a given device.

This code sample shows one can verify if a license exists for a given Microsoft Store app.

public static async Task<ReadOnlyDictionary<string, bool>> VerifyAsync(params string[] productIds)
{
    using StringContent content = new($"{{\"IdType\":\"ProductId\",\"ProductIds\":[{string.Join(",", productIds.Select(_ => $"\"{_}\""))}]}}", Encoding.UTF8, "application/json");
    productIds = (await Client.ParseAsync(RequestUris.Item1, content).ConfigureAwait(false)).Descendants("ProductId").Select(_ => _.Value).ToArray();

    using var stream = await Client.GetStreamAsync(string.Format(RequestUris.Item2, string.Join(",", productIds))).ConfigureAwait(false); var source = stream.Parse();
    var result = await LicenseManager.GetSatisfactionInfosAsync(source.Ids("ContentIds"), source.Ids("KeyIds")).AsTask().ConfigureAwait(false);
@Aetopia
Aetopia / UWP.Loader.c
Created September 27, 2024 05:45
UWP Loader: A stub dynamic link library to load other dynamic link libraries into a UWP app in one go.
#define _MINAPPMODEL_H_
#include <initguid.h>
#include <windows.h>
#include <windows.data.json.h>
#include <roapi.h>
#include <winstring.h>
#include <appmodel.h>
DWORD ThreadProc(LPVOID lpParameter)
{
@Aetopia
Aetopia / Benchmarks.cs
Created September 1, 2024 17:34
System.Box
using System;
using BenchmarkDotNet.Attributes;
[MemoryDiagnoser]
public class Benchmarks
{
object @object;
Box<int> box;
namespace System.Runtime.Serialization.Json;
using System;
using System.Xml;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using System.Collections;
using System.Collections.Generic;
public sealed class JsonNode :IEnumerable<JsonNode>
@Aetopia
Aetopia / Json.cs
Created August 25, 2024 12:04
A simple wrapper class that wraps all .NET Framework JSON serializers.
#pragma warning disable IDE0130
namespace System.Runtime.Serialization.Json;
#pragma warning restore IDE0130
using System;
using System.IO;
using System.Xml;
using System.Text;
using System.Linq;
using System.Xml.Linq;
@Aetopia
Aetopia / Particle-Disabler.ps1
Last active August 17, 2024 15:01
Particle Disabler: A dynamically generated resource pack that removes all vanilla particles for Minecraft: Bedrock Edition.
Add-Type -AssemblyName System.IO.Compression.FileSystem
function _($Path) { return [System.Text.RegularExpressions.Regex]::Replace([System.IO.File]::ReadAllText($Path), "//.*?$|/\*[\s\S]*?\*/", "", [System.Text.RegularExpressions.RegexOptions]::Multiline) | ConvertFrom-Json }
if ($Package = (Get-AppxPackage | Where-Object { $_.PackageFamilyName -eq "Microsoft.MinecraftUWP_8wekyb3d8bbwe" }) ) {
Remove-Item "$ENV:TEMP\Particle Disabler" -Recurse -Force -ErrorAction SilentlyContinue
[System.IO.Directory]::CreateDirectory("$ENV:TEMP\Particle Disabler\particles") | Out-Null
$MaxEngineVersion = [System.Version]::new()
(Get-ChildItem "$($Package.InstallLocation)\data\resource_packs\*\manifest.json" -Recurse).FullName | ForEach-Object {
@Aetopia
Aetopia / WinMain.c
Created August 9, 2024 06:09
COM Inheritance in C Win32.
#include <initguid.h>
#include <windows.h>
#include <shobjidl.h>
void $(const char *format, ...)
{
va_list ArgList = NULL;
va_start(ArgList, format);
CHAR szOutput[1025] = {};
WriteFile(GetStdHandle(STD_OUTPUT_HANDLE), szOutput, wvsprintfA(szOutput, format, ArgList), NULL, NULL);
@Aetopia
Aetopia / PLMBypass.cmd
Created June 18, 2024 06:15
Bypass Process Lifecycle Manager.
<# ::
@echo off
powershell -c "iex (gc -Raw '%~f0')"
goto :eof
#>
$Names = @()
Add-Type -TypeDefinition @"
using System;
using System.Runtime.InteropServices;
public static class PackageDebugSettings
@Aetopia
Aetopia / PrintFormatA.c
Created April 2, 2024 09:22
CRTless printf implementation Win32
#define printf PrintFormatA
DWORD PrintFormatA(LPCSTR lpFormat, ...)
{
va_list ArgList = NULL;
va_start(ArgList, lpFormat);
CHAR szOutput[1024] = {};
DWORD nNumberOfBytesToWrite = wvsprintfA(szOutput, lpFormat, ArgList);
WriteFile(GetStdHandle(STD_OUTPUT_HANDLE), szOutput, nNumberOfBytesToWrite, NULL, NULL);
va_end(ArgList);
return nNumberOfBytesToWrite;
@Aetopia
Aetopia / Build.cmd
Created March 15, 2024 10:39
NoSteamWebHelper
@echo off
cd "%~dp0"
gcc -municode -mwindows -nostdlib -Os -s WinMain.c -lUser32 -lKernel32 -lShell32 -o NoSteamWebHelper.exe
upx --best --ultra-brute NoSteamWebHelper.exe>nul 2>&1