Function at 0x537ee7
Capabilities:
Encode data using xor

Disassembly:
sbb dh, bh
add eax, 0x67883ac3
invalid
or al, 0x21
pop ds
sbb ecx, dword [esi - 0x5082e026]
shr bh, 1
pop eax
scasd eax, dword es:[edi]
loope 0x537f64
jp 0x537ef0
cmp dh, 0x90
xlatb
arpl word [edi], di
adc dword [0x9e90f851], eax
jle 0x537f52
insb byte es:[edi], dx
or ecx, dword [ebp + 0x7e]
cli
mov bh, 0xa6
cmpsb byte [esi], byte es:[edi]
xchg esp, eax
mov bh, 0xfa
loopne 0x537eb0
retf 0x4eef
sar dword [eax - 0x74], 0x7f
popal
mov ah, 0x92
mov dl, byte [edx - 0x54880eea]
imul esi, dword [eax + ecx + 0x35], 0x5b
lds edi, [esp + edx*8 - 0x6f]
dec esp
sub eax, 0x85da75d9
out 0xed, eax
loop 0x537fad
popal
daa
inc edx
cli
cmp eax, 0x58c68bee
enter 0x2f3e, 0x31
movsd dword es:[edi], dword [esi]
adc ebp, esp
cmp esp, edi
pop ss
jne 0x537f0c
jb 0x537f4d
mov ebp, 0xf3d16af6
test byte [eax - 0x3a8700cc], ah
jmp 0x537f9b
add ecx, dword [eax]
jg 0x537f89
mov edi, 0xaf6a311e
xor dword [edx - 0x51], ebp
inc edi
pop ss
dec ebx
test dword [0xbce507d3], ebx
jl 0x537f6a
cld
mov dh, 0x1c
in eax, 0xc3
cld
and byte [ecx + 0x22], ah
jae 0x537f16
popal
or esi, dword [esi + 0x22]
or byte [edx - 0xdecdbed], dl
mov eax, 0xb1afa0ea
xchg edx, eax
adc esp, dword [ebx + edx]
mov eax, 0xb1afa0ea
fsubp st(2)
sahf
xor byte [edx], al
lcall 0x34d0, 0x498f803d
pop edi
and al, 0x34
jecxz 0x538007
invalid
rcr byte [ebx - 0x7c], 0x8d
pop esp
pop eax
mov cs, word [ebx + 0x22f0b753]
mov ah, 0xcc
sub dword [ebp - 0x52e5dc4f], ebp
add ebx, edi
mov dl, 0xef
mov bh, 0xf0
and dh, byte [esp + ecx*8 + 0x23b1ad29]
sbb ch, byte [ebp - 0x104d04ff]
mov bh, 0x2f
mov bl, 0x46
aas
and byte [ebp + 0x15775ec4], ch
and byte [ebx + 0xb], cl
and dh, byte [ebx + 0x1f]
xor dword [eax - 0xf], edi
dec ebp
shr dword [ebx + 0x26e062ef], 1
sar esi, 1
or al, 0xe
xor ebx, eax
or al, 0xde
push ss
shl byte [eax], cl
div byte [eax + 0x481b4d4f]
xchg edx, eax
adc edi, dword [esi - 7]
arpl word [edx - 0x365ff6e6], cx
xchg dl, al
imul eax, dword [0x40bc5173], 0xffffffa4
arpl ax, sp
mov byte [0xa0824f3b], al
invalid
or eax, dword [ebp + 0x1a]
sal dword [eax], 0x6b
cld
jnp 0x538088
adc byte [esi - 0x14], ch
push eax
rcr byte [esi - 0x186967a7], 0x19
dec ebp
dec edi
not dword [ecx]
in eax, dx
cdq
sti
imul esp, dword [esi + ebp - 0x14407f39], 0x61fc6bd7
pop eax
mov edx, 0xa7c44223
out dx, eax
xchg byte [esi - 0x3e064b], bl
test ch, bl
out 0x67, al
xchg edi, eax
sbb dword [ebp + 0x16], 0xb74ab0f7
inc byte [eax]
loopne 0x5380ab
push 0xffffffffffffffd0
and byte [esi - 0x22], 0xd8
pop edi
inc ecx
cmpsb byte [esi], byte es:[edi]
scasb al, byte es:[edi]
pushfd
pop es
sahf
fcmovb st(0), st(7)
out 0x37, eax
movsd dword es:[edi], dword [esi]
rcl byte [edx + 0x2c373d43], cl
leave
jnp 0x53808c
daa
imul ebp, dword [edi], 0x10
xor dh, ch
pushal
fdiv dword [esi]
dec edx
sbb ah, bh
out dx, eax
out 0xef, eax
cmp esi, dword [edx + 0x5eb588a3]
imul ecx, edx, 0x8ff06c8c
int 0x2b
pop esp
cmp dl, byte [eax + 0x320e1613]
out 0x40, eax
sub ebx, dword [edx + edi - 0x70]
adc edx, dword [esi]
push cs
xor ah, bh
inc eax
pop ebp
and byte [edx + 0x77], dh
pop esp
mov cl, 0xef
jne 0x5380c3
aaa
sahf
fnstcw word [eax - 0x7022538e]
mov al, 0x7e
xchg ebp, eax
movsd dword es:[edi], dword [esi]
and dword [ecx - 0x19], eax
lahf
cmc
dec edx
mov dword [ebx + 8], esp
mov dh, 0xee
or edx, 0x55
movsd dword es:[edi], dword gs:[esi]
bsr esi, esi
push ebx
or byte [ecx + esi*8 - 4], cl
push edi
aas
int 0x71
mov bh, 0xd4
inc esp
inc byte [ebx + 0x7c]
push eax
loopne 0x538125
dec ebx
popal
or bp, word [ebp - 0x626cbdd3]
sbb eax, 0xd71f1b4f
sahf
adc dword [ebx - 0x1fe6e2f], ecx
aas
mov byte [0xb4eb49d3], ah
sbb al, cl
add esp, dword [edx - 0x69758e06]
mov ah, 0x1a
rol dword [ebx], 0xa2
cli
jno 0x538072
xchg esi, eax
in al, 0xac
inc edi
sbb dl, cl
leave
jno 0x538111
aaa
xor esp, dword [ebx - 0x13]
daa
int1
jo 0x538081
aam 0xa7
in eax, dx
add eax, 0xe2d9b2d6
pushfd
or al, 0xad
add ch, byte [eax + 0x3146441d]
les esp, [ebx + 0x61]
jp 0x53812f
add al, 0xc7
and dl, byte [ecx]
pop edi
inc eax
retf 0x4fa4
adc cl, bh
fdiv dword [eax - 0x21c5e861]
pop ds
invalid
adc al, 1
add dword ss:[edx], edi
mov dh, 0x84
salc
xchg dword [ebx - 0x1f], ebp
dec esp
pop es
xchg eax, esp
jb 0x53817e
sbb al, 0x97
into
js 0x5380e0
sbb al, 0x8d
dec esp
xor bl, dl
ret 0x6f8d
invalid