Function at 0x5475e4
Capabilities:
Encode data using xor

Disassembly:
fidiv word [eax + 0x21e56c5c]
or dword [edx], ecx
salc
xor esi, dword [ebx - 0x80]
in eax, 0x21
or dword [edx], ecx
xlatb
rcr dword ds:[edx + 0xa0921e5], 1
rcr dword [edx + 0xa0921e5], 1
mov ah, 0x53
mov eax, dword [0xa0921e5]
jno 0x5475ed
xchg esi, eax
int 0xe5
and dword [ecx], ecx
or al, byte [eax + ebp - 5]
loope 0x5475f6
and dword [ecx], ecx
or dl, byte [edx + 0x43]
jmp 0x547637
mov eax, 0xa09526f
add eax, 0x6ff1095c
push edx
or dword [ebx], ecx
push edx
fstp xword [ebp + 0x9094f4e]
or al, 0x51
xor al, 0x3d
lea ecx, [edx]
or dword [ebx], ecx
pushal
mov al, 0xfe
jmp 0x5476d3
or ecx, dword [esi]
out 0xb8, eax
mov ah, 0x54
inc ecx
or dword [ebx], ecx
push 0xffffffffffffffff
push es
mov byte [edi], bh
or dword [bp + di], ecx
movsd dword es:[edi], dword [esi]
popfd
sti
or esi, ebp
test byte [ecx], cl
or esp, dword [ecx - 0x31ef3451]
ror byte [ecx], 1
or esp, edi
aaa
xchg edx, eax
in al, 0xd4
loop 0x547704
or ecx, dword [edi - 0x12]
invalid
inc eax
xor al, 0xf8
out dx, eax
ficomp dword [esi + 9]
or al, byte [eax - 0x49]
mov edi, 0x95eda55
or edx, dword [esi - 0x45bd45e7]
imul ecx, dword [ecx], 0xb
ror byte [ebx + 0x9f3c546], cl
or al, byte [ebx - 0x9519298]
mov ecx, dword [ecx]
or edx, dword [eax + eax*8]
or dword [ebx], ecx
adc al, 0xc0
int1
fidiv dword [eax - 0x59]
or dword [ebx], ecx
fist dword [ecx]
push ds
cwde
mov dh, 9
or dl, byte [ecx]
push ebx
jl 0x5477bc
test eax, 0x580b0953
fld dword [ebp + 0x97a1ae3]
or esi, dword [edx]
or dword [esi + 0x9b20f13], edi
or eax, dword [esi + 5]
xchg dword [edi], eax
out 0xf5, eax
or dword [ebx], ecx
jo 0x54772a
rcl byte [esi]
dec edi
sub dword [ecx], ecx
or ebx, dword [ecx - 0x78]
sbb eax, 0x9c1b758
or edi, dword [esi + esi*2 - 0x773323c5]
or dword [ebx], ecx
xchg esp, eax
imul ecx, ebp, 0x6a
pop edi
mov ecx, dword [ecx]
or esi, dword [ecx - 0x3499ee4e]
mov dh, 9
or esp, dword [ecx + 0x26]
sal dword [edx + 0x79], cl
sub al, 9
or bh, byte [eax + edx*2 + 0x46f5e4f8]
or dword [ebx], ecx
test ebp, esp
out dx, al
xor al, cl
ror dword [ecx], 1
or esp, dword [ebp - 0x72b90c44]
cld
or dword [edx], ecx
pop ds
outsd dx, dword [esi]
cwde
je 0x5477df
daa
or dword [edx], ecx
call 0x719deece
cmp eax, 0x26790b09
sub dword [ebp - 0x30], 0xd0b099a
imul ecx, dword [esi + 0x45], 0xb09e4e3
cmp al, 0xc1
or eax, 0xe3454e69
in al, 9
or edi, dword [ecx + eax*8]
add ecx, esi
sub byte [edi + 9], dl
or ebp, dword [eax]
sub al, 0xbb
xor cl, cl
jle 0x5477dc
or edi, ebp
cmp dword [eax + ecx], ebp
jmp 0x215f8101
and dword [esi], ebx
lahf
xchg ecx, eax
pop ebp
pop edi
or dword [ebx], ecx
push ecx
arpl word [esi], di
mov dh, 0xd
or dword [ebx], ecx
xor byte [esi + 0x1c5857e8], cl
or dword [ebx], ecx
push 0xffffffffffffffdd
sub eax, 0x9394fd6
or ecx, dword [edi + 0x60]
int1
in al, 0x69
lds ecx, [ecx]
or ah, byte [esi - 0xf49fdff]
jl 0x547814
or dword [ebx], ecx
imul ebp, dword [eax], 0x19
cmp dword [eax + 0x640b09cf], esp
or ebp, dword [ebx + 0x28]
sbb dword [ecx], edi
mov al, byte [0x640b09cf]
pop ss
pop ss
adc al, 0x54
or ebx, dword [ecx + ecx]
or ebp, esi
cmp eax, 0x8f67dff2
or dword [ebx], ecx
dec ecx
aam 0x8a
inc edx
xchg ecx, eax
imul ecx, dword [ecx], 0xb
and eax, 0x5ad3529a
jecxz 0x54783c
or eax, ebp
loopne 0x54784b
das
xor al, 9
or esp, dword [edi - 0x5170fe2f]
insd dword es:[edi], dx
or dword [eax], ecx
adc byte [ecx], dl
in eax, 0x6d
cmp ch, byte [ecx + ecx - 0x44820bf6]
cmpsd dword [esi], dword es:[edi]
rol dword [ecx], 1
invalid
or dh, ah
jge 0x54780a
leave
mov eax, dword [0x800509e4]
out 0xa7, eax
in eax, dx
mov eax, dword [0x650809e4]
sbb dword [ebx - 0x32], 0x35
mov cs, word [ecx]
or al, byte [ecx - 0x52]
inc ebx
push eax
xor eax, 0x1e0a098e
mov byte [ebx], ah
lahf
invalid