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

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0xc
mov ebp, ecx
mov eax, 0x976020
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
push ecx
mov ecx, 0x12
mov dx, word [eax]
xchg dh, dl
mov word [ebp], dx
add eax, 2
mov dx, word [eax]
xor dx, word [ebp]
add ebp, 2
mov word [ebp], dx
add eax, 2
add ebp, 2
dec ecx
jne 0x763fec
pop ecx
mov ebp, ecx
jmp 0x764051
push 0x1000
push 0x974f20
lea eax, [ebp + 0x48]
push eax
call fcn.0086b6b8
add esp, 0xc
mov dword [esp + 8], ebp
mov eax, ebp
xor ecx, ecx
lea edx, [ebp + 0x48]
mov dword [esp + 4], edx
mov ebx, eax
movzx ebp, byte [ecx + edi]
shl ebp, 0x18
lea eax, [ecx + 1]
cdq
idiv esi
movzx eax, byte [edx + edi]
shl eax, 0x10
and eax, 0xff0000
or ebp, eax
and ebp, 0xffff00ff
lea eax, [ecx + 2]
cdq
idiv esi
movzx eax, byte [edx + edi]
shl eax, 8
and eax, 0xff00
or ebp, eax
and ebp, 0xffffff00
lea eax, [ecx + 3]
cdq
idiv esi
add ecx, 4
movzx eax, byte [edx + edi]
or ebp, eax
mov eax, ecx
cdq
idiv esi
xor dword [ebx], ebp
mov ebp, dword [esp + 4]
mov ecx, edx
add ebx, 4
cmp ebp, ebx
ja 0x764078
mov ebp, dword [esp + 8]
xor esi, esi
xor ecx, ecx
mov edi, ebp
lea edx, [ebp + 0x48]
xor esi, dword [ebp]
mov eax, esi
shr eax, 0x18
mov eax, dword [ebp + eax*4 + 0x48]
mov ebx, esi
shr ebx, 0x10
movzx ebx, bl
add eax, dword [ebp + ebx*4 + 0x448]
mov ebx, esi
shr ebx, 8
movzx ebx, bl
xor eax, dword [ebp + ebx*4 + 0x848]
mov ebx, esi
and ebx, 0xff
add eax, dword [ebp + ebx*4 + 0xc48]
xor eax, dword [ebp + 4]
xor ecx, eax
mov ebx, ecx
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 8]
xor esi, ebx
mov ebx, esi
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0xc]
xor ecx, ebx
mov ebx, ecx
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x10]
xor esi, ebx
mov ebx, esi
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x14]
xor ecx, ebx
mov ebx, ecx
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x18]
xor esi, ebx
mov ebx, esi
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x1c]
xor ecx, ebx
mov ebx, ecx
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x20]
xor esi, ebx
mov ebx, esi
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x24]
xor ecx, ebx
mov ebx, ecx
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x28]
xor esi, ebx
mov ebx, esi
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x2c]
xor ecx, ebx
mov ebx, ecx
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x30]
xor esi, ebx
mov ebx, esi
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x34]
xor ecx, ebx
mov ebx, ecx
shr ebx, 0x18
mov ebx, dword [ebp + ebx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add ebx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor ebx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add ebx, dword [ebp + eax*4 + 0xc48]
xor ebx, dword [ebp + 0x38]
xor esi, ebx
mov eax, esi
shr eax, 0x18
mov eax, dword [ebp + eax*4 + 0x48]
mov ebx, esi
shr ebx, 0x10
movzx ebx, bl
add eax, dword [ebp + ebx*4 + 0x448]
mov ebx, esi
shr ebx, 8
movzx ebx, bl
xor eax, dword [ebp + ebx*4 + 0x848]
mov ebx, esi
and ebx, 0xff
add eax, dword [ebp + ebx*4 + 0xc48]
xor eax, dword [ebp + 0x3c]
xor eax, ecx
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ebp + ecx*4 + 0x48]
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
add ecx, dword [ebp + ebx*4 + 0x448]
mov ebx, eax
shr ebx, 8
movzx ebx, bl
xor ecx, dword [ebp + ebx*4 + 0x848]
movzx ebx, al
add ecx, dword [ebp + ebx*4 + 0xc48]
xor ecx, dword [ebp + 0x40]
xor ecx, esi
mov esi, dword [ebp + 0x44]
xor esi, eax
mov dword [edi], esi
mov dword [edi + 4], ecx
add edi, 8
cmp edx, edi
ja 0x7640e3
mov eax, ebp
lea edx, [ebp + 0x1000]
mov dword [esp + 4], eax
mov dword [esp], edx
lea edi, [eax + 0x48]
lea ebx, [eax + 0x448]
xor esi, dword [ebp]
mov eax, esi
shr eax, 0x18
mov eax, dword [ebp + eax*4 + 0x48]
mov edx, esi
shr edx, 0x10
movzx edx, dl
add eax, dword [ebp + edx*4 + 0x448]
mov edx, esi
shr edx, 8
movzx edx, dl
xor eax, dword [ebp + edx*4 + 0x848]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 + 0xc48]
xor eax, dword [ebp + 4]
xor ecx, eax
mov edx, ecx
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 8]
xor esi, edx
mov edx, esi
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0xc]
xor ecx, edx
mov edx, ecx
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x10]
xor esi, edx
mov edx, esi
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x14]
xor ecx, edx
mov edx, ecx
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x18]
xor esi, edx
mov edx, esi
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x1c]
xor ecx, edx
mov edx, ecx
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x20]
xor esi, edx
mov edx, esi
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x24]
xor ecx, edx
mov edx, ecx
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x28]
xor esi, edx
mov edx, esi
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x2c]
xor ecx, edx
mov edx, ecx
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x30]
xor esi, edx
mov edx, esi
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, esi
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, esi
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
mov eax, esi
and eax, 0xff
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x34]
xor ecx, edx
mov edx, ecx
shr edx, 0x18
mov edx, dword [ebp + edx*4 + 0x48]
mov eax, ecx
shr eax, 0x10
movzx eax, al
add edx, dword [ebp + eax*4 + 0x448]
mov eax, ecx
shr eax, 8
movzx eax, al
xor edx, dword [ebp + eax*4 + 0x848]
movzx eax, cl
add edx, dword [ebp + eax*4 + 0xc48]
xor edx, dword [ebp + 0x38]
xor esi, edx
mov eax, esi
shr eax, 0x18
mov eax, dword [ebp + eax*4 + 0x48]
mov edx, esi
shr edx, 0x10
movzx edx, dl
add eax, dword [ebp + edx*4 + 0x448]
mov edx, esi
shr edx, 8
movzx edx, dl
xor eax, dword [ebp + edx*4 + 0x848]
mov edx, esi
and edx, 0xff
add eax, dword [ebp + edx*4 + 0xc48]
xor eax, dword [ebp + 0x3c]
xor eax, ecx
mov ecx, eax
shr ecx, 0x18
mov ecx, dword [ebp + ecx*4 + 0x48]
mov edx, eax
shr edx, 0x10
movzx edx, dl
add ecx, dword [ebp + edx*4 + 0x448]
mov edx, eax
shr edx, 8
movzx edx, dl
xor ecx, dword [ebp + edx*4 + 0x848]
movzx edx, al
add ecx, dword [ebp + edx*4 + 0xc48]
xor ecx, dword [ebp + 0x40]
xor ecx, esi
mov esi, dword [ebp + 0x44]
xor esi, eax
mov dword [edi], esi
mov dword [edi + 4], ecx
add edi, 8
cmp ebx, edi
ja 0x764495
mov eax, dword [esp + 4]
mov edx, dword [esp]
add eax, 0x400
cmp edx, eax
jg 0x764485
add esp, 0xc
pop ebx
pop ebp
pop esi
pop edi
ret 8