Ok, so I disassembled the file that I think has the loading routines for MCGA sprites with Cutter ([https://github.com/radareorg/cutter)](https://github.com/radareorg/cutter\)), but I do not have enough experience to read the assembly code. Can someone give me some hints/pointer of what is going on in the function below?
The binary is DOS 16-bit MZ format: fcn.00000000 (int arg_22h); ; arg int arg_22h @ bp+0x22 0000:0000 inc si 0000:0001 and byte [0x9521], al 0000:0005 and word [bx], sp 0000:0007 and dl, byte [arg_22h] 0000:000a xor word [bp + si], sp 0000:000c pushaw 0000:000d and bh, byte [bx - 0x32de] 0000:0011 and al, byte [di - 0x70dd] 0000:0015 and bp, word [si - 0x33dd] 0000:0019 and si, bp 0000:001b and cx, word [si + 0x25] 0000:001e loop 0x45 0000:0020 cld 0000:0021 and ax, 0x27e9 0000:0024 push di 0000:0025 sub byte [bp + si - 0x26d8], bl 0000:0029 sub byte [bp + si], bl 0000:002b sub word [bx + 0x29], bp 0000:002e ret Run By the way, I am trying to remake the game in Nim, that is why I am posting this here.