Function at 0x6d9e2b
Capabilities:
Encode data using xor

Disassembly:
test al, 0xc8
cmpsb byte [esi], byte es:[edi]
and cl, byte [edx]
or esi, dword [esi]
out 0x6a, al
salc
push esi
ret 0x46b6
stosd dword es:[edi], eax
imul esp, dword [esi - 0x62ed7c27], 0x65
pop edx
xchg edx, eax
aam 0x56
mov ah, 0xc2
lodsb al, byte [esi]
salc
arpl word [esi], dx
aad 0x8c
push es
div dword [esi + 0x6e]
add eax, 0x4753520c
push ss
cmp dh, byte [ecx]
mov dh, 0x93
cmp bl, dh
loop 0x6d9dfb
cmc
sub dl, dh
ror eax, 0x5e
test eax, 0x8cfcb23a
xor edi, dword [ecx]
dec eax
rcr byte ss:[esi + edx*4 - 0x6e], cl
xor eax, 0xc6ecc365
sbb dword [esi + 3], ebp
wait
adc dword [edi - 0x20], esi
aaa
rol dword [esi - 0x7c], 1
pop edi
jne 0x6d9ee0
arpl word [esi + ecx*2 + 0x38], ax
ljmp 0x13f6
or ecx, dword [esi + 0x3a]
inc esp
adc al, 0x9a
mov ah, 0xb5
adc eax, 0xfc406a1
mov eax, dword [esi - 0x76]
invalid
mov eax, dword [0x8b0fc406]
inc esi
mov cl, byte [edi - 0x4f937788]
fdiv dword [ebx - 0x7229e310]
jp 0x6d9f61
sbb al, 0xd6
lea edi, [edx + 0x7c]
sbb al, 0x56
xchg esi, eax
jb 0x6d9ed1
mov dh, 0xa
add edx, dword [edi - 0x4a]
neg dword [ebx - 0x2a]
cwde
scasb al, byte es:[edi]
out 0x1e, al
push es
in al, dx
xchg byte [edi + esi*4 + 0x23f4315b], ah
jl 0x6d9f27
push ss
rol esp, cl
into
sti
ja 0x6d9f37
je 0x6d9f47
push ebx
ror byte [ebp + 0x24], cl
jne 0x6d9f37
mov ebx, 0x469a562d
cli
xor dword [esi], edx
out 0x9a, eax
mov esp, 0x3d47e396
jbe 0x6d9ec8
push eax
pop edi
in al, 0x71
cmp al, 0x36
stosb byte es:[edi], al
jno 0x6d9f65
stosb byte es:[edi], al
adc eax, 0x13840109
mul byte es:[esi + 0x23]
test dword [eax], ebx
dec eax
test eax, 0xa6268636
and ecx, dword [edx - 0x3a]
wait
xor al, 0x7a
mov dword [edx + 0x1c], ebp
push es
mov byte [eax - 0x4a], 0x22
inc eax
mov dh, 0x22
aam 0xee
insd dword es:[edi], dx
fiadd dword [ebp - 0x1949192a]
ljmp 0x1636
jae 0x6d9ef9
mov ds, word [eax + 0x16464452]
push edx
inc esp
inc esi
push ss
rep stosb byte es:[edi], al
out 0x26, al
adc byte [esi - 0x5a], ah
pop ds
mul byte [edi - 0x16]
push ebp
fiadd dword [esi - 0x39]
cmp cl, dh
sub ah, byte [ebp - 0x4c345c4d]
cmp dword [esi - 0x1a], esi
mov dh, 0x9e
out 0xb6, al
sahf
xor al, 0xca
inc esi
mov edx, 0xe626f636
pop ss
pop ss
xchg byte [esp + eax*4 - 0x4a], dh
jno 0x6d9f99
invalid
mov ds, word [esi]
cmpsd dword [esi], dword es:[edi]
push cs
and al, 0x59
aaa
mov ebx, 0x1ea1c003
inc ebp
fistp qword [edi]
mov ch, 0xb9
movsd dword es:[edi], dword [esi]
inc edi
scasb al, byte es:[edi]
pop ss
push ebp
inc esi
sal dh, 0x65
rol byte [0x941f95cf], 0x8a
mov dh, 0xa4
push cs
mov dword [0xbe331701], eax
stc
xchg ebx, eax
mov al, 0x59
aad 0x60
or byte [eax + edx*4], al
xor byte [ebp + 0x75903d41], al
push eax
dec ebx
xchg ebp, eax
push ebp
xor byte [esi + 0x33], 0xf5
adc ah, 0xa5
sbb dh, byte [esp + eax*4 - 0x608e8a73]
jno 0x6d9f82
or eax, 0x16ab96b0
mov bh, 0x2e
fadd qword [ecx - 5]
adc byte [ebx - 0x34c79d37], al
xor eax, 0x8796b4eb
push edx
imul esp, dword [esi], 0x1a873abe
mov cs, word [ecx + 0x5636f076]
xchg esp, eax
les esp, [esi - 0x3b]
inc edi
scasb al, byte es:[edi]
not byte [eax]
shr dh, 1
daa
je 0x6d9fbc
jno 0x6d9f9b
inc ecx
jg 0x6d9fe1
cdq
add eax, 0x3652a7c
cmpsd dword [esi], dword es:[edi]
div byte [ebx]
xor eax, 0xe16a3041
out 0xb6, al
movsd dword es:[edi], dword [esi]
add esp, dword [ebp + 0x13]
and eax, 0x4e45b32f
loop 0x6da095
adc eax, dword [edi - 0x67]
dec edx
add ah, byte [esi]
mov ecx, 0xa6d55ad3
xor eax, 0x25790a90
push ebx
loopne 0x6da07c
leave
dec ecx
dec edx
push cs
mov ebx, 0xb3f38699
test byte [bx + 0x63], 0x93
test byte [edx - 0x69], 0x7f
mov ebx, 0xbd71f726
inc edx
mov dword [0x773362ee], eax
xchg ebx, eax
rcl ebp, cl
xchg ebp, eax
fst qword [edx - 0x7a]
or byte [edi - 0x70], dl
push ss
push es
jae 0x6da06e
push 0xffffffffffffffe6
pop edx
sbb cl, byte [edx + 0x64b6d20b]
stosb byte es:[edi], al
xlatb
mov ah, ah
xchg ebx, eax
push es
jb 0x6da0a9
add ebp, 0xffffffb6
iretd
fst qword [esi]
sub dh, byte [ebp + 0x14662cbf]
xchg esi, eax
mov byte [esi + 0x66266afa], 0xb
push esi
xchg esi, eax
bnd jge 0x6da0e4
cmp ch, byte [eax - 0x3f]
xchg esi, eax
sbb dl, byte [edi - 0x554d8afc]
push 0x971a96c1
add al, 0x75
mov dl, 0xaa
stosb byte es:[edi], al
cmp dword [edx + 0x3aea404a], ebx
mov dl, dh
lcall 0xb2f6, 0x700ae6bc
jb 0x6da0b2
add dword [ebx + 0x4b700c31], ebx
popal
dec edx
bound edi, qword [edx + 0x4e]
outsb dx, byte [esi]
xchg ebp, eax
call 0xd6c84540
pop edx
salc
push ss
add dword [edx], ecx
mov dh, 0x86
rcr byte [ebp + esi - 0x36], cl
xor al, 0x3b
out 0x2a, al
adc dl, byte [ecx + 0x360a4636]
mov ebp, 0x85ba598c
mov ss, word [esi - 0x46]
lodsb al, byte [esi]
inc ebp
dec edi
lcall 0x8446, 0xa61614f5
dec edx
les esi, [esi - 0x4a]
push 0x75
sbb dword [edx - 0x3f], ebx
inc esp
jbe 0x6da130
arpl bx, cx
stosd dword es:[edi], eax
push 0xdba49b7a
arpl dx, di
pop esi
invalid
or dword [ecx], ebp
pop ecx
xchg si, ax
push es
push edx
js 0x6da0d4
jmp dword [ebx]