Function at 0x4ff3c7
Capabilities:
Encode data using xor

Disassembly:
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [esi], al
dec eax
outsb dx, byte [esi]
or eax, 0x19664000
add byte [ebp + 0x76], cl
sbb dword [eax], eax
pop esp
mov bl, byte [eax]
add byte [edi - 0x66], ah
sbb dword [eax], eax
insd dword es:[edi], dx
mov eax, dword [0xa46e0018]
sbb byte [eax], al
push 0xffffffffffffffa1
sbb byte [esi], al
pop edi
xchg ecx, eax
pop ss
push es
push ecx
jg 0x4ff453
adc ebx, dword [edi - 0x74]
or al, 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
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 [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
pop ss
pop ecx
jp 0x4ff49a
add eax, 0xc226a45
pop edx
and dword [0x249d7212], 0x23a47715
push ss
jl 0x4ff452
and edx, dword [esi]
jg 0x4ff45a
and edx, dword [ebx]
xor dword [ecx + 0x21ba8619], 0x2dcca659
imul ebp, dword [ebx - 0x557ece34], 0xffffffc2
xor al, 0xd2
loopne 0x4ff4ab
and al, 0x7f
mov eax, 0xa55c0fd3
enter 2, 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
push ds
pop eax
ja 0x4ff52b
sub ebp, dword [ebp - 0x73]
xor al, 0x3c
mov byte [ecx - 0x4969b6cb], ch
pop ecx
mov byte [0xaa6138c0], al
invalid
cmp esp, dword [edx - 0x4e]
sar dword [ecx], 1
pop ebp
lodsd eax, dword [esi]
sal byte [edi], 1
pop edx
cwde
mov eax, 0xb9924b36
xor bh, byte [edx]
xchg ecx, eax
mov edi, 0xcbb48d32
xor dh, bh
invalid