An AoB is defined as a "Array of Bytes" such as "01 02 03 04 05", except that it allows "magic" bytes (aka wildcards "??"). For example, if you were looking for a function that contained "01 02 03 00 05", but also "01 02 03 69 05", then you would use the AoB "01 02 03 ?? 05" to find it. Once you make an AoB that works for one version, you compare it against a handful of others to make it as universal as you can. Then, this AoB helps you find a function or location in the client on any version where the AoB matches.
Also @
xMashiro I sure hope in 2019 with all of the available client editing resources that people don't do that anymore.