2024-09-03 17:53:16 -07:00

552 lines
13 KiB
Python

import argparse
import time
def verify(ctx: str) -> bool:
result = 0
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[0]) > 127: # 0
result = result | 0x26
if ord(ctx[0]) & 0x40 != 0: # 0
result = result | 0x26
if ord(ctx[0]) & 0x20 == 0: # 1
result = result | 0x27
if ord(ctx[0]) & 0x10 == 0: # 1
result = result | 0x26
if ord(ctx[0]) & 8 != 0: # 0
result = result | 4
if ord(ctx[0]) & 4 == 0: # 1
result = result | 0x11
if ord(ctx[0]) & 2 == 0: # 1
result = result | 5
if ord(ctx[0]) & 1 != 0: # 0
result = result | 0x22
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[1]) > 127: # 0
result = result | 2
if ord(ctx[1]) & 0x40 != 0: # 0
result = result | 2
if ord(ctx[1]) & 0x20 == 0: # 1
result = result | 0x25
if ord(ctx[1]) & 0x10 == 0: # 1
result = result | 0x12
if ord(ctx[1]) & 8 != 0: # 0
result = result | 0x27
if ord(ctx[1]) & 4 == 0: # 1
result = result | 0x1C
if ord(ctx[1]) & 2 == 0: # 1
result = result | 9
if ord(ctx[1]) & 1 == 0: # 1
result = result | 0x11
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[2]) > 127: # 0
result = result | 0x11
if ord(ctx[2]) & 0x40 == 0: # 1
result = result | 0x15
if ord(ctx[2]) & 0x20 == 0: # 1
result = result | 0x11
if ord(ctx[2]) & 0x10 != 0: # 0
result = result | 0xD
if ord(ctx[2]) & 8 == 0: # 1
result = result | 0x29
if ord(ctx[2]) & 4 != 0: # 0
result = result | 0x23
if ord(ctx[2]) & 2 == 0: # 1
result = result | 0xD
if ord(ctx[2]) & 1 == 0: # 1
result = result | 0x1C
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[3]) > 127: # 0
result = result | 0x1E
if ord(ctx[3]) & 0x40 == 0: # 1
result = result | 0x28
if ord(ctx[3]) & 0x20 != 0: # 0
result = result | 0x28
if ord(ctx[3]) & 0x10 == 0: # 1
result = result | 0x14
if ord(ctx[3]) & 8 != 0: # 0
result = result | 0x1F
if ord(ctx[3]) & 4 == 0: # 1
result = result | 0x28
if ord(ctx[3]) & 2 == 0: # 1
result = result | 0x13
if ord(ctx[3]) & 1 == 0: # 1
result = result | 0x2C
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[4]) > 127: # 0
result = result | 0x19
if ord(ctx[4]) & 0x40 != 0: # 0
result = result | 0x11
if ord(ctx[4]) & 0x20 == 0: # 1
result = result | 0x1F
if ord(ctx[4]) & 0x10 == 0: # 1
result = result | 8
if ord(ctx[4]) & 8 != 0: # 0
result = result | 0x2D
if ord(ctx[4]) & 4 == 0: # 1
result = result | 0x1C
if ord(ctx[4]) & 2 == 0: # 1
result = result | 8
if ord(ctx[4]) & 1 != 0: # 0
result = result | 0x10
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[5]) > 127: # 0
result = result | 9
if ord(ctx[5]) & 0x40 == 0: # 1
result = result | 0x19
if ord(ctx[5]) & 0x20 != 0: # 0
result = result | 0x1C
if ord(ctx[5]) & 0x10 == 0: # 1
result = result | 0x17
if ord(ctx[5]) & 8 == 0: # 1
result = result | 0x27
if ord(ctx[5]) & 4 != 0: # 0
result = result | 0x18
if ord(ctx[5]) & 2 != 0: # 0
result = result | 0x2D
if ord(ctx[5]) & 1 == 0: # 1
result = result | 0x1A
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[6]) > 127: # 0
result = result | 0x10
if ord(ctx[6]) & 0x40 == 0: # 1
result = result | 7
if ord(ctx[6]) & 0x20 == 0: # 1
result = result | 0x2B
if ord(ctx[6]) & 0x10 != 0: # 0
result = result | 0x24
if ord(ctx[6]) & 8 == 0: # 1
result = result | 0x15
if ord(ctx[6]) & 4 == 0: # 1
result = result | 0xF
if ord(ctx[6]) & 2 == 0: # 1
result = result | 9
if ord(ctx[6]) & 1 != 0: # 0
result = result | 1
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[7]) > 127: # 0
result = result | 0x27
if ord(ctx[7]) & 0x40 == 0: # 1
result = result | 0xC
if ord(ctx[7]) & 0x20 != 0: # 0
result = result | 4
if ord(ctx[7]) & 0x10 != 0: # 0
result = result | 0x1A
if ord(ctx[7]) & 8 == 0: # 1
result = result | 0x14
if ord(ctx[7]) & 4 != 0: # 0
result = result | 0x1A
if ord(ctx[7]) & 2 == 0: # 1
result = result | 8
if ord(ctx[7]) & 1 == 0: # 1
result = result | 9
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[8]) > 127: # 0
result = result | 0x2C
if ord(ctx[8]) & 0x40 == 0: # 1
result = result | 0x16
if ord(ctx[8]) & 0x20 == 0: # 1
result = result | 0x22
if ord(ctx[8]) & 0x10 == 0: # 1
result = result | 0x28
if ord(ctx[8]) & 8 != 0: # 0
result = result | 0x22
if ord(ctx[8]) & 4 == 0: # 1
result = result | 9
if ord(ctx[8]) & 2 == 0: # 1
result = result | 0x17
if ord(ctx[8]) & 1 != 0: # 0
result = result | 0x22
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[9]) > 127: # 0
result = result | 0x19
if ord(ctx[9]) & 0x40 == 0: # 1
result = result | 0x29
if ord(ctx[9]) & 0x20 != 0: # 0
result = result | 0x2D
if ord(ctx[9]) & 0x10 == 0: # 1
result = result | 0x23
if ord(ctx[9]) & 8 != 0: # 0
result = result | 0x12
if ord(ctx[9]) & 4 == 0: # 1
result = result | 2
if ord(ctx[9]) & 2 != 0: # 0
result = result | 0x11
if ord(ctx[9]) & 1 != 0: # 0
result = result | 4
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[10]) > 127: # 0
result = result | 0x26
if ord(ctx[10]) & 0x40 == 0: # 1
result = result | 0x15
if ord(ctx[10]) & 0x20 == 0: # 1
result = result | 0xC
if ord(ctx[10]) & 0x10 == 0: # 1
result = 0x1B
if ord(ctx[10]) & 8 != 0: # 0
result = result | 0xD
if ord(ctx[10]) & 4 != 0: # 0
result = result | 0x24
if ord(ctx[10]) & 2 != 0: # 0
result = result | 0x21
if ord(ctx[10]) & 1 != 0: # 0
result = result | 0x23
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[0xB]) > 127: # 0
result = result | 0x16
if ord(ctx[0xB]) & 0x40 == 0: # 1
result = result | 0x11
if ord(ctx[0xB]) & 0x20 == 0: # 1
result = result | 7
if ord(ctx[0xB]) & 0x10 != 0: # 0
result = result | 0x19
if ord(ctx[0xB]) & 8 != 0: # 0
result = result | 0x1A
if ord(ctx[0xB]) & 4 != 0: # 0
result = result | 0x29
if ord(ctx[0xB]) & 2 != 0: # 0
result = result | 0x23
if ord(ctx[0xB]) & 1 == 0: # 1
result = result | 0x2A
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[0xC]) > 127: # 0
result = result | 0x2B
if ord(ctx[0xC]) & 0x40 == 0: # 1
result = result | 0x10
if ord(ctx[0xC]) & 0x20 == 0: # 1
result = result | 0x12
if ord(ctx[0xC]) & 0x10 == 0: # 1
result = result | 0x29
if ord(ctx[0xC]) & 8 != 0: # 0
result = result | 3
if ord(ctx[0xC]) & 4 != 0: # 0
result = result | 0x1C
if ord(ctx[0xC]) & 2 != 0: # 0
result = result | 0x11
if ord(ctx[0xC]) & 1 == 0: # 1
result = result | 4
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[0xD]) > 127: # 0
result = result | 0x16
if ord(ctx[0xD]) & 0x40 == 0: # 1
result = result | 0x21
if ord(ctx[0xD]) & 0x20 == 0: # 1
result = result | 2
if ord(ctx[0xD]) & 0x10 != 0: # 0
result = result | 0x2D
if ord(ctx[0xD]) & 8 == 0: # 1
result = result | 0x1D
if ord(ctx[0xD]) & 4 == 0: # 1
result = result | 0xB
if ord(ctx[0xD]) & 2 == 0: # 1
result = result | 9
if ord(ctx[0xD]) & 1 == 0: # 1
result = result | 0xC
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[0xE]) > 127: # 0
result = result | 0x24
if ord(ctx[0xE]) & 0x40 == 0: # 1
result = result | 0x12
if ord(ctx[0xE]) & 0x20 != 0: # 0
result = result | 0x22
if ord(ctx[0xE]) & 0x10 != 0: # 0
result = result | 0xE
if ord(ctx[0xE]) & 8 != 0: # 0
result = result | 9
if ord(ctx[0xE]) & 4 != 0: # 0
result = result | 2
if ord(ctx[0xE]) & 2 == 0: # 1
result = result | 0x28
if ord(ctx[0xE]) & 1 != 0: # 0
result = result | 0x2C
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[0xF]) > 127: # 0
result = result | 0x2B
if ord(ctx[0xF]) & 0x40 == 0: # 1
result = result | 0x27
if ord(ctx[0xF]) & 0x20 != 0: # 0
result = result | 0x21
if ord(ctx[0xF]) & 0x10 == 0: # 1
result = result | 0x1F
if ord(ctx[0xF]) & 8 == 0: # 1
result = result | 9
if ord(ctx[0xF]) & 4 != 0: # 0
result = result | 10
if ord(ctx[0xF]) & 2 != 0: # 0
result = result | 0xC
if ord(ctx[0xF]) & 1 != 0: # 0
result = result | 0x23
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[0x10]) > 127: # 0
result = result | 7
if ord(ctx[0x10]) & 0x40 != 0: # 0
result = result | 0x2B
if ord(ctx[0x10]) & 0x20 == 0: # 1
result = result | 0x21
if ord(ctx[0x10]) & 0x10 == 0: # 1
result = result | 0x28
if ord(ctx[0x10]) & 8 != 0: # 0
result = result | 0x2B
if ord(ctx[0x10]) & 4 != 0: # 0
result = result | 4
if ord(ctx[0x10]) & 2 != 0: # 0
result = result | 8
if ord(ctx[0x10]) & 1 == 0: # 1
result = result | 0x26
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[0x11]) > 127: # 0
result = result | 0x1E
if ord(ctx[0x11]) & 0x40 == 0: # 1
result = result | 0x11
if ord(ctx[0x11]) & 0x20 != 0: # 0
result = result | 2
if ord(ctx[0x11]) & 0x10 != 0: # 0
result = result | 0x19
if ord(ctx[0x11]) & 8 != 0: # 0
result = result | 0x29
if ord(ctx[0x11]) & 4 == 0: # 1
result = result | 0x18
if ord(ctx[0x11]) & 2 == 0: # 1
result = result | 3
if ord(ctx[0x11]) & 1 != 0: # 0
result = result | 0x1D
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[0x12]) > 127: # 0
result = result | 0x1A
if ord(ctx[0x12]) & 0x40 != 0: # 0
result = result | 0x25
if ord(ctx[0x12]) & 0x20 == 0: # 1
result = result | 0x26
if ord(ctx[0x12]) & 0x10 == 0: # 1
result = result | 0x11
if ord(ctx[0x12]) & 8 == 0: # 1
result = result | 0x1A
if ord(ctx[0x12]) & 4 != 0: # 0
result = result | 0x28
if ord(ctx[0x12]) & 2 != 0: # 0
result = result | 0x15
if ord(ctx[0x12]) & 1 != 0: # 0
result = result | 0x10
"""""" """""" """""" """""" """""" """""" """""" """""" """""" """"""
if ord(ctx[0x13]) > 127: # 0
result = result | 0x27
if ord(ctx[0x13]) & 0x40 == 0: # 1
result = result | 0xB
if ord(ctx[0x13]) & 0x20 == 0: # 1
result = result | 0x21
if ord(ctx[0x13]) & 0x10 != 0: # 0
result = result | 0x2C
if ord(ctx[0x13]) & 8 == 0: # 1
result = result | 0x1C
if ord(ctx[0x13]) & 4 == 0: # 1
result = result | 0xD
if ord(ctx[0x13]) & 2 != 0: # 0
result = result | 0x14
if ord(ctx[0x13]) & 1 != 0: # 0
result = result | 0x14
# 00110110 00110111 01101011 01010111 00110110 01011001 01101110 01001011 01110110 01010100 01110000 01100001 01110001 01101111 01000010 01011000 00110001 01000110 00111000 01101100
return result == 0
def main():
parser = argparse.ArgumentParser()
parser.add_argument("-s", "--binary_str", required=True, dest="in_str", type=str)
args = parser.parse_args()
target_str = "".join([chr(int(x, base=2)) for x in args.in_str.split()])
print(target_str)
start_t = time.time()
if verify(target_str):
print("OMG")
print(args.in_str)
print(target_str)
end_t = time.time()
print(f"checked string in {end_t-start_t} seconds")
if __name__ == "__main__":
main()