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

Disassembly:
push ecx
and byte [0x67ef63], 0
push ebx
push ebp
push esi
push edi
push 1
xor ecx, ecx
pop eax
mov edx, eax
and dl, 0x80
neg dl
sbb dl, dl
mov bl, al
shl bl, 1
mov byte [ecx + 0x67ee5c], al
mov byte [eax + 0x67ef5c], cl
movzx esi, bl
and edx, 0x1b
movzx edx, dl
xor edx, esi
movzx eax, al
xor eax, edx
inc ecx
cmp ecx, 0x100
jb 0x413a60
and byte [0x67ef5d], 0
push 1
pop eax
mov ecx, 0x67ec34
mov edx, eax
and dl, 0x80
neg dl
sbb dl, dl
mov dword [ecx], eax
shl al, 1
movzx eax, al
add ecx, 4
and edx, 0x1b
movzx edx, dl
xor eax, edx
cmp ecx, 0x67ec5c
jl 0x413aa1
xor ebx, ebx
test ebx, ebx
je 0x413add
movzx eax, byte [ebx + 0x67ef5c]
mov ecx, 0x67ef5b
sub ecx, eax
movzx eax, byte [ecx]
jmp 0x413adf
xor eax, eax
xor edx, edx
mov dl, al
mov cl, dl
shl cl, 1
movzx ecx, cl
mov eax, edx
shr eax, 7
movzx eax, al
or eax, ecx
xor edx, eax
mov ecx, eax
shr ecx, 7
shl al, 1
movzx ecx, cl
movzx eax, al
or ecx, eax
xor edx, ecx
mov eax, ecx
shl cl, 1
shr eax, 7
movzx ecx, cl
movzx eax, al
or eax, ecx
xor edx, eax
mov ecx, eax
shr ecx, 7
shl al, 1
movzx ecx, cl
movzx eax, al
or ecx, eax
xor ecx, edx
xor ecx, 0x63
mov byte [ebx + 0x67ed5c], cl
mov byte [ecx + 0x67ec5c], bl
inc ebx
cmp ebx, 0x100
jb 0x413ac6
xor ebx, ebx
movzx edi, byte [ebx + 0x67ed5c]
mov esi, ebx
push 8
shl esi, 2
push edi
mov dword [esi + 0x67bc34], edi
call fcn.005fd038
push 0x10
push edi
mov dword [esi + 0x67c034], eax
call fcn.005fd038
push 0x18
push edi
mov dword [esi + 0x67c434], eax
call fcn.005fd038
add esp, 0x18
test edi, edi
mov dword [esi + 0x67c834], eax
je 0x413ba7
movzx ecx, byte [0x67ef5e]
movzx eax, byte [edi + 0x67ef5c]
add eax, ecx
cdq
mov ecx, 0xff
idiv ecx
movzx ecx, byte [edx + 0x67ee5c]
jmp 0x413ba9
xor ecx, ecx
test edi, edi
je 0x413bce
movzx edx, byte [0x67ef5f]
movzx eax, byte [edi + 0x67ef5c]
add eax, edx
cdq
mov ebp, 0xff
idiv ebp
movzx eax, byte [edx + 0x67ee5c]
jmp 0x413bd0
xor eax, eax
shl eax, 8
or eax, edi
shl eax, 8
or eax, edi
shl eax, 8
or eax, ecx
mov edi, eax
push 8
push edi
mov dword [esi + 0x67dc34], edi
call fcn.005fd038
push 0x10
push edi
mov dword [esi + 0x67e034], eax
call fcn.005fd038
push 0x18
push edi
mov dword [esi + 0x67e434], eax
call fcn.005fd038
movzx edi, byte [ebx + 0x67ec5c]
push 8
push edi
mov dword [esi + 0x67e834], eax
mov dword [esi + 0x67ac34], edi
call fcn.005fd038
push 0x10
push edi
mov dword [esi + 0x67b034], eax
call fcn.005fd038
push 0x18
push edi
mov dword [esi + 0x67b434], eax
call fcn.005fd038
xor ebp, ebp
add esp, 0x30
cmp edi, ebp
mov dword [esi + 0x67b834], eax
je 0x413c76
movzx ecx, byte [0x67ef6a]
movzx eax, byte [edi + 0x67ef5c]
add eax, ecx
cdq
mov ecx, 0xff
idiv ecx
movzx eax, byte [edx + 0x67ee5c]
mov dword [esp + 0x10], eax
jmp 0x413c7a
mov dword [esp + 0x10], ebp
cmp edi, ebp
je 0x413c9d
movzx ecx, byte [0x67ef65]
movzx eax, byte [edi + 0x67ef5c]
add eax, ecx
cdq
mov ecx, 0xff
idiv ecx
movzx ebp, byte [edx + 0x67ee5c]
test edi, edi
je 0x413cc2
movzx ecx, byte [0x67ef69]
movzx eax, byte [edi + 0x67ef5c]
add eax, ecx
cdq
mov ecx, 0xff
idiv ecx
movzx ecx, byte [edx + 0x67ee5c]
jmp 0x413cc4
xor ecx, ecx
test edi, edi
je 0x413ce9
movzx eax, byte [edi + 0x67ef5c]
movzx edx, byte [0x67ef67]
add eax, edx
cdq
mov edi, 0xff
idiv edi
movzx eax, byte [edx + 0x67ee5c]
jmp 0x413ceb
xor eax, eax
shl eax, 8
or eax, ecx
shl eax, 8
or eax, ebp
shl eax, 8
or eax, dword [esp + 0x10]
push 8
mov edi, eax
push edi
mov dword [esi + 0x67cc34], edi
call fcn.005fd038
push 0x10
push edi
mov dword [esi + 0x67d034], eax
call fcn.005fd038
push 0x18
push edi
mov dword [esi + 0x67d434], eax
call fcn.005fd038
add esp, 0x18
inc ebx
cmp ebx, 0x100
mov dword [esi + 0x67d834], eax
jl 0x413b43
pop edi
pop esi
pop ebp
mov byte [0x67f05c], 1
pop ebx
pop ecx
ret