Function at 0x83bf58
Capabilities:
Encode data using xor

Disassembly:
movsx ecx, dl
ror cl, 7
mov word [esi + edx - 0x4e31a73a], ax
mov eax, edx
ror cl, 0x83
ror edx, 0x42
movzx edx, byte [edi + edx - 0x138c69cf]
xor dl, bl
neg dl
shl cl, 0xc5
shl ax, 0xae
dec dl
or ecx, eax
neg dl
inc al
not dl
ror al, 0x63
inc eax
or ecx, eax
rol dl, cl
lea eax, [ecx*4 - 0x58e79ae4]
xor bl, dl
add edx, esp
not ecx
call fcn.00843ca5
mov edx, dword [edi]
mov eax, 0xb40c521d
xor edx, ebx
lea ecx, [eax*4 + 0x63b8f11b]
not edx
shl cl, 1
jp 0x87ef92
inc ecx
ror esp, 1
call fcn.0082e20e
mov edx, esi
mov ecx, 0x772465b3
mov eax, dword ss:[ecx + edx - 0x772465b3]
shl ecx, 0x74
mov edx, dword [esi + ecx - 0x5b300000]
add cl, byte [esi + ecx - 0x5b2ffffc]
call fcn.007c2b38
shl eax, 0x79
lea ecx, [esp + ecx + 8]
and dword [esp + eax*8 + 1], eax
mov byte [eax + ecx], dl
rol dword [esp + eax + 2], 0xaa
movsx edx, byte [esp + eax*2 + 4]
sal byte [esp + eax*4 + 1], 3
mov ecx, dword [edi + eax + 1]
je 0x88b2d9
and ecx, 0x488b329d
jns 0x92af80
mov edx, 0x4e31a73c
movsx ecx, dl
mov ax, word [esi + ecx*8 - 0x1e0]
mov cx, word [edx + esi - 0x4e31a73a]
add ax, cx
jmp 0x7925bf
inc ecx
pop esi
inc esp
adc cl, cl
call fcn.00881b8c
inc edx
movsx esi, word [esp + ecx - 0x2789d]
inc ebp
xor ch, bl
dec esi
lea ebx, [esp + ebx + 8]
mov edx, 0x8583810f
dec si
dec ebx
mov eax, dword [esp + ebx - 0x4d963db7]
dec ebx
mov dword [edi - 0x4d963db7], eax
dec edx
add dword [esp - 0x4d963db7], 0xca37822e
inc edx
shr dword [esp - 0x4d963db7], 0xe4
inc si
sub dword [esp + ecx - 0x2789d], eax
inc edi
mov esp, dword [edx - 0x4d963dbc]
inc edx
or dword [esp + ecx*8 - 0x13c4ef], edx
inc eax
inc bh
dec esi
sbb dword [esp + ecx - 0x2789e], eax
inc ebp
xor esp, ebp
inc edx
pop eax
jnp 0x7d9bfa
ror dl, 0x45
inc ecx
sbb al, 7
bswap edx
inc eax
shl ch, 1
inc ecx
ror al, 1
jmp 0x7c266b
dec edx
xadd al, cl
sal cx, 0x48
dec ecx
xor edx, 0xd9911811
dec edx
jmp 0x8833b3
xor ecx, ebx
xchg edx, eax
sub dl, 0x21
dec ecx
shr ax, 0xed
xor ecx, 0xf0a5333
rol ecx, 3
push eax
dec ecx
ror byte [esp + eax + 0xa], 0x45
xor ebx, ecx
pop eax
mov dword [esi + eax - 2], ecx
lea esi, [esi + eax*2 - 2]
or edx, edx
or eax, dword [eax + edi + 5]
lea edi, [edi + edx*8 - 0x6ef]
mov ecx, edx
xor eax, ebx
jmp 0x7e29b2
mov eax, 0x9e82d500
movzx ecx, ax
mov edx, dword [ecx + edi - 0xd500]
lea edi, [edi + ecx - 0xd4fc]
xor edx, ebx
bswap ecx
dec cl
sub al, 0xc
neg edx
sub edx, 0xf619e4b6
sal eax, cl
add ecx, eax
not edx
call fcn.0082bc3d
enter 0xffffffffffff948b, 0x39
add byte [ebx], ch
invalid
bswap eax
call fcn.0081e159
jl 0x92af93
push cs
je 0x92af4f
salc
mov esi, 0x30de0cd3
push cs
dec esi
adc ecx, dword [esi + ebx*8]
xor dh, cl
mov fs, word [ebx + 0x5e30de0c]
xor cx, word [esi + ebx*8]
xor ecx, dword [esi + ebx*8]
xor dh, ch
out 0xa3, al
or al, 0xde
xor byte [esi - 0x6a], bh
mov bl, 0xc
fidiv word [eax]
dec esi
jle 0x92af56
or al, 0xde
xor byte [esi + 0x26], bl
xchg ebx, eax
or al, 0xde
xor byte [esi + 0x1e], ch
sub ecx, esp
push ds
cld
and al, 0xe2
in al, dx
jae 0x92af94
jnp 0x92afa0
add ebp, edx
sti
imul esi, eax, 0x2ad982b
mov dword [0x5589f8ff], eax
mov byte [esi + 0x2b], al
out 0xeb, eax
inc edi
sub eax, 0x9f8ffa97
les ecx, [ebx + edi*2 - 0x6c34c4ca]
clc
jo 0x92afa7
enter 0x403a, 0xffffffffffffffa0
xor byte [eax], ch
mov ebx, 0x38883ac8
cmp eax, eax
mov ebx, 0x30833ac8
mov eax, 0x3ac8bb10
and bl, 0xb3
sub byte [ebx + 0x430b3ac8], bh
nop
mov ecx, 0x65ff6231
adc dword [eax + 0x41], esp
inc edx
scasd eax, dword es:[edi]
daa
push es
or eax, 0x3787ba72
movsb byte es:[edi], byte [esi]
mov dword [edx + 0x3a], ebx
fbstp tbyte [edi]
movsb byte es:[edi], byte [esi]
mov dword [edx + 0x52], esp
push edi
aaa
movsb byte es:[edi], byte [esi]
mov dword [edx - 0x5bc8005e], ecx
mov dword [edx], eax
mov edx, 0x89a4372f
bnd jp 0x92b09c
aaa
movsb byte es:[edi], byte [esi]
mov dword [edx - 0x26b5ddde], eax
js 0x92b053
iretd
inc esp
or eax, dword [eax]
add byte [eax], al
lodsd eax, dword [esi]
pop esp
xchg esi, eax
cld
sbb dword [ebp + 1], edi
stosb byte es:[edi], al
push edi
push 0xffffffffffffff96
shl byte [ecx - 0x31], cl
loope 0x92b0cf
ret 0x45ac
ja 0x92b0f5
xor ah, byte [ecx + 0x179c731b]
mov ecx, dword [ecx + 4]
ret 0xda21
sub bh, byte [ebx - 0x32]
sbb al, 0x76
xlatb
ja 0x92b076
wait
add bh, byte [eax - 0x4a]
fimul word [ebx]
ret 0xef3a
scasd eax, dword es:[edi]
mov ebx, 0x7f7c3ac8
pop ss
aas
mov ebx, 0x24073ac8
fcom qword [edi - 0x45]
enter 0xffffffffffffec3a, 0xffffffffffffff97
in al, dx
xchg edi, eax
aaa
jle 0x92b105
invalid
bound ebx, qword [ecx - 0x48c88912]
bound ebx, qword [ecx - 0x48c40d56]
bound ebx, qword [ecx - 0x489ca552]
fldcw word [edi]
call 0xf94f50d4
jae 0x92b172
mov al, 0x33
dec ebp
mov byte [0x8af360d6], al
ficom dword [eax - 0x7be79530]
sbb edx, dword [0x49888c47]
mov bl, dl
nop
shr byte [edx + 0x18], 1
test byte [ebx], bl
adc eax, 0x49888c47
adc al, 0x68
jg 0x92b0bd
rol byte [edx - 0x777d72a2], 1
pop ss
pop edx
into
mov al, byte [esi - 0x42081876]
xor dword [ecx - 0x18], ebp
mov ch, 0xe8
scasb al, byte es:[edi]
in al, 0xf8
cmp eax, dword [edi + 0x7f]
imul ebp, dword [edx + 0x1dcac377], 0x32de2035
popal
wait
dec eax
push ecx
push eax
push ds
jb 0x92b1a1
inc edi
mov dword [0x854e74ae], eax
jmp 0x92b0e3
scasb al, byte es:[edi]
je 0x92b197
test ebx, ebp
xchg edi, eax
push ds
mov ch, 0xe6
inc ebp
call dword [ecx + 0x23]
or eax, 0x96ce72b0
retf 0xc984
jae 0x92b146
mov eax, dword [0xbe154211]
call 0x8cb1716a
out dx, eax
xchg ebx, eax
cmp byte [esi - 0x1cbaa0d3], bl
rol ecx, cl
aam 0x59
jl 0x92b140
mov ch, 0x7f
jne 0x92b12b
cmp ecx, 0x503d39ce
bound edx, qword [eax + 0x23517ca9]
retf
nop
test eax, 0xcb23517c
in eax, dx
inc esp
xor byte [0x281ce909], bh
or ecx, ebp
sbb al, 0x28
out 0xd1, al
nop
invalid