Function at 0xfee54c
Capabilities:
Encode data using xor

Disassembly:
jmp 0xfee556
pushal
call 0xfee55c
pop ebp
sub ebp, 0x10
sub ebp, 0xbee54c
jmp 0xfee572
mov eax, 0xbee54c
add eax, ebp
add eax, 0x4c
mov ecx, 0x5c1
mov edx, 0x1bba3e57
xor byte [eax], dl
inc eax
dec ecx
jne 0xfee589
jmp 0xfee59c
fcomp qword [edx + 0x576bdedc]
push edi
push edi
salc
xchg esi, eax
scasd eax, dword es:[edi]
push edi
push edi
push edi
push esp
lcall 0xed57, 0x575752ef
jg 0xfee60b
push edi
push edi
mov al, byte [0xdc9f54b5]
salc
pop ebx
push edi
push edi
push edi
push esp
xchg edx, eax
pop es
fidiv dword [ebx]
jae 0xfee572
ficom word [ebx + 0x73]
aas
stosd dword es:[edi], eax
cdq
jbe 0xfee626
aas
pop es
inc ecx
retf 0x5657
xchg ebp, eax
pop ebx
push edi
invalid
ficomp word [ebx + 0x73]
mov edi, 0x57575752
mov esi, 0x57575504
add bl, dl
cmp esi, dword [ebx + 0x57]
test al, 0x22
pop ebx
test al, 0x22
pop edi
mov edi, 0x575757d3
fsub st(2), st(0)
pop edi
push edi
push edi
push edi
salc
cmpsb byte [esi], byte es:[edi]
push edi
and dl, byte [eax - 0x39]
salc
cmpsb byte [esi], byte es:[edi]
push edi
and dl, byte [eax - 0x39]
sahf
salc
movsd dword es:[edi], dword [esi]
dec ecx
dec esi
daa
pop ss
salc
movsd dword es:[edi], dword [esi]
dec ecx
dec esi
daa
pop ss
test esp, edx
mov edi, 0xd3581f52
sbb dword [edi + 0x57], edx
push edi
pop eax
fistp word [edi]
push edi
push edi
push edi
xor esp, ebx
dec ebx
outsb dx, byte [esi]
xlatb
lodsb al, byte [esi]
mov edi, 0x574dd358
push edi
push edi
xlatb
lodsb al, byte [esi]
mov esi, 0x5746d358
push edi
push edi
xor esi, edx
lodsb al, byte [esi]
test al, 0x72
pop eax
rol dword [edx + 0x57], cl
push edi
push edi
push ss
mov esi, 0xa8a8a89b
jle 0xfee6b9
outsb dx, byte [esi]
push esi
aam 0x96
push edx
aam 0xbf
push ebx
mov esi, 0xa8a8a8ea
jle 0xfee6b0
outsb dx, byte [esi]
push ebp
aam 0x96
xchg esi, eax
push ecx
aam 0xbd
push ebx
aam 0xbf
push edx
mov esi, 0xa8a8a8fc
fdivr qword [ebx + 0x73]
cld
test al, 0xa8
test al, 0xdc
jnp 0xfee733
fidiv dword [ebx]
jae 0xfee717
xchg ebp, eax
pop ebx
push edi
add bl, ah
mov ebx, 0xdc020001
and bl, byte [ebx - 0x24]
sub bl, byte [edi - 0x55]
in eax, 0xd7
fst qword [ecx - 0x2a]
xchg ecx, eax
push esi
push edi
push edi
push edi
fist word [eax - 0x2a]
nop
push esi
push edi
push edi
push edi
in al, dx
push ebp
push edi
push edi
push edi
push ebp
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [eax - 0x2c], ebx
invalid
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [eax - 0x2c], ebx
jge 0xfee77a
push edi
push edi
push ebp
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [edi + edx*4 + 0x55], eax
inc esp
xchg edi, eax
push ebp
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [edi + edx*4 + 0x55], eax
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [edi + edx*4 + 0x55], eax
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [edi + edx*4 + 0x58], eax
rcl dword [ecx + 0x57], cl
push edi
push edi
fmul qword [eax + 0x54dd8f7c]
fist word [eax + 0x10]
in al, dx
push ebp
push edi
push edi
push edi
mov esi, 0xa8a8a827
out dx, eax
test al, 0xef
push esi
push edi
push edi
push edi
push ebp
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [edi + edx*4 + 0x55], eax
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [eax - 0x2b], ebx
mov dword [eax - 0x6b835758], ebp
in al, dx
push esi
push edi
push edi
push edi
pop eax
shl byte [ebx + 0x57], cl
push edi
push edi
out dx, al
push esi
push edi
push edi
push edi
push ebp
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [esi + ebx*4 + 0x55], eax
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [eax - 0x2b], ebx
mov dword [eax - 0x23fe5758], ebp
mov al, byte [0xf3a4a27c]
or dword [esi - 0x575757a1], edi
pop ds
xchg esi, eax
mov bh, 0x5f
fst qword [ecx + 0x11]
fdivr qword [edi + 0x575756ee]
push edi
push ebp
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [esi + ebx*4 + 0x55], eax
test dword [eax - 0x2e], ebx
push edx
push edi
push edi
push edi
fld qword [ecx + 0x11]
inc ebp
test dword [eax - 0x2b], ebx
mov dword [eax - 0x50295758], ebp
push edi
sub dl, byte [edi + 0x57]
salc
mov gs, word [eax - 0x29575758]
scasd eax, dword es:[edi]
push edi
push edx
push edi
push edi
salc
mov gs, word [eax - 0x29575758]
scasd eax, dword es:[edi]
xlatb
push edi
push edi
push edi
salc
xchg byte [edi + 0x57], dl
push edi
push edi
salc
scasd eax, dword es:[edi]
xlatb
push edi
push edi
push edi
salc
xchg byte [edi + 0x57], dl
push edi
push edi
add esp, ebx
mov al, byte [0xf3a4a77c]
or dword [esi - 0x57575634], edi
fst qword [ecx + 0x11]
sahf
xchg edi, eax
mov edi, 0x4dd35856
push edi
push edi
push edi
salc
xchg byte [ebp + 0x57], dl
push edi
push edi
fdivr qword [edi + 0x7ca0dc01]
cmpsd dword [esi], dword es:[edi]
movsb byte es:[edi], byte [esi]
or esp, ebp
push esi
push edi
push edi
push edi
mov esi, 0xa8a8a924
or bh, byte [edx + ebp + 0x5f]
fcom qword [eax - 0x4d23f6f8]
or dl, byte [ebp - 0x23f7a8a1]
arpl word [ebx - 0x26], si
xor esi, dword [ebx + 0x53]
mov esi, 0x57575753
sub dword [edx + 0x18], eax
enter 0x1bef, 0xffffffffffffffb2
jmp 0xd7913cf6