Function at 0x54b764
Capabilities:
Encode data using xor

Disassembly:
mov word [ecx + 0x12], ds
inc ebx
sal dword [eax + esi*4 - 0x6f89fac9], cl
mov edi, 0x8567c0be
invalid
mov esi, 0x8e8567c0
cmp ch, bl
add eax, 0x537d3020
jno 0x54b7b0
insb byte es:[edi], dx
test byte [ebx], dh
das
scasb al, byte es:[edi]
fcmovu st(0), st(3)
arpl word [edx - 0x28], sp
mov esp, 0xbc58f041
jle 0x54b790
mov bh, 0xb1
dec ebp
je 0x54b785
loopne 0x54b7dc
jnp 0x54b76a
or bh, al
sub ecx, dword [esi + 0x2d]
dec esi
sub eax, 0xd46d9db8
push 0xfaf568a3
salc
invalid
dec esi
sub eax, 0xd46d9db8
push 0xfaf568a3
salc
in al, dx
xchg bh, dl
jo 0x54b7b3
test al, 0x17
jle 0x54b7f7
loopne 0x54b72d
jns 0x54b739
lea eax, [ecx + 0x37]
sti
inc ebx
push ecx
xlatb
std
scasb al, byte es:[edi]
jge 0x54b760
mov ebp, 0xdacfafb9
inc eax
sub dh, byte [0x64b3811a]
pop esi
inc esp
sbb al, byte [ecx + 0x445e64b3]
test dword [si + 0x2d], esp
invalid
jl 0x54b824
inc ebp
inc ecx
push esi
inc edi
sub al, 0x38
jg 0x54b7b5
dec ecx
pushal
xor byte [ebx - 0x54], dh
pop ebx
dec ebp
cwde
inc edx
push es
pop edx
cmp eax, 0x7e039e2a
adc ebx, 0x243b1498
sub eax, 0x7e9809d7
mov ebx, 0x9092b5ae
hlt
nop
push cs
cdq
cmp ch, dh
lahf
mov ebx, 0xc6efad48
cmp esi, dword [ebx + ebp*2 - 0x4c]
fistp word [ecx + 0x23b5c87a]
fisubr dword [ebp - 0x25]
invalid
pop edi
outsb dx, byte [esi]
and eax, edi
pop ss
sbb eax, 0x9661f343
inc ebx
or esp, dword [esi]
das
inc ebp
inc edx
pop edx
cmp ecx, dword [edi]
call 0xf01d75ec
and bl, byte [ebx - 0x7c]
imul edx, dword [edx + eax*2 - 9], 0x3f
fdivr qword [ebp + 0x5b22efc8]
test byte [ebx + 0x54], ch
inc edx
idiv dword [edi]
stc
push esi
pop edi
or bh, byte [esi]
xchg esp, eax
cmp edx, ebp
push edx
ret 0x93d0
lea ebp, [eax - 0x7f153f44]
jp 0x54b7f4
jae 0x54b80c
jge 0x54b883
xchg esi, eax
push cs
mov ch, 0x65
jge 0x54b8af
int3
pop esp
xor eax, 0xe7f6dc4f
rcr dh, cl
repe scasd eax, dword es:[edi]
mov edi, 0x85c67ff9
fcom qword [ebx - 0x471818e5]
mul byte [ecx + 0x22a8d507]
jne 0x54b8fa
aad 0xa8
and dh, byte [ebp + 0x59]
xor esi, dword [edx - 0x26]
inc esi
pop ecx
adc eax, 0x5bb11714
xchg ebx, eax
jb 0x54b89c
inc eax
dec ecx
sbb ch, byte [esp + ecx]
jg 0x54b8c8
xor eax, dword [ebx - 0x16f86265]
out dx, eax
sbb eax, 0xc85ba15e
pop ebx
add dh, bh
cmc
ret 0x4dc7
invalid
mov ecx, ebp
pushal
mov cl, 0x96
xchg esi, eax
jne 0x54b966
fmul dword [ebp + 0x78]
sub dh, byte [edx + 0x6a]
sbb al, 0xd9
dec edi
jns 0x54b8fe
mov ecx, 0x8071be71
add dword [ecx], ebp
xchg edi, eax
cmpsd dword [esi], dword es:[edi]
sbb byte [esi - 0x2a05f33d], dh
lcall 0xfb76, 0x90668e0f
dec esp
pop ds
sbb dword [ecx + 0x44], edx
movsb byte es:[edi], byte [esi]
cwde
xchg ecx, eax
add eax, 0x57a590e5
mov edi, 0xc3d5c9b6
cdq
cmp eax, 0x2553e006
xchg byte [edi + esi + 0x781d3268], dh
je 0x54b98d
xor bl, byte [0xb5497478]
inc edi
js 0x54b9b7
dec ecx
mov ch, 0x47
cmpsb byte [esi], byte es:[edi]
leave
das
mov ecx, dr5
test al, 0xc8
rcl cl, cl
clc
aad 0x90
xchg esi, eax
jle 0x54b941
scasb al, byte es:[edi]
push edi
mov esi, 0xa016b4ee
mov edi, 0x737f760e
xchg ebp, eax
out dx, al
pop ss
les ebx, [edi]
pop ds
and byte [ebp - 0x22101157], bh
in eax, 0x7c
lahf
cmpsd dword [esi], dword es:[edi]
jbe 0x54b963
sar byte [eax - 0x1c4c3e8f], 0xa5
sar byte [bx + si + 0x5864], 1
jmp 0x54b9a6
rcl byte [ecx]
adc al, 0x9a
adc dword [edx + ebx*4], edx
fstpnce st(6), st(0)
sbb dword [ecx + 0x70], eax
ja 0x54ba02
je 0x54b93f
mov al, 0xa1
push ss
mov esi, 0xa3e81cec
sbb byte [esi - 0x2a], cl
mov eax, dword [0x1cecbe16]
call 0xd6a2d23c
loopne 0x54b982
mov ch, 0xed
scasb al, byte es:[edi]
push cs
adc dword [esi - 0x71], edx
test al, 0x4d
call 0xfb92f86e
sti
lea edi, [ecx + 0x3d04c654]
out dx, al
xchg edi, eax
mov bl, 0x24
lodsb al, byte [esi]
or dword [edx + ebp + 0x32], ebp
push ds
xor bl, byte [esi]
sbb eax, 0x86322a58
jb 0x54b9c1
cld
add eax, 0x7f
movsb byte es:[edi], byte [esi]
jg 0x54b9fa
out dx, eax
lds ebp, [edx]
mov al, 0x5d
xlatb
push esi
jo 0x54ba09
pop edx
sbb dword [eax + ebx*8], 0x5c
in al, dx
test al, 0x25
mov al, 0x2f
lcall 0xfe72, 0xd2fb5bef
int3
out dx, eax
insb byte es:[edi], dx
cmp al, 0xf5
jecxz 0x54b983
push es
cmp byte [esi + 0x62], dh
pop ebp
scasb al, byte es:[edi]
bound ebx, qword [ebp - 0x52]
js 0x54b9c5
and ah, byte ds:[ecx - 0x3a2a8fd4]
and ah, byte [ecx - 0x3a2a8fd4]
inc ebp
pop esi
jne 0x54b9f9
xchg ah, cl
sahf
inc esp
retf