Function at 0x10025134
Capabilities:
Encode data using xor

Disassembly:
insb byte es:[edi], dx
mov cl, 0x49
out dx, al
pop esi
dec ecx
insd dword es:[edi], dx
mov dword [0x3a43f9b5], eax
sub dword [esi - 0x26], esi
cmp eax, 0x5eee3580
add ebp, edi
pushfd
jne 0x1002518c
adc byte [edi + 6], cl
mov ebp, 0x819cfe2
sbb dword [eax], ecx
lodsb al, byte [esi]
lahf
insb byte es:[edi], dx
mov al, 0xe9
cmp bl, byte [0xe02a71bc]
test eax, 0x582aa41b
pushfd
mov al, byte [0x909131ce]
js 0x10025193
mov edx, 0x147c1faf
shl byte [ebx - 0x10], 1
test esp, edx
push ds
sbb byte [edi + 0x60e82b6b], dh
xchg ebx, eax
enter 0x2298, 0x12
movsb byte es:[edi], byte [esi]
test eax, 0x975f19c8
jo 0x10025153
cmp dh, al
jae 0x100251e9
invalid
push ebx
movsb byte es:[edi], byte [esi]
out 0x1f, eax
js 0x10025213
xlatb
fnstcw word [ebx + 0x7fede623]
inc ebx
mov dh, 0x79
sbb ch, dh
int 0xe7
inc eax
dec ebx
invalid
cld
outsb dx, byte [esi]
mov ah, ch
push eax
in eax, 0x50
das
cwde
cmp eax, 0xb9661c08
jmp 0x10025258
xor eax, 0xc9481e0d
jbe 0x10025213
stosd dword es:[edi], eax
push 0xc005e0f6
scasd eax, dword es:[edi]
sub cl, byte [edx - 0x26]
push ds
lodsb al, byte [esi]
and al, 0x54
add edx, dword [0x52e6db72]
add byte [0xccaf58], dl
loop 0x100251ec
xor al, 0x2b
aas
mov ah, 0xc8
inc edi
mov eax, 0x23bb79ae
je 0x1002529c
mov ch, 0xb4
and edx, edx
mov edx, 0xbcc51a6d
in al, 0xc8
cmp byte [ebp - 0x5d3cc4f3], ch
xor byte [edi + eax*2 - 0x531249fa], ch
cmp eax, ebx
mov byte [0x647ac30], al
inc edi
push es
mov dh, 0xed
lodsb al, byte [esi]
push ss
push es
loope 0x100252db
push edi
lahf
cmp dword [ebx + 0x29bb31aa], esp
clc
mov byte [edx + ebx*2 + 0x10e0e81c], ah
and esp, dword [ebx - 0x31]
sar byte [esi + 0xb0bf11e], cl
jg 0x1002528e
pop edi
dec edx
retf 0x6a0c
mov esi, 0xf84a3f42
mov bh, 0xe2
pmaxsw mm6, qword [ebp + 0x37c6a70b]
out 0xbd, al
jl 0x10025253
jns 0x1002523c
test dword [ebx + 0x6a81b61a], ecx
insb byte es:[edi], dx
lodsd eax, dword [esi]
mov ch, 0x1d
inc eax
div byte [edi + 0x20]
adc byte [ecx], dh
neg dword [eax]
cmc
push es
mov dl, 0x6d
fimul word [eax + 0x67]
or ah, bh
dec eax
or ah, bh
mov ah, 0x67
adc eax, 0x215ec367
sti
add eax, 0x225cdb92
retf
bound eax, qword [eax + 0x48]
nop
adc edx, esp
xor ebp, 0xffffffc5
jnp 0x10025354
sahf
or ah, byte [edx]
mov esp, 0xe498ebd
mov cs, word [ecx + 0xe]
cmc
add byte [esi + 0x49702f2b], cl
and al, 0x5c
cld
scasd eax, dword es:[edi]
sar byte [ebp + 0x70f85703], cl
mov bh, 0x76
jbe 0x100252bb
push esi
push ebx
xchg dword [edx - 0x30794888], eax
inc ebx
fcom qword [edi - 0x63]
pop esp
mov eax, dword [0xd8ad9db4]
out dx, al
push 0xb4de80d8
pop ss
je 0x1002538d
fcomp dword [esi + 0x79]
push ss
retf 0xc98d
lcall 0xb372, 0x5be23fce
pop ebx
sbb byte [edi + edi - 0x5c233612], bl
mov dword ds:[0xf15eaf38], eax
das
in eax, dx
jne 0x1002533d
sub dword [edi + 0x562c3ac3], ecx
loopne 0x100252ec
outsb dx, byte [esi]
jne 0x10025377
fdivr qword [edi + 4]
add al, 0x7f
cmp dh, cl
int 0x5b
loope 0x1002539b
mov gs, word [esp + esi*2]
sub al, 0x74
xchg ebp, eax
xlatb
xor eax, 0xd3a02d5d
fimul word [edi - 0x22]
iretd
dec edi
fmulp st(7)
cmp al, 0xfb
cmpsb byte [esi], byte es:[edi]
inc eax
jp 0x100253b1
xor dword [edi], ebx
pop ds
std
jp 0x1002537a
invalid
insd dword es:[edi], dx
inc ebx
push edx
xor ebp, 0xc8194e1d
sub dword [eax - 0x21], esi
and cl, byte [edi]
loope 0x10025396
inc edi
adc al, 0xa9
cmpsb byte [esi], byte es:[edi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword gs:[esi]
int3
sahf
or eax, 0xf3715e43
movsd dword es:[edi], dword [esi]
mov esp, 0x4e18831
je 0x1002537f
loopne 0x1002543f
jns 0x1002536d
jp 0x10025434
xchg byte [0xa54b18af], dh
jmp 0xee8e8e67
sub byte [edi - 0x28], bl
clc
mov ebx, 0x34d4b74b
retf
mov dh, 0x7d
push ss
pop esp
adc eax, 0xb6213689
outsd dx, dword [esi]
xchg ebp, eax
xchg edi, eax
add edx, ecx
mov dh, 0x1f
rcl dh, 0xa2
ljmp 0xeada