// Patch 4: Force the ban duration comparison to always fail (within sub_2741C8)
// Original: CMP X1, #0x7F ; B.LS loc_2741D8
// Patching to CMP X1, X1 ; B.LS (which is always false) prevents ban duration checks.
MemoryPatch::createWithHex("libanogs.so", 0x2741C8, "3F 00 00 EB 68 00 00 54").Modify(); // CMP X1, X1; B.NE// 1 Day/7 Day/10 Year Ban Check Bypass
// Patch 5: Force sub_2741E8 to always return 0 (success/no ban)
// This function is called to apply a ban. Patching it to return 0 stops the ban from being written.
MemoryPatch::createWithHex("libanogs.so", 0x2741E8, "C0 03 5F D6").Modify(); // RET// Ban Application Function
// Original: CMP X1, #0x7F ; B.LS loc_2741D8
// Patching to CMP X1, X1 ; B.LS (which is always false) prevents ban duration checks.
MemoryPatch::createWithHex("libanogs.so", 0x2741C8, "3F 00 00 EB 68 00 00 54").Modify(); // CMP X1, X1; B.NE// 1 Day/7 Day/10 Year Ban Check Bypass
// Patch 5: Force sub_2741E8 to always return 0 (success/no ban)
// This function is called to apply a ban. Patching it to return 0 stops the ban from being written.
MemoryPatch::createWithHex("libanogs.so", 0x2741E8, "C0 03 5F D6").Modify(); // RET// Ban Application Function