Function at 0x85f7a0
Capabilities:
Encode data using xor

Disassembly:
xor dword [ebp - 0x24], 0x69
mov edx, 0xf4c725c5
inc ebp
enter 0x5f43, 0xffffffffffffffdd
pop ds
and ch, al
test eax, 0xb5e8bbb9
mov ecx, 0x8c81e8b7
sub dword [0x6b911970], 0xffffffe7
jns 0x85f7c2
insb byte es:[edi], dx
jmp 0x8c7170d6
mov esi, 0xa095b2c5
leave
xchg edi, eax
loopne 0x85f731
aas
cmp byte [esi], al
xchg esi, eax
add byte [eax], al
jmp 0x85f7aa
pushal
call 0x85f7b0
pop ebp
sub ebp, 0x10
sub ebp, 0x45f7a0
jmp 0x85f7c6
je 0x85f7fa
adc eax, 0xf7a0b8ab
inc ebp
add byte [ebx], al
lds eax, [ecx + 0x4cc0]
mov eax, 0x45f7a0
add eax, ebp
test dword [ebp], 0xc081c503
dec esp
add byte [eax], al
add eax, 0x4c
ror byte [eax + eax], 0
add byte [ecx + 0x5f5], bh
mov ecx, 0x5f5
mov edx, 0x6dc61d72
xor byte [eax], dl
inc eax
dec ecx
jne 0x85f7dd
jmp 0x85f7f0
stc
mov edi, 0x724efbf9
jb 0x85f86a
mov bl, 0x8a
jb 0x85f86f
mov dh, byte [edx + 0x72]
jb 0x85f870
mov edi, 0x727276ca
jb 0x85f7ce
pop edx
jb 0x85f87b
jb 0x85f790
nop
jno 0x85f7c8
stc
jle 0x85f884
jle 0x85f884
jb 0x85f886
jno 0x85f7cd
and ah, byte [edx]
sbb cl, byte [edx - 9]
jl 0x85f88f
sbb dl, byte [eax + eax]
inc ebp
jb 0x85f896
pop esi
push esi
sbb dl, byte [eax - 0x651b674b]
ja 0x85f89f
jb 0x85f8a1
wait
pop esp
jb 0x85f8a5
jb 0x85f85c
das
stc
idiv dword [edx + 0x72]
jb 0x85f8af
stc
out 0x7e, eax
jb 0x85f8b4
jb 0x85f83d
jmp dword [edx + 0x72]
push ss
push esi
jbe 0x85f810
jle 0x85f8d4
stc
invalid
dec edx
idiv dword [edx + esi*2 + 0x1a]
adc al, 0
inc ebp
jb 0x85f8e7
add byte [ebp + 0x72], al
jae 0x85f8d3
pop esi
push esi
call dword [esi]
push esi
invalid
jle 0x85f8d3
lcall 0x379b, 0x72727277
jo 0x85f8f8
jb 0x85f8af
stc
sahf
lea eax, [edi]
jle 0x85f81b
pop es
jp 0x85f82b
or dh, byte [edx + 0x72]
jb 0x85f88f
iretd
fild qword [esi - 0x78]
fpatan
sbb bh, 0x6e
mov cl, bl
sbb bh, 0x6e
fild qword [esi - 0x78]
fld dword [ecx - 0x60]
int1
lcall 0x723c, 0xf67d3a77
mov cl, bl
inc ecx
mov al, byte [0x3a779af1]
jge 0x85f8a7
cmp al, 0x72
jb 0x85f927
jb 0x85f933
jge 0x85f8b1
cli
cmp dh, byte [edx + 0x72]
jb 0x85f8d0
adc al, 0xf9
stc
outsb dx, byte [esi]
dec ebx
mov dword [edx + 0x7268f67d], ebx
jb 0x85f93a
mov dword [ebx + 0x7263f67d], ebx
jb 0x85f943
jb 0x85f8e6
adc al, 0xf3
mov dword [ebp + 0x67f67d57], ecx
mov dword [ebp + 0x67f67d57], ecx
lea edx, [edi + 0x7d]
mul byte [edi + 0x72]
jb 0x85f94e
jb 0x85f94d
jb 0x85f94d
jb 0x85f910
xor ebx, dword [ebx - 0x72727242]
pop ebx
wait
mov esi, 0x5b8d8d8d
dec ebx
jae 0x85f8d8
int1
mov bl, 0x77
int1
lcall 0x8d8d, 0x8dcf9b76
pop ebx
dec ebx
jo 0x85f8e7
iretd
mov bl, 0x74
int1
cwde
jbe 0x85f8ed
lcall 0x8d8d, 0x8dd99b77
stc
pop esi
push esi
call dword [esi]
push esi
jbe 0x85f8bb
jle 0x85f97f
daa
stc
sahf
and al, 0x25
daa
stc
pop es
jle 0x85f910
invalid
mov ch, 0x73
jb 0x85f99d
jb 0x85f8f6
leave
jo 0x85f9a1
jb 0x85f9a3
jo 0x85f8d3
jge 0x85f92c
ja 0x85f9a9
jb 0x85f9ab
clc
xor al, 0x60
mov al, byte [0x8daaf17d]
lea ecx, [ebp - 0x8825f90]
int1
stosb byte es:[edi], al
lea ecx, [ebp + 0x7da0708d]
div dword [edi + 0x72]
lea esi, [eax - 0x60]
jge 0x85f93f
ja 0x85f9bc
jb 0x85f9be
clc
xor al, 0x60
xor al, 0x60
mov al, byte [0x7218f17d]
jb 0x85f9c9
inc ecx
mov dl, 0x70
mov al, byte [0x7277f77d]
jb 0x85f9d3
clc
xor al, 0x60
mov al, byte [0x7358f17d]
jb 0x85f9de
int1
pop eax
jae 0x85f9dd
jb 0x85f9dd
jo 0x85f90e
mov al, byte [0x7277f77d]
jge 0x85f967
ja 0x85f9e4
jb 0x85f9e6
clc
xor al, 0x60
xor al, 0x60
mov al, byte [0xa070b261]
jge 0x85f976
ja 0x85f9f3
jb 0x85f9f5
clc
xor al, 0x60
xor al, 0x60
mov al, byte [0xa070b261]
jge 0x85f985
ja 0x85fa02
jb 0x85fa04
clc
xor al, 0x60
xor al, 0x60
mov al, byte [0xa070b261]
jge 0x85f994
mov al, byte [0x7277f77d]
div dword [edi + 0x72]
ja 0x85fa11
jb 0x85fa13
jb 0x85f99a
clc
xor al, 0x60
xor al, 0x60
mov al, byte [0xf67db261]
jge 0x85f9a0
div byte [edx + esi*2 + 0x72]
je 0x85fa1e
jb 0x85fa1f
jb 0x85fa20
jb 0x85f9a8
stc
lodsd eax, dword [esi]
pop ecx
stosb byte es:[edi], al
clc
jno 0x85f9af
jne 0x85f9ec
leave
jo 0x85fa2c
jb 0x85fa2e
wait
add cl, byte [ebp + 0x73ca8d8d]
jb 0x85fa37
lea ecx, [ebp + 0x7273ca8d]
jb 0x85fa38
retf 0x7273
jb 0x85fa37
jo 0x85f968
mov al, byte [0x7277f77d]
jge 0x85f9c1
div dword [edi + 0x72]
ja 0x85fa3e
jb 0x85fa40
clc
xor al, 0x60
xor al, 0x60
mov al, byte [0xa070b261]
jge 0x85f9d0
popal
mov dl, 0x70
mov al, byte [0x7277f77d]
ja 0x85fa4d
jb 0x85fa4f
clc
xor al, 0x60
mov al, byte [0x8dacf07d]
lodsb al, byte [esi]
lea ecx, [ebp - 0x364ea673]
lea ecx, [ebp + 0x73c9b159]
pop ecx
mov cl, 0xc9
jae 0x85fa5f
jb 0x85fa60
jb 0x85fa61
jb 0x85fa6d
jge 0x85f9e8
test dword [esi + 0x72], 0x73cb7272
jb 0x85fa6b
inc esi
jb 0x85fa66
jb 0x85fa67
jb 0x85f9c1
retf
jae 0x85fa6a
jb 0x85fa6c
jb 0x85fa6b
jo 0x85f99c
mov al, byte [0x7277f77d]
jge 0x85f9f5
ja 0x85fa72
jb 0x85fa74
clc
xor al, 0x60
xor al, 0x60
mov al, byte [0xa070bb61]
jge 0x85fa04
ja 0x85fa81
jb 0x85fa83
clc
xor al, 0x60
xor al, 0x60
mov al, byte [0x8dacf07d]
lea ecx, [ebp + 0x5985f924]
test dword [ecx - 0x79], ebx
adc esi, 0x8d7a9b2c
lea ecx, [ebp + 0x7a92b33a]
clc
pop ecx
xchg dword [ecx + 0x7a9b2cd6], eax
lea ecx, [ebp - 0x6d4cc573]
jp 0x85fa26
je 0x85fa64
stc
lcall 0x7072, 0x727273cb
retf
jo 0x85f9d9
mov al, byte [0x7277f77d]
jge 0x85fa32
ja 0x85faaf
jb 0x85fab1
jb 0x85fa38
clc
xor al, 0x60
xor al, 0x60
mov al, byte [0xa070bb61]
jge 0x85fa41
mov al, byte [0x7277f77d]
ja 0x85fabe
jb 0x85fac0
jb 0x85fa47
clc
xor al, 0x60
mov al, byte [0x8dacf07d]
lea ecx, [ebp + 0xf728af3]
jb 0x85fad1
rep stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea ecx, [ebp - 0x750c7273]
invalid
mov dh, byte [edx + 0x77]
jb 0x85fae0
jb 0x85fadd
jb 0x85fa5f
rep stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea ecx, [ebp - 0x750c7273]
bnd jb 0x85fae8
mov dh, dl
jb 0x85fae8
jb 0x85fa6b
mov dword [0x72727272], eax
mov dword [0x72727272], eax
mov dh, dl
jb 0x85faf4
jb 0x85faf5
jb 0x85fa77
mov dword [0x72727272], eax
mov dword [0x72727272], eax
and al, 0xf9
test dword [ecx - 0x7e], ebx
adc esi, 0x8ce99b2c
lea ecx, [ebp + 0x413474f8]
mov ebx, 0x7d739ab2
imul byte [eax + 0x72]
jb 0x85fb16
mov dword [0x72727270], eax
stc
lcall 0x8182, 0x5985f924
pop ecx
add byte [ecx + 0x73c92cd6], 0x72
adc esi, 0x7273c92c
salc
sub al, 0xc9
jae 0x85fb29
jb 0x85fb2b
wait
add dword [ebp + ecx*4 + 0xf592f8d], ecx
jp 0x85fabc
lea ecx, [ebp + 0x7a0f592f]
stc
das
pop ecx
invalid
mov ch, 0x2d
sub al, 0xf9
xchg edi, eax
das
mov al, 0x7a
jb 0x85fafa
sub al, 0x9b
jbe 0x85fb43
jb 0x85fb45
call dword [ebx - 0x2d35d000]
test dword [edi], esi
jb 0x85fb4e
mov bh, 0xf3
mov dl, 0x2f
das
jno 0x85fb55
jb 0x85fab0
xchg esi, eax
jo 0x85fb5a
jb 0x85fab2
xchg ecx, eax
enter 0x7ff6, 0x42
inc edx
bound esi, qword [edx]
cmp edi, dword [ebp - 9]
test byte [ebp + 0x769b8d8d], cl
lea ecx, [ebp + 0x72769b8d]
jb 0x85fb6f
jb 0x85fb6e
jb 0x85fb55
push edi
push cs
push 0xffffffffffffff95
push ss
outsd dx, dword [esi]
sbb ch, bh
lodsd eax, dword [esi]
sbb ch, byte [0x919131a6]
xchg ecx, eax
xchg edx, eax
outsd dx, dword [esi]
invalid
sbb dl, byte [0x9191a5a1]
xchg ecx, eax
mov edx, 0x91c61a49
sbb bl, dh
xchg ebp, eax
adc byte [ebx - 0x6f], ch
xchg ecx, eax
xchg ecx, eax
xchg ecx, eax
sahf
adc eax, 0x919191d7
xchg edx, eax
inc edi
adc byte [esi - 0x67], dl
xchg ecx, eax
xchg ecx, eax
xchg ecx, eax
adc byte [eax - 0x67], bh
xchg ecx, eax
xchg ecx, eax
xchg ecx, eax
adc byte [eax - 0x6f], ch
xchg ecx, eax
xchg ecx, eax
xchg ecx, eax
sahf
adc eax, 0x6e6e6e45
neg dword [edx]
xchg esi, eax
push eax
jns 0x85faee
adc dh, byte [ecx - 0x62]
adc byte [ecx - 0x6e], ch
xchg ecx, eax
xchg ecx, eax
xchg ecx, eax
imul edx, dword [edx - 0x616e6e6f], 0x91919c14
sahf
adc al, 0x9c
xchg ecx, eax
xchg ecx, eax
xchg ecx, eax
neg dword [edx]
xchg esi, eax
adc byte [ecx + 0x6e], dh
sahf
xchg ecx, eax
xchg ecx, eax
xchg edx, eax
push ebx
nop
mov eax, ebx
fcom dword [edx]
push esi
xchg ebx, eax
adc dl, byte [esi - 0x6d]
js 0x85fbcd
outsb dx, byte [esi]
outsb dx, byte [esi]
outsb dx, byte [esi]
js 0x85fb0e
xchg ecx, eax
xchg ecx, eax
xchg ecx, eax
retf
xchg ecx, eax
mov esi, 0xf28a9de3
pop es
inc ebp
lds ecx, [esi - 7]
jns 0x85fc2c
jns 0x85fc2f
xchg edx, edi
push es
jne 0x85fc33
jns 0x85fc31
jbe 0x85fbb9
std
invalid
cmp dword [ecx + 0x79], 0xfc767979
jne 0x85fc4f
jns 0x85fc51
bnd jne 0x85fc56
mov edi, 0x99ec8629
in al, dx
cdq
or dword [esi + 0x79], ecx
cli
push es
jne 0x85fc61
jns 0x85fc5f
jbe 0x85fbe7
std
call 0xfaff7568
push es
jns 0x85fc6b
jbe 0x85fbf0
jae 0x85fc6f
jns 0x85fc71
cli
push es
imul edi, dword [ecx + 0x76], 0x797912fd
jns 0x85fc2f
sub al, 0x23
inc byte [edx + esi*8 - 0x7b0196fc]
jp 0x85fba5
test byte [edx - 0x69], bh
cli
add al, 0x79
jns 0x85fc89
std
sub al, 0x79
jns 0x85fc91
invalid
pop ebp
test eax, esi
jge 0x85fc83
hlt
pop ebp
jb 0x85fbdf
jbe 0x85fc21
jne 0x85fcac
jns 0x85fcae
hlt
hlt
jge 0x85fcae
xchg bl, ch
mov eax, dword [0xf2794e09]
jns 0x85fc4a
insd dword es:[edi], dx
pop ebp
hlt
cmp al, 0x79
and eax, edi
mov esp, 0x7979797d
nop
fadd dword [esi + 0x55f28686]
xchg byte [esi - 0xba2aa0e], al
pop ebp
hlt
sbb eax, 0xbef87d5d
insd dword es:[edi], dx
jns 0x85fcf2
jns 0x85fc0b
dec esi
xchg byte [esi - 0x79e2d27a], al
dec esp
jns 0x85fcfe
jns 0x85fd00
adc dword [ebx - 0xb86c37c], ebx
sbb eax, 0x55f0855d
test byte [ecx + edi*2], bh
hlt
push ebp
pop ebp
hlt
cmp al, 0x17
adc byte [esi], bl
adc al, 0x18
pop ecx
sub dword [ebx], ecx
push ss
or eax, 0x160d1a1c
or ebx, dword [ecx + 0xf]
sbb al, 0xb
or dl, byte [eax]
push ss
pop ss
pop ecx
dec eax
push edi
dec edx
dec eax
je 0x85fd3e
cmp eax, 0x151c0f1c
push ss
or dword [ebx + ecx], ebx
inc ebx
pop ecx
das
adc eax, 0x14101d18
adc byte [ebx], cl
pop ecx
sub cl, byte [edx + edx]
adc dword [esi], edx
pcmpeqb mm6, qword [ebx + 0x2a]
adc byte [0x5943591c], cl
adc dword [0x430a090d], ecx
push esi
or al, byte [ebx + 0x56]
push esi
sbb al, 0x17
adc byte [esi], bl
adc al, 0x18
or dword [ebx], ecx
push ss
or eax, 0x160d1a1c
or edx, dword [edi + 0x1a]
sbb al, 0x1a
or eax, 0x1a570b16
push ss
adc al, 0x56
je 0x85fd7f
cmp al, 0x54
adc al, 0x18
adc byte [0xa594359], dl
or al, 9
or dword [esi], edx
or ecx, dword [0x10171c39]
push ds
adc al, 0x18
or dword [ebx], ecx
push ss
or eax, 0x160d1a1c
or edx, dword [edi + 0x1a]
push ss
adc al, 0x74
jae 0x85fd5f
pop ss
or ebx, dword [esi + ebx]
adc byte [edx], cl
or eax, 0x1d1c0b1c
pop ecx
or dl, byte [eax]
push ds
pop ss
sbb byte [0x741c0b0c], cl
jae 0x85fd78
adc dword [eax], edx
or bl, byte [ecx + 9]
or edx, dword [esi]
push ds
or ebx, dword [eax]
adc al, 0x59
or dword [ebx], ecx
push ss
or eax, 0x1c0d1a1c
sbb eax, 0xd100e59
adc dword [ecx + 0x2c], ebx
aaa
sub edi, dword [esi + edi]
xor byte [edx], ch
sub eax, 0x593d3c2b
das
cmp al, 0x2b
sub dh, byte [eax]
aaa
aaa
pop ecx
push ss
pop ds
pop ecx
sub eax, 0x3c591c11
pop ss
sbb al, 0x59
cmp al, 0x17
adc byte [esi], bl
adc al, 0x18
pop ecx
sub dword [ebx], ecx
push ss
or eax, 0x160d1a1c
or esi, dword [ebx + esi*2 + 0x30]
or eax, 0x17181a59
pop esi
or eax, 0x591c1b59
sbb eax, 0xb0d0a10
adc byte [ebx], bl
or al, 0xd
sbb al, 0x1d
pop ecx
push ss
or ebx, dword [ecx + 0xc]
or bl, byte [ebx + 0x59171059]
sbb dl, byte [esi]
adc al, 0x14
sbb al, 0xb
sbb dl, byte [eax]
sbb byte [0xb0c0959], dl
or dword [esi], edx
or bl, byte [esp + esi*2]
jae 0x85fdf7
aaa
sub edi, dword [esi + edi]
xor byte [edx], ch
sub eax, 0x3d3c2b3c
pop ecx
sub dword [ebx], ebp
sub eax, 0x302d3a3c
aaa
jns 0x85fde6
add byte [eax], al
add byte [edi + 0xe], cl
dec edi
push cs
add byte [eax], al
push esp
test dword [eax], 0x32262100
or eax, 0x975a8c66
adc byte [eax + 0x54629e5e], 0xb9
fdiv qword [ebx]
std
nop
pop esi
sahf
bound edx, qword [ecx + edi*4 - 0x24]
xor edi, ebp
test al, 0xee
pop edi
jns 0x85fd88
and byte [ebp + 0x35], ch
aam 0x9a
sahf
invalid