Function at 0x2d4ea
Capabilities:
Encode data using xor

Disassembly:
add byte ss:[ebx], dh
add byte [edi], bl
dec esi
add byte [edi], cl
dec esi
add byte [ebp], al
pop edi
add byte [esi], dh
add byte [edi], dh
add byte [ecx], al
xor eax, dword [eax]
xor al, 0
inc ebx
add byte [ecx], bh
add byte [esi], dh
add byte [eax], dh
add byte [ebp], al
inc ecx
add byte [edi], dh
add byte [ecx], bh
add byte [ecx], al
inc esi
add byte [ecx], bh
add byte [esi], ch
add byte [ebp], cl
inc ecx
add byte [esi], cl
dec ecx
add byte [esi], al
inc ebp
add byte [ebx], dl
push esp
add byte [eax], al
add byte [eax], al
add ah, cl
loope 0x2d536
add byte [eax - 0x4f], dl
jle 0x2d53b
xlatb
cdq
xor dword [edi], ecx
pop es
add byte [eax], al
xchg edx, eax
xor eax, 0x72001661
movsb byte es:[edi], byte [esi]
sbb ebx, dword [ecx + eax - 0x55000000]
add byte [eax + eax + 0x57], bl
add byte [ecx], cl
dec esi
add byte [eax + eax + 0x4f], al
add byte [edi], dl
push ebx
add byte [eax + eax + 0x53], bl
add byte [edi], cl
inc esi
add byte [eax + eax + 0x57], dl
add byte [ecx], al
push edx
add byte [ebp], al
inc esp
add byte [ecx], cl
push ebx
add byte [eax + eax + 0x52], dl
add byte [ecx], cl
inc edx
add byte [ebp], dl
push esp
add byte [ecx], cl
dec edi
add byte [esi], cl
pop esp
add byte [eax + eax + 0x4f], al
add byte [edi], dl
dec esi
add byte [eax + eax + 0x4f], cl
add byte [ecx], al
inc esp
add byte [eax + eax + 0x46], bl
add byte [ecx], bh
add byte [eax], dh
add byte [eax], dh
add byte [0x37004500], dh
add byte [eax], bh
add byte [edx], al
cmp dword [eax], eax
aaa
add byte [ecx], bh
add byte [eax + eax], dh
xor eax, dword [eax]
xor al, byte [eax]
inc edx
add byte [eax], bh
add byte [edi], dh
add byte [ebx], al
xor al, 0
xor eax, 0x37004300
add byte [eax], bh
add byte [ebx], al
inc esi
add byte [eax + eax], dh
xor byte [eax], al
inc ebp
add byte [esi], dh
add byte [ecx], dh
add byte [edx], dh
add byte [eax + eax + 0x58], bl
add byte [eax], bh
add byte [esi], dh
add byte [edi], bl
inc ebx
add byte [ecx], dh
add byte [edx], al
add byte ss:[eax + eax + 0x42], al
add byte [esi], dh
add byte [eax], bh
add byte [edx], al
xor eax, dword [eax]
cmp byte [eax], al
inc ebp
add byte [ebx], al
aaa
add byte [eax + eax + 0x43], al
add byte [eax], dh
add byte [edx], al
xor eax, dword [eax]
aaa
add byte [edx], al
xor dword [eax], eax
cmp dword [eax], eax
inc esp
add byte [edx], al
xor dword [eax], eax
add byte ss:[ebx], dh
add byte [eax], dh
add byte [edx], al
xor al, byte [eax]
cmp dword [eax], eax
pop edi
add byte [ebx], dh
add byte [ecx], dh
add byte [edx], al
inc esi
add byte [ebx], dh
add byte [eax], bh
add byte [0x41003600], dh
add byte [eax + eax + 0x33], al
add byte [esi], dh
add byte [eax + eax], dh
inc ebp
add byte [ebx], dh
add byte [0x36005f00], dh
add byte [esi], ch
add byte [ecx], dh
add byte [esi], ch
add byte [edi], dh
add byte [esi], dh
add byte [eax], dh
add byte [ecx], dh
add byte [esi], ch
add byte [edx], dh
add byte [ebx], dh
add byte [esi], dh
add byte [edi], dh
add byte [edi], dh
add byte [edi], bl
dec esi
add byte [edi], cl
dec esi
add byte [ebp], al
pop edi
add byte [ebp], al
inc esi
add byte [ebp], al
cmp dword [eax], eax
add byte ss:[esi], dh
add byte [edx], dh
add byte [eax], dh
add byte [eax], dh
add byte [eax], dh
add byte [0x36003400], dh
add byte [esi], dh
add byte [ebx], dh
add byte [ecx], dh
add byte [esi], ch
add byte [ebp], cl
inc ecx
add byte [esi], cl
dec ecx
add byte [esi], al
inc ebp
add byte [ebx], dl
push esp
add byte [eax], al
add byte [eax], al
add byte [edi], dl
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [esi - 0x2ff0ce67], ah
mov dl, 0
xchg edx, eax
enter 0x734b, 2
repne lodsd eax, dword [esi]
dec ecx
add dword [ecx], eax
add byte [eax], al
add byte [ebx + 0x57005c00], ch
add byte [ecx], cl
dec esi
add byte [eax + eax + 0x4f], al
add byte [edi], dl
push ebx
add byte [eax + eax + 0x53], bl
add byte [edi], cl
inc esi
add byte [eax + eax + 0x57], dl
add byte [ecx], al
push edx
add byte [ebp], al
inc esp
add byte [ecx], cl
push ebx
add byte [eax + eax + 0x52], dl
add byte [ecx], cl
inc edx
add byte [ebp], dl
push esp
add byte [ecx], cl
dec edi
add byte [esi], cl
pop esp
add byte [eax + eax + 0x4f], al
add byte [edi], dl
dec esi
add byte [eax + eax + 0x4f], cl
add byte [ecx], al
inc esp
add byte [eax + eax + 0x46], bl
add byte [ecx], bh
add byte [eax], dh
add byte [eax], dh
add byte [0x37004500], dh
add byte [eax], bh
add byte [edx], al
cmp dword [eax], eax
aaa
add byte [ecx], bh
add byte [eax + eax], dh
xor eax, dword [eax]
xor al, byte [eax]
inc edx
add byte [eax], bh
add byte [edi], dh
add byte [ebx], al
xor al, 0
xor eax, 0x37004300
add byte [eax], bh
add byte [ebx], al
inc esi
add byte [eax + eax], dh
xor byte [eax], al
inc ebp
add byte [esi], dh
add byte [ecx], dh
add byte [edx], dh
add byte [eax + eax + 0x58], bl
add byte [eax], bh
add byte [esi], dh
add byte [edi], bl
inc ebx
add byte [ecx], dh
add byte [ebp], al
xor byte [eax], al
xor dword [eax], eax
inc edx
add byte [ebx], al
cmp byte [eax], al
xor al, 0
xor dword [eax], eax
xor dword [eax], eax
xor eax, dword [eax]
cmp byte [eax], al
inc ebp
add byte [0x42003000], dh
add byte [eax + eax + 0x38], al
add byte [ebp], al
inc ecx
add byte [ebx], dh
add byte [eax + eax + 0x30], al
add byte [ecx], dh
add byte [ecx], dh
add byte [ebp], al
add byte ss:[0x44003800], dh
inc esp
sysret
add byte [eax + eax], dh
pop edi
add byte [ebx], dh
add byte [ecx], dh
add byte [edx], al
inc esi
add byte [ebx], dh
add byte [eax], bh
add byte [0x41003600], dh
add byte [eax + eax + 0x33], al
add byte [esi], dh
add byte [eax + eax], dh
inc ebp
add byte [ebx], dh
add byte [0x37005f00], dh
add byte [esi], ch
add byte [ecx], dh
add byte [esi], ch
add byte [edi], dh
add byte [esi], dh
add byte [eax], dh
add byte [ecx], dh
add byte [esi], ch
add byte [edx], dh
add byte [ebx], dh
add byte [eax], bh
add byte [eax + eax], dh
add byte ss:[edi], bl
dec esi
add byte [edi], cl
dec esi
add byte [ebp], al
pop edi
add byte [ebp], al
xor eax, dword [eax]
inc esp
add byte [eax], bh
add byte [eax + eax + 0x42], al
add byte [eax], dh
add byte [esi], dh
add byte [edi], dh
add byte [edi], dh
add byte [esi], al
xor al, 0
inc edx
add byte [eax], dh
add byte [ecx], al
aaa
add byte [esi], ch
add byte [ebp], cl
inc ecx
add byte [esi], cl
dec ecx
add byte [esi], al
inc ebp
add byte [ebx], dl
push esp
add byte [eax], al
add byte [eax], al
xor byte [esi + 0x10100], 0
add byte [eax], al
jne 0x2d7c3
xor dword [edi], ecx
add byte [eax], al
add byte [edx + 0x1bad690], dl
insd dword es:[edi], dx
xchg esp, eax
pop eax
nop
add dword [eax], eax
add byte [eax], al
stosd dword es:[edi], eax
add byte [eax + eax + 0x57], bl
add byte [ecx], cl
dec esi
add byte [eax + eax + 0x4f], al
add byte [edi], dl
push ebx
add byte [eax + eax + 0x53], bl
add byte [edi], cl
inc esi
add byte [eax + eax + 0x57], dl
add byte [ecx], al
push edx
add byte [ebp], al
inc esp
add byte [ecx], cl
push ebx
add byte [eax + eax + 0x52], dl
add byte [ecx], cl
inc edx
add byte [ebp], dl
push esp
add byte [ecx], cl
dec edi
add byte [esi], cl
pop esp
add byte [eax + eax + 0x4f], al
add byte [edi], dl
dec esi
add byte [eax + eax + 0x4f], cl
add byte [ecx], al
inc esp
add byte [eax + eax + 0x46], bl
add byte [ecx], bh
add byte [eax], dh
add byte [eax], dh
add byte [0x37004500], dh
add byte [eax], bh
add byte [edx], al
cmp dword [eax], eax
aaa
add byte [ecx], bh
add byte [eax + eax], dh
xor eax, dword [eax]
xor al, byte [eax]
inc edx
add byte [eax], bh
add byte [edi], dh
add byte [ebx], al
xor al, 0
xor eax, 0x37004300
add byte [eax], bh
add byte [ebx], al
inc esi
add byte [eax + eax], dh
xor byte [eax], al
inc ebp
add byte [esi], dh
add byte [ecx], dh
add byte [edx], dh
add byte [eax + eax + 0x58], bl
add byte [eax], bh
add byte [esi], dh
add byte [edi], bl
inc ebx
add byte [edx], dh
add byte [esi], dh
add byte [edx], dh
add byte [esi], dh
add byte [eax + eax], dh
inc ebp
add byte [eax], bh
add byte [ecx], bh
add byte [eax + eax], dh
xor byte [eax], al
inc ebp
add byte [edx], al
xor al, 0
add byte ss:[ebx], al
inc esi
add byte [eax], bh
add byte [ebp], al
xor al, byte [eax]
xor dword [eax], eax
cmp byte [eax], al
inc ecx
add byte [ebp], al
cmp byte [eax], al
xor eax, dword [eax]
inc ebx
add byte [esi], al
add byte ss:[edx], al
add byte ss:[ecx], dh
add byte [edi], bl
xor eax, dword [eax]
xor dword [eax], eax
inc edx
add byte [esi], al
xor eax, dword [eax]
cmp byte [eax], al
xor eax, 0x41003600
add byte [eax + eax + 0x33], al
add byte [esi], dh
add byte [eax + eax], dh
inc ebp
add byte [ebx], dh
add byte [0x36005f00], dh
add byte [esi], ch
add byte [ecx], dh
add byte [esi], ch
add byte [edi], dh
add byte [esi], dh
add byte [eax], dh
add byte [ecx], dh
add byte [esi], ch
add byte [edx], dh
add byte [ebx], dh
add byte [eax], bh
add byte [eax], dh
add byte [edi], dh
add byte [edi], bl
dec esi
add byte [edi], cl
dec esi
add byte [ebp], al
pop edi
add byte [ecx], bh
add byte [ebx], dh
add byte [ebp], al
inc ecx
add byte [ecx], bh
add byte [ecx], al
aaa
add byte [eax + eax + 0x45], al
add byte [ecx], al
inc edx
add byte [ecx], dh
add byte [esi], al
aaa
add byte [0x2e003600], dh
add byte [ebp], cl
inc ecx
add byte [esi], cl
dec ecx
add byte [esi], al
inc ebp
add byte [ebx], dl
push esp
add byte [eax], al
add byte [eax], al
add byte [ebx + 0xf33a1], dl
add byte [eax], al
add byte [ecx + ebx*4 + 0x31], 0xf
add byte [eax], al
add byte [edx + 0x298c6f0], dl
mov dword [eax + 0x16c83], ecx
add byte [eax], al
stosd dword es:[edi], eax
add byte [eax + eax + 0x57], bl
add byte [ecx], cl
dec esi
add byte [eax + eax + 0x4f], al
add byte [edi], dl
push ebx
add byte [eax + eax + 0x53], bl
add byte [edi], cl
inc esi
add byte [eax + eax + 0x57], dl
add byte [ecx], al
push edx
add byte [ebp], al
inc esp
add byte [ecx], cl