- Upgrade to Enterprise edition of Windows 10/11 if you are running Home or Pro.
- You can do this through the Change Edition option in the Extras menu in MAS.
- Open the Group Policy Editor. Search for "Edit Group Policy" in search or run
gpedit.msc.
gpedit.msc.Important
Working on the latest supported Windows versions. Run Windows Update before following this guide.
1. Open Powershell > RUN AS ADMIN
2. Paste in irm https://gist.github.com/ave9858/c3451d9f452389ac7607c99d45edecc6/raw/UninstallEdge.ps1 | iex and press enter
3. Microsoft Edge will be completely uninstalled.
| @(set "0=%~f0"^)#) & powershell -nop -c iex([io.file]::ReadAllText($env:0)) & exit /b | |
| #:: just copy-paste into powershell - it's a standalone hybrid script | |
| sp 'HKCU:\Volatile Environment' 'Edge_Removal' @' | |
| $also_remove_webview = 1 | |
| ## why also remove webview? because it is 2 copies of edge, not a slimmed down CEF, and is driving bloated web apps | |
| $also_remove_widgets = 1 | |
| ## why also remove widgets? because it is a webview glorified ad portal on msn and bing news cathering to stupid people | |
| $also_remove_xsocial = 1 | |
| ## why also remove xsocial? because it starts webview setup every boot - xbox gamebar will still work without the social crap |
Sometimes there's some inconsistency between local types and structs view.
Typically, you can see the type in the "Structures" view are zero-lengthed, which should normally be the same size as local type's one.
When this happens, you'll not be able to rename the structure fields in HexRay Decompiler's view, and both hotkey N and right-clicking the item won't show the rename popup.
After reverse engineering the hexx64.dll, I found that IDA tries to do the following things:
| @echo off | |
| REM Usage: dll2lib [32|64] some-file.dll | |
| REM | |
| REM Generates some-file.lib from some-file.dll, making an intermediate | |
| REM some-file.def from the results of dumpbin /exports some-file.dll. | |
| REM | |
| REM Requires 'dumpbin' and 'lib' in PATH - run from VS developer prompt. | |
| REM | |
| REM Script inspired by http://stackoverflow.com/questions/9946322/how-to-generate-an-import-library-lib-file-from-a-dll |
| #pragma once | |
| #include <stdint.h> | |
| //fnv1a 32 and 64 bit hash functions | |
| // key is the data to hash, len is the size of the data (or how much of it to hash against) | |
| // code license: public domain or equivalent | |
| // post: https://notes.underscorediscovery.com/constexpr-fnv1a/ | |
| inline const uint32_t hash_32_fnv1a(const void* key, const uint32_t len) { |
| ssh-keygen -t rsa -b 4096 -m PEM -f jwtRS256.key | |
| # Don't add passphrase | |
| openssl rsa -in jwtRS256.key -pubout -outform PEM -out jwtRS256.key.pub | |
| cat jwtRS256.key | |
| cat jwtRS256.key.pub |
| /* | |
| Copyright (c) 2020 Chan Jer Shyan | |
| Permission is hereby granted, free of charge, to any person obtaining a copy | |
| of this software and associated documentation files (the "Software"), to deal | |
| in the Software without restriction, including without limitation the rights | |
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
| copies of the Software, and to permit persons to whom the Software is | |
| furnished to do so, subject to the following conditions: |
| #include <cstdint> | |
| namespace detail | |
| { | |
| // FNV-1a 32bit hashing algorithm. | |
| constexpr std::uint32_t fnv1a_32(char const* s, std::size_t count) | |
| { | |
| return ((count ? fnv1a_32(s, count - 1) : 2166136261u) ^ s[count]) * 16777619u; | |
| } | |
| } // namespace detail |