Avatar
Gao
  • C
  • C#

see more about me on my Github profile.


DLL Hijacking via zlib DLL Proxy

DLL hijacking involves manipulating a program to load a DLL that contains the desired code. We will use a simple technique here for ilustration: DLL...


Flash crDroid ROM for Redmi Note 7

You need to have a Xiaomi account that has been given permission for unlocking device. Download MiFlash from https://www.miui.com/unlock/index.html...


Probability

Expectations The average value of some function $f(x)$ under a probability distribution $p(x)$ is called the expectation of $f(x)$. For a discrete...


RaspberryPi Odoo

Configure Prestashop Install Docker Engine Install Docker Compose Since Docker Compose stable release doesn't provide binary for armv7, you need to...


Remote Access Via TightVNC To Windows Machine

Install VNC Server on Windows Machine Download TightVNC which is free VNC server that support Windows 11 and then install TightVNC on Windows...


How to Create a Windows7 Vagrant Base Box

How to Create a Windows 7 Vagrant Base Box? Introduction Since Vagrant 1.6 release, Vagrant add support for Windows VMs. We will go through the...


Diagonalization

What is diagonalization? For a $n \times n$ matrix $A$ the diagonalization is the process to find a diagonal matrix $D$ and a invertible $n \times...


The Process Behind Compiling and Executing C Code

Introduction Compiling and executing a C program is a multi-stage process. In this post I’ll walk through each stages of compiling and executing the...


Java Concurrent Programming

Introduction At the beginning, a program ran from start to finish, it had access to all resources on the system. Nowadays with operating systems we...


Client-Centric Consistency Models

Eventual consistent data stores work fine as long as clients always access the same replica. However, problems arise when different replicas are...