Function at 0xdfeb01
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x214
mov eax, dword [0xe1a8c8]
xorps xmm2, xmm2
push ebx
push esi
push edi
push 6
pop ebx
mov dword [ebp - 0x70], 0x25
add eax, 0x1009f43
mov dword [ebp - 0x6c], 0x343
mov dword [ebp - 0x78], 0x4e
mov dword [ebp - 0x74], ebx
movups xmm1, xmmword [ebp - 0x78]
mov dword [ebp - 8], eax
push 0x2b
movaps xmm0, xmm1
mov dword [ebp - 0x70], 0x19
psrldq xmm0, 8
paddd xmm1, xmm0
mov dword [ebp - 0x6c], 0x3bc
movups xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd eax, xmm1
pop edx
add eax, 0x44
mov dword [ebp - 0x84], eax
xor eax, eax
mov ecx, eax
add edx, dword [ebp + ecx*4 - 0x70]
inc ecx
cmp ecx, 2
jl 0xdfeb76
push 9
pop ecx
mov byte [ebp - 0x45], cl
lea edi, [ebp - 0x80]
mov ecx, ebx
mov dword [ebp - 0x88], edx
mov esi, 0xdd2ef8
mov dword [ebp - 0x64], 0xb46599b0
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x60], 0x702c0ee1
mov edi, eax
mov dword [ebp - 0x5c], 0x397bb8e
mov ecx, eax
mov dword [ebp - 0x58], 0x8d240077
mov dword [ebp - 0x54], 0x8689b87
mov dword [ebp - 0x50], 0xe9041b47
mov dword [ebp - 0x4c], 0x8a4f36d0
mov word [ebp - 0x48], 0x12c2
mov byte [ebp - 0x46], 0x7f
mov dword [ebp - 0x44], 0x4501579c
mov dword [ebp - 0x40], 0xc85a7972
mov dword [ebp - 0x3c], 0x41514c57
mov byte [ebp + ecx - 0x198], cl
inc ecx
cmp ecx, 0x100
jb 0xdfebec
push 0x17
mov esi, eax
pop ecx
xor edx, edx
mov bl, byte [ebp + esi - 0x198]
mov eax, esi
div ecx
movzx ecx, bl
push 0x17
movzx eax, byte [ebp + edx - 0x80]
add eax, edi
add ecx, eax
movzx edi, cl
pop ecx
mov al, byte [ebp + edi - 0x198]
mov byte [ebp + esi - 0x198], al
inc esi
mov byte [ebp + edi - 0x198], bl
cmp esi, 0x100
jb 0xdfec01
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x198]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x198]
mov byte [ebp + edi - 0x198], al
mov byte [ebp + ebx - 0x198], cl
movzx eax, byte [ebp + edi - 0x198]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x198]
xor al, byte [ebp + esi - 0x64]
mov byte [ebp + esi - 0x1e4], al
inc esi
cmp esi, 0x2c
jb 0xdfec44
mov esi, 0xdd30e0
mov dword [ebp - 0x20], 0x95148730
lea edi, [ebp - 0x74]
mov dword [ebp - 0x1c], 0x3060a56f
push 0x41
pop ecx
movsd dword es:[edi], dword [esi]
xor ebx, ebx
push 5
pop eax
mov byte [ebp - 0xd], al
mov eax, ebx
movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x1b8], bl
mov dword [ebp - 0x18], 0xa01cdb8
mov dword [ebp - 0x14], 0x3bdac5a7
movsw word es:[edi], word [esi]
mov word [ebp - 0x10], 0xaebe
mov edi, ebx
mov byte [ebp - 0xe], cl
mov dword [ebp - 0xc], 0xef21b81d
mov byte [ebp + eax - 0x198], al
inc eax
cmp eax, 0x100
jb 0xdfece1
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x198]
push 9
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x74]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x198]
mov byte [ebp + esi - 0x198], al
inc esi
mov byte [ebp + edi - 0x198], bl
cmp esi, 0x100
jb 0xdfecf2
mov esi, dword [ebp - 8]
xor ebx, ebx
mov dword [ebp - 4], ebx
mov edi, ebx
lea eax, [ebx + 1]
imul esi, esi, 0x1fac2137
movzx ebx, al
mov eax, dword [ebp - 4]
mov cl, byte [ebp + ebx - 0x198]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 4], eax
mov al, byte [ebp + eax - 0x198]
mov byte [ebp + ebx - 0x198], al
mov eax, dword [ebp - 4]
mov byte [ebp + eax - 0x198], cl
movzx eax, byte [ebp + ebx - 0x198]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x198]
xor al, byte [ebp + edi - 0x20]
mov byte [ebp + edi - 0x1b4], al
inc edi
cmp edi, 0x18
jb 0xdfed39
xor ebx, ebx
mov dword [ebp - 0x20], 0x5737b7e3
mov edi, 0xdd34d0
mov byte [ebp - 0x19c], bl
mov dword [ebp - 0x1c], 0xdb7db495
mov ecx, ebx
mov dword [ebp - 0x18], 0x4a78334d
mov eax, edi
mov dword [ebp - 0x14], 0xd0b4e83c
mov dword [ebp - 0x10], 0xcb52dac3
mov dword [ebp - 0xc], 0x670add39
inc ecx
lea eax, [eax + 2]
cmp ecx, 0x18e0
jg 0xdfede5
cmp word [eax], bx
jne 0xdfedd2
jmp 0xdfedeb
imul esi, esi, 0x4063c24e
push 0x74
mov edx, 0x17bf
mov eax, edi
pop ecx
add edx, ecx
lea eax, [eax + 2]
cmp edx, 0x140e
ja 0xdfee0b
movzx ecx, word [eax]
test ecx, ecx
jne 0xdfedf5
jmp 0xdfee11
or esi, 0xc480ad84
call fcn.00dfb5df
mov eax, dword [0xdd2074]
xor esi, 0xf83905d4
mov dword [ebp - 0x70], eax
mov edx, edi
mov ax, word [0xdd2078]
mov word [ebp - 0x6c], ax
imul eax, esi, 0xf7cacb7
push 0x74
pop esi
push 9
pop edi
and eax, 0x1a30d6b2
imul ecx, eax, 0x1103f1c2
add ecx, 0x8f82db1
lea eax, [esi - 0x30]
cmp ax, di
ja 0xdfee64
add edx, 2
movzx eax, word [edx]
mov esi, eax
test ax, ax
jne 0xdfee4d
jmp 0xdfee6a
or ecx, 0x542bb7f8
add ecx, 0x746737f4
mov dword [ebp - 8], ecx
call fcn.00dfb84c
mov edi, ebx
mov eax, ebx
mov byte [ebp + eax - 0x198], al
inc eax
cmp eax, 0x100
jb 0xdfee7c
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x198]
push 5
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x70]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x198]
mov byte [ebp + esi - 0x198], al
inc esi
mov byte [ebp + edi - 0x198], bl
cmp esi, 0x100
jb 0xdfee8d
xor ebx, ebx
mov dword [ebp - 4], ebx
mov edi, ebx
mov esi, ebx
mov ebx, dword [ebp - 8]
lea eax, [edi + 1]
or ebx, 0x450c7dfa
movzx edi, al
mov eax, dword [ebp - 4]
mov cl, byte [ebp + edi - 0x198]
movzx edx, cl
add eax, edx
movzx eax, al
mov dword [ebp - 4], eax
mov al, byte [ebp + eax - 0x198]
mov byte [ebp + edi - 0x198], al
mov eax, dword [ebp - 4]
mov byte [ebp + eax - 0x198], cl
movzx eax, byte [ebp + edi - 0x198]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x198]
xor al, byte [ebp + esi - 0x20]
mov byte [ebp + esi - 0x54], al
inc esi
cmp esi, 0x18
jb 0xdfeed6
mov esi, 0xdd1aec
mov dword [ebp - 8], ebx
lea edi, [ebp - 0x74]
mov dword [ebp - 0x34], 0xd74ac340
xor ebx, ebx
mov dword [ebp - 0x30], 0x4853fbfc
mov byte [ebp - 0x3c], bl
mov ecx, ebx
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x2c], 0x3ad016ed
mov dword [ebp - 0x28], 0x8297cfe4
mov dword [ebp - 0x24], 0xcd179393
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x20], 0x75ea8058
mov dword [ebp - 0x1c], 0xbe5fbd94
mov dword [ebp - 0x18], 0x24693259
movsb byte es:[edi], byte [esi]
mov esi, dword [ebp - 8]
mov edi, 0xdd3190
mov dword [ebp - 0x14], 0x7972fd44
xor esi, 0x1ef5f1af
mov dword [ebp - 0x10], 0x3d19ea41
mov dword [ebp - 0xc], 0x45b0d7ee
mov dword [ebp - 0x38], edi
mov edx, edi
mov al, 0x6f
sub al, 0x30
cmp al, 9
ja 0xdfefb7
inc edx
mov al, byte [edx]
test al, al
jne 0xdfefa8
jmp 0xdfefbd
add esi, 0x40cad64f
imul esi, esi, 0xdf50542d
mov byte [ebp + ecx - 0x198], cl
inc ecx
cmp ecx, 0x100
jb 0xdfefa4
xor ebx, ebx
mov edi, ebx
push 0x74
mov edx, 0x16e3
mov eax, 0xdd34d0
pop ecx
add edx, ecx
lea eax, [eax + 2]
cmp edx, 0x544
ja 0xdfeffa
movzx ecx, word [eax]
test ecx, ecx
jne 0xdfefe4
jmp 0xdff005
call fcn.00dfb84c
and esi, 0x3e52e8d9
mov dl, byte [ebp + edi - 0x198]
mov eax, edi
and eax, 7
movzx ecx, dl
and esi, 0xffef7bfb
or esi, 0xc8ac3bfb
movzx eax, byte [ebp + eax - 0x74]
add eax, ebx
add ecx, eax
movzx ebx, cl
mov al, byte [ebp + ebx - 0x198]
mov byte [ebp + edi - 0x198], al
inc edi
mov byte [ebp + ebx - 0x198], dl
cmp edi, 0x100
jb 0xdfefd7
xor ebx, ebx
or esi, 0xe6afe883
mov dword [ebp - 8], esi
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x198]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x198]
mov byte [ebp + edi - 0x198], al
mov byte [ebp + ebx - 0x198], cl
movzx eax, byte [ebp + edi - 0x198]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x198]
xor al, byte [ebp + esi - 0x34]
mov byte [ebp + esi - 0x214], al
inc esi
cmp esi, 0x2c
jb 0xdff059
mov esi, 0xdd3090
mov dword [ebp - 4], 0x622ee21e
lea edi, [ebp - 0x78]
xor ebx, ebx
mov byte [ebp - 0x1e8], bl
mov eax, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov edi, ebx
mov byte [ebp + eax - 0x198], al
inc eax
cmp eax, 0x100
jb 0xdff0c9
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x198]
push 0xd
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x78]
add eax, edi
add ecx, eax
movzx edi, cl
mov al, byte [ebp + edi - 0x198]
mov byte [ebp + esi - 0x198], al
inc esi
mov byte [ebp + edi - 0x198], bl
cmp esi, 0x100
jb 0xdff0da
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x198]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x198]
mov byte [ebp + edi - 0x198], al
mov byte [ebp + ebx - 0x198], cl
movzx eax, byte [ebp + edi - 0x198]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x198]
xor al, byte [ebp + esi - 4]
mov byte [ebp + esi - 0x70], al
inc esi
cmp esi, 4
jb 0xdff11d
xor ebx, ebx
mov dword [ebp - 0x14], 0x5f
mov byte [ebp - 0x6c], bl
mov ecx, 0x1c00
mov dword [ebp - 0x10], 0x13
mov eax, ebx
mov dword [ebp - 0xc], 0x178e
sub ecx, dword [ebp + eax*4 - 0x14]
inc eax
cmp eax, 3
jl 0xdff18b
mov dword [ebp - 0x68], ecx
mov eax, ebx
mov ecx, ebx
mov dword [ebp - 0x14], 0x52
mov dword [ebp - 0x10], 0x25
mov dword [ebp - 0xc], 0xffffff89
sub ecx, dword [ebp + eax*4 - 0x14]
inc eax
cmp eax, 3
jl 0xdff1b1
push 0x41
mov dword [ebp - 0x90], ecx
mov eax, ebx
mov dword [ebp - 0x10], 0x18
mov dword [ebp - 0xc], 0x3a7
pop ecx
add ecx, dword [ebp + eax*4 - 0x10]
inc eax
cmp eax, 2
jl 0xdff1d4
mov dword [ebp - 0x10], 0x47
mov eax, ebx
mov dword [ebp - 0xc], 0xffffff70
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x14], 0x3a
movups xmm0, xmmword [ebp - 0x18]
mov dword [ebp - 0x8c], ecx
mov ecx, dword [ebp - 8]
psubd xmm2, xmm0
mov dword [ebp - 0x10], 6
movaps xmm0, xmm2
mov dword [ebp - 0xc], 0xffffffa2
psrldq xmm0, 8
add ecx, 0xc12f9ef
paddd xmm2, xmm0
mov dword [0xe1a8c8], ecx
movups xmm0, xmm2
psrldq xmm0, 4
paddd xmm2, xmm0
push 0x58
movd dword [ebp - 0x94], xmm2
pop ecx
add ecx, dword [ebp + eax*4 - 0x10]
inc eax
cmp eax, 2
jl 0xdff24a
push 0x2f
mov dword [ebp - 0x98], ecx
pop eax
mov dword [ebp - 0x14], 0x36
mov dword [ebp - 0x10], 0x39
mov dword [ebp - 0xc], 0xffffff62
add eax, dword [ebp + ebx*4 - 0x14]
inc ebx
cmp ebx, 3
jl 0xdff272
mov ecx, dword [ebp - 0x84]
add ecx, ecx
mov dword [ebp - 0xc], eax
call fcn.00dee8ce
mov ecx, dword [ebp - 0x88]
add ecx, ecx
mov dword [ebp - 8], eax
call fcn.00dee8ce
push 0x6f
mov dword [ebp - 4], eax
pop ecx
sub cl, 0x30
cmp cl, 9
ja 0xdff2c0
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
mov al, byte [eax]
mov cl, al
test al, al
jne 0xdff2a2
mov eax, dword [0xe1a8c8]
jmp 0xdff2ca
mov eax, dword [0xe1a8c8]
xor eax, 0xddd4208
sub eax, 0x49f69538
mov dword [0xe1a8c8], eax
call fcn.00dfb6e9
lea ecx, [ebp - 0x1e4]
call fcn.00e0523e
lea ecx, [ebp - 0x1b4]
mov ebx, eax
call fcn.00e0523e
sub dword [0xe1a8c8], 0x3634d50c
lea ecx, [ebp - 0x54]
mov edi, eax
call fcn.00e0523e
mov ecx, dword [ebp - 8]
mov edx, ebx
mov esi, eax
call fcn.00e05d45
mov ecx, dword [ebp - 8]
mov edx, edi
call fcn.00e05d45
mov ecx, dword [ebp - 8]
mov edx, esi
call fcn.00e05d45
push dword [ebp - 0x68]
lea ecx, [ebp - 0x70]
push dword [ebp - 4]
push dword [ebp - 8]
call fcn.00dee9eb
mov edx, eax
lea ecx, [ebp - 0x214]
call fcn.00dee9ca
call eax
mov ecx, dword [ebp - 0x8c]
lea eax, [ecx + ecx]
push eax
push dword [ebp - 0x90]
push dword [ebp - 8]
call fcn.00e05117
mov ecx, dword [ebp - 8]
call fcn.00dee98d
mov ecx, ebx
call fcn.00e05897
push eax
push dword [ebp - 0x94]
push ebx
call fcn.00e05117
mov ecx, edi
call fcn.00e05897
push eax
push dword [ebp - 0x98]
push edi
call fcn.00e05117
mov ecx, esi
call fcn.00e05897
push eax
push dword [ebp - 0xc]
push esi
call fcn.00e05117
add esp, 0x30
mov ecx, ebx
call fcn.00dee98d
mov ecx, edi
call fcn.00dee98d
mov ecx, esi
call fcn.00dee98d
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
leave
ret