Function at 0xadca98
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa
Manually build aes constants

Disassembly:
sub esp, 0x208
push ebx
push ebp
mov cl, 1
push esi
push edi
xor eax, eax
mov byte [esp + 0x10], cl
mov edx, dword [esp + 0x10]
mov byte [esp + eax + 0x118], cl
and edx, 0xff
mov bl, cl
mov byte [esp + edx + 0x18], al
mov dl, cl
and dl, 0x80
inc eax
neg dl
sbb dl, dl
and edx, 0x1b
shl bl, 1
xor dl, bl
xor cl, dl
cmp eax, 0x100
mov byte [esp + 0x10], cl
jl 0xadcaaa
mov cl, 1
mov eax, 0x10082ba8
mov byte [esp + 0x10], cl
mov edx, dword [esp + 0x10]
add eax, 4
and edx, 0xff
shl edx, 0x18
mov dword [eax - 4], edx
mov dl, cl
and dl, 0x80
neg dl
sbb dl, dl
and edx, 0x1b
shl cl, 1
xor cl, dl
cmp eax, 0x10082bd0
mov byte [esp + 0x10], cl
jl 0xadcaea
mov dword [0x10084fd0], 0x63
mov dword [0x10083d5c], 0
mov esi, 1
mov edi, 0x10084fd4
xor eax, eax
lea ecx, [esp + 0x217]
mov al, byte [esp + esi + 0x18]
add edi, 4
sub ecx, eax
mov dl, byte [ecx]
mov al, dl
mov cl, dl
shr al, 7
shl cl, 1
or al, cl
mov cl, al
xor dl, al
shr cl, 7
shl al, 1
or cl, al
mov al, cl
xor dl, cl
shr al, 7
shl cl, 1
or al, cl
mov cl, al
xor dl, al
shr cl, 7
shl al, 1
or cl, al
xor cl, dl
xor cl, 0x63
mov byte [esp + 0x10], cl
mov eax, dword [esp + 0x10]
and eax, 0xff
mov dword [edi - 4], eax
mov dword [eax*4 + 0x10083bd0], esi
inc esi
cmp edi, 0x100853d0
jl 0xadcb36
xor ecx, ecx
mov al, byte [ecx + 0x10084fd0]
mov dl, al
mov byte [esp + 0x10], al
and dl, 0x80
neg dl
sbb dl, dl
and edx, 0x1b
shl al, 1
xor dl, al
mov byte [esp + 0x14], dl
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
and edx, 0xff
and esi, 0xff
mov eax, esi
shl eax, 8
xor eax, edx
shl eax, 8
xor eax, edx
shl eax, 8
xor eax, esi
xor eax, edx
mov edx, eax
mov dword [ecx + 0x10084bd0], eax
shl edx, 0x18
shr eax, 8
or edx, eax
mov eax, edx
mov dword [ecx + 0x100847d0], edx
shl eax, 0x18
shr edx, 8
or eax, edx
mov edx, eax
mov dword [ecx + 0x100843d0], eax
shl edx, 0x18
shr eax, 8
or edx, eax
mov al, byte [ecx + 0x10083bd0]
test al, al
mov dword [ecx + 0x10083fd0], edx
mov byte [esp + 0x14], al
je 0xadcc9d
mov eax, dword [esp + 0x14]
xor edx, edx
and eax, 0xff
mov edi, 0xff
xor ebx, ebx
mov dl, byte [esp + eax + 0x18]
mov eax, dword [esp + 0x23]
mov esi, edx
and eax, 0xff
add eax, esi
cdq
idiv edi
xor eax, eax
mov al, byte [esp + edx + 0x118]
mov ebp, eax
mov eax, dword [esp + 0x25]
and eax, edi
add eax, esi
cdq
idiv edi
mov eax, dword [esp + 0x21]
and eax, edi
add eax, esi
mov bl, byte [esp + edx + 0x118]
cdq
idiv edi
xor eax, eax
mov al, byte [esp + edx + 0x118]
mov edi, eax
mov eax, dword [esp + 0x26]
and eax, 0xff
add eax, esi
mov esi, 0xff
cdq
idiv esi
xor eax, eax
mov al, byte [esp + edx + 0x118]
jmp 0xadcca5
xor ebp, ebp
xor ebx, ebx
xor edi, edi
xor eax, eax
shl eax, 8
xor eax, edi
add ecx, 4
shl eax, 8
xor eax, ebx
shl eax, 8
mov edx, eax
xor edx, ebp
mov eax, edx
mov dword [ecx + 0x100837cc], edx
shl eax, 0x18
shr edx, 8
or eax, edx
mov edx, eax
mov dword [ecx + 0x100833cc], eax
shl edx, 0x18
shr eax, 8
or edx, eax
mov eax, edx
mov dword [ecx + 0x10082fcc], edx
shl eax, 0x18
shr edx, 8
or eax, edx
cmp ecx, 0x400
mov dword [ecx + 0x10082bcc], eax
jl 0xadcb9d
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x208
ret