Skip to content

Binary Ninja

Binary Ninja

Plugins:
EVM dissassembler
Repository for community provided Binary Ninja plugins
Trail of bits scripts

Scripting

XOR Decrypt:

base_addr = hex(bv.start)

#Set key info
key = base + 0x16e150
key_len = 0x12
#key_data = bv.read(key, key_len)
key_data = bv.get_data_var_at(key)

# Get Data
data = base + 0x1a60a0
data_len = 0x2ca8
#enc_data = bv.read(data, data_len)
enc_data = bv.get_data_var_at(data)

#Decrypt Data
decrypted = []

for i,j in enumerate(enc_data):
	decrypted.append(j ^ key_data[i % key_len])

with open('decrypted_data.blob', 'wb') as f:
	f.write(bytes(decrypted))