Декодирование bmp изображения

Возникла проблема при решении задачи. Из закодированной картинки bmp надо получить декодированную. Необходимо провести операцию xor между байтами из картинки и их порядковыми номерами и результаты вывести в изображение. Я скопировал байты картинки с редактора и вставил их в txt. Затем в питоне отделил сами байты, перевёл в 10сс, провёл операции, перевёл обратно в 16сс, вывел результат в txt и из него вставил текст обратно в редактор. В результате картинка не получилась. Можете, пожалуйста, указать где накосячил?

lst = ''
count=0
count2=1
kon_b = [42]
byte = ''
new_list = ''
new_new_list=''
with open('cod.txt') as file_object:
    for line in file_object:
        lst = lst + line
for i in range(2, len(lst)):
    if lst[i] == ' ':
        byte = str(lst[i + 1]) + str(lst[i + 2])
        kon_b.append(byte)
for k in kon_b:
    cd = int('0x' + str(k), 16)
    new_b = count ^ cd
    new_b = hex(new_b)
    new_b = new_b[2:]
    new_list +=new_b
    count+=1
new_list.upper()
for q in range(0,len(new_list)):
    if count2 %2==0:
        new_new_list+=str(new_list[q-1])+str(new_list[q])+' '
    count2+=1
print(new_new_list.upper())
with open('uncod.txt', 'w') as file_object1:
    file_object1.write(new_new_list.upper())

Ответы (0 шт):