Function at 0x5410be
Capabilities:
Encode data using xor

Disassembly:
dec esi
push esi
jne 0x54100b
jecxz 0x541041
lds esp, [ebp + 0x11]
inc byte [edi + edx*4 - 0x14]
popfd
push ebp
popal
ror byte [edi + edi - 0x79], 0xec
add cl, ah
fcmovu st(0), st(1)
mov esp, 0x8fde9920
in al, 0xb9
or eax, 0xeef8cd57
int 0xf8
out dx, al
pop esp
lcall 0x9f69, 0x4dfbe6eb
rcr dword [ebx + edi*2], 1
sub al, 0xbb
fbld tbyte [ecx - 0x4a]
jnp 0x54100e
sub ebp, ebp
cdq
jp 0x54104b
daa
lahf
mov byte [0x78abb23b], al
cli
wait
dec esi
test dword [ebx], ecx
mov ebp, 0x72d2ae11
push 0xffffffffffffffd7
adc al, 0xa2
push esp
or eax, 0xe44bd3
sub eax, 0x26b565b2
fmul dword [esi - 0x3b4cd359]
add eax, 0x97746bf3
les eax, [0x97746bf3]
imul esi, dword [edi + edx*4 - 0x26], 0xffffffdf
je 0x540fe8
fcmovu st(0), st(7)
xchg dword [esp + ecx*4 - 0x5d6a6517], esi
sbb al, 0x1b
fimul word [ecx - 0x6d118414]
xchg ebp, eax
mov byte [0x89de1b1c], al
in al, dx
jnp 0x54104f
xchg edx, eax
or eax, 0x76903ce6
sub eax, 0x81fccb66
stosd dword es:[edi], eax
add byte [ecx], cl
mov ah, 0x79
add dh, byte [ecx + 0x55]
mov bh, 1
in eax, 0x65
mov ecx, 0xf56b9b13
mov edx, 0xdbedbb8b
jbe 0x541083
jmp dword [edi]
daa
stosb byte es:[edi], al
sti
test eax, 0xdba6c54d
out 0xe4, al
js 0x5410dd
adc al, 0x82
jnp 0x54110e
cmp byte [ebx + 0x79], 0x8f
mov byte [0x460b178e], al
pop eax
dec ebp
stc
jno 0x54104e
invalid
adc ebp, dword [ebx + 0x5eee749b]
mov cl, 0x8c
push ds
insd dword es:[di], dx
pop eax
lahf
push es
iretd
bnd js 0x541058
push cs
push 0x2f26168a
pop edi
mov ch, 0xff
xchg esp, eax
pop ss
xor byte [edx], al
movsd dword es:[edi], dword [esi]
jbe 0x541092
dec ebx
cmp eax, 0x28af3d8a
stosb byte es:[edi], al
xlatb
fnstenv [edi - 0x2e2a59bd]
aad 0xd1
je 0x5410fa
xor eax, 0xbb394406
jp 0x54114d
fcomp dword [ecx]
jmp 0x5410cb
popfd
lodsb al, byte [esi]
iretd
adc edx, ebx
dec ecx
loop 0x54117b
insb byte es:[edi], dx
out dx, al
or byte [ebx], 0xfe
js 0x5410df
fld dword [edx + edx*8 - 7]
adc al, cl
in al, 0xd0
std
dec ebp
imul eax, dword [edx + 8], 0xffffffd0
mov eax, 0xe6f87826
sub eax, 0x8fd708cb
xchg esi, eax
sbb eax, 0x7cddd80b
dec ecx
push esi
jge 0x541183
js 0x54111f
out 0x2d, al
retf
cmp ch, byte [edx + edx*8]
cmp al, 0x56
push es
pop ebp
sahf
mov edi, 0xae6db869
jg 0x541124
hlt
sbb eax, 0xcbfea261
mov bl, 0x1c
mov esp, 0xc43969b5
aad 0x40
imul edi, dword [ecx], 0x7740d5c4
lodsd eax, dword [esi]
inc eax
ja 0x54110a
movsb byte es:[edi], byte [esi]
jnp 0x54115a
add dword [ecx + 0xd], eax
jle 0x541156
sal dword [ecx - 0x575351e], 0x61
jno 0x5411ce
out 0xee, eax
cmp dl, byte [ecx + 0x6737fca8]
mov ecx, dword [ecx + esi*4 - 0x60]
bound eax, qword [esp + ecx + 0xd]
pop esi
aaa
cli
stosb byte es:[edi], al
int1
ud1
imul edi, dword [edx], 0x5e
ror byte [ebp - 0x61], 0x60
leave
sub cl, byte [ebx - 0x74]
cmp bl, byte [0xf967fc4b]
cmp cl, ah
xchg ebx, eax
retf 0x2d6d
mov dh, 0x22
cmp dword [0x278a46bf], eax
inc esi
mov ah, byte [edi]
and eax, 0x89ca0de4
inc esi
push dword [esp + ecx*8]
mov dword [esi - 1], eax
xor al, 0xcc
xchg edx, eax
out dx, eax
js 0x5411da
clc
pushfd
dec edx
fst qword [ebx - 0x26]
add bh, byte [edx - 0x29]
dec edx
stc
sahf
pop ebx
enter 0xffffffffffff8ef1, 0x6e
push 0xf528812d
cmc
in eax, 0x7d
pop esp
sbb byte [ebp - 0x54], bl
dec eax
cmp eax, 0x9cfc58a
bound ebx, qword [edi + ebx]
xchg edi, eax
cli
push ecx
jo 0x5411d3
xchg edi, eax
xor byte [ebx], bh
adc byte [ebp + 0x7d], 4
stosd dword es:[edi], eax
push ds
or eax, 0xb771c6c8
xchg byte [ebx], al
mov byte [0x8d177bdd], al
dec edi
mov cl, 0xb1
test al, 0x9f
insd dword es:[edi], dx
or ebp, dword ds:[ebp + 0x69a407c1]
and bh, byte [ebp + 0x73]
fucomp st(5)
rol dword [edi], 0xa4
imul esp, dword [edx], 0xeddd737d
dec esi
sub ebp, dword [ebp - 0x30b38398]
dec esp
mov ah, 0x6b
and cl, byte [edi + 0x25]
jp 0x54127c
scasd eax, dword es:[edi]
adc cl, byte [ebx + 0x19]
invalid
pop es
jecxz 0x54122b
or bh, 0x82
push es
sub eax, 0xa0728cf8
jp 0x5411f8
jno 0x541299
pop ebx
in eax, dx
or byte [ecx], dl
mov ebx, 0x9229b8fd
retf
enter 0x53f7, 0xa
sbb al, 0xe5
in eax, dx
stosb byte es:[edi], al
cdq
pushal
insb byte es:[edi], dx
cmpsd dword [esi], dword es:[edi]
push es
cli
push ecx
mov edi, 0xe8a0aa4d
bound eax, qword [esi]
arpl word [ebx], bp
loopne 0x5412ba
xor byte [edi], dh
and dword [edi - 0x1a19005], esi
dec dword [esi + edi*8]
mov ebx, dword [ebp + 0x6b]
push ss
pop ecx
lodsb al, byte [esi]
sti
xchg esi, eax
push es
pop ss
fistp qword [ebp - 5]
pop ebx
mov ebx, 0x77f12c9f
retf 0x6814
mov bh, 0xfb
outsd dx, dword [esi]
pop esi
invalid
dec dword [edx + 0x34ab87ff]
jge 0x54124b
jmp 0x54125c