Function at 0x698607
Capabilities:
Encrypt data using rc4 prga

Disassembly:
imul dword [0x7768d0]
xor ebx, ebx
mov dword [0x776ad0], eax
mov dword [0x776ad4], ebx
mov dword [0x776ad8], ebx
mov dword [0x776adc], ebx
mov dword [0x776ae0], ebx
mov dword [0x776ae4], ebx
mov dword [0x776ae8], ebx
mov dword [0x776aec], ebx
mov dword [0x776af0], ebx
mov dword [0x776af4], ebx
mov dword [0x776af8], ebx
mov dword [0x776afc], ebx
mov dword [0x776b00], ebx
mov dword [0x776b04], ebx
mov dword [0x776b08], ebx
mov dword [0x776b0c], ebx
mov dword [0x776b10], ebx
mov dword [0x776b14], ebx
mov dword [0x776b18], ebx
mov dword [0x776b1c], ebx
mov dword [0x776b20], ebx
mov dword [0x776b24], ebx
mov dword [0x776b28], ebx
mov dword [0x776b2c], ebx
mov dword [0x776b30], ebx
mov dword [0x776b34], ebx
mov dword [0x776b38], ebx
mov dword [0x776b3c], ebx
mov dword [0x776b40], ebx
mov dword [0x776b44], ebx
mov dword [0x776b48], ebx
mov dword [0x776b4c], ebx
mov dword [0x776b50], ebx
mov dword [0x776b54], ebx
mov dword [0x776b58], ebx
mov dword [0x776b5c], ebx
mov dword [0x776b60], ebx
mov dword [0x776b64], ebx
mov dword [0x776b68], ebx
mov dword [0x776b6c], ebx
mov dword [0x776b70], ebx
mov dword [0x776b74], ebx
mov dword [0x776b78], ebx
mov dword [0x776b7c], ebx
mov dword [0x776b80], ebx
mov dword [0x776b84], ebx
mov dword [0x776b88], ebx
mov dword [0x776b8c], ebx
mov dword [0x776b90], ebx
mov dword [0x776b94], ebx
mov dword [0x776b98], ebx
mov dword [0x776b9c], ebx
mov dword [0x776ba0], ebx
mov dword [0x776ba4], ebx
mov dword [0x776ba8], ebx
mov dword [0x776bac], ebx
mov dword [0x776bb0], ebx
mov dword [0x776bb4], ebx
mov dword [0x776bb8], ebx
mov dword [0x776bbc], ebx
mov dword [0x776bc0], ebx
mov dword [0x776bc4], ebx
mov dword [0x776bc8], ebx
mov dword [0x776bcc], ebx
xor ebx, ebx
mov bl, 0x3f
mov edx, ecx
shr edx, 5
mov eax, dword [ebp + edx*4]
mov edx, dword [ebp + edx*4 + 4]
shld eax, edx, cl
shr eax, 0xf
mov edi, eax
cmp eax, 0x8000
jl 0x69881c
shr eax, 0xd
mov edx, dword [eax*4 + 0x8041d0]
cmp dh, 0x41
je 0x6988af
mov eax, edx
ja 0x6988bf
sar eax, 0x10
mov esi, 0x10
sub bl, dh
sub esi, eax
bt edi, esi
sbb edi, edi
and edx, 0xff
xor edx, edi
inc ecx
sub edx, edi
add ecx, eax
mov eax, dword [ebx*4 + 0x8040e4]
mov esi, ecx
shr esi, 5
mov edi, dword [eax*4 + 0x7768d0]
imul edx, edi
mov dword [eax*4 + 0x776ad0], edx
mov edi, dword [ebp + esi*4]
mov esi, dword [ebp + esi*4 + 4]
shld edi, esi, cl
shr edi, 0xf
mov eax, edi
cmp edi, 0x8000
jge 0x6987ae
cmp eax, 0x800
jl 0x69882f
shr eax, 9
mov edx, dword [eax*4 + 0x804200]
jmp 0x6987b8
cmp eax, 0x400
jl 0x698845
shr eax, 7
mov edx, dword [eax*4 + 0x8042e0]
jmp 0x6987b8
cmp eax, 0x200
jl 0x69885b
shr eax, 5
mov edx, dword [eax*4 + 0x8042e0]
jmp 0x6987b8
cmp eax, 0x100
jl 0x698871
shr eax, 4
mov edx, dword [eax*4 + 0x804320]
jmp 0x6987b8
cmp eax, 0x80
jl 0x698887
shr eax, 3
mov edx, dword [eax*4 + 0x804360]
jmp 0x6987b8
cmp eax, 0x40
jl 0x69889b
shr eax, 2
mov edx, dword [eax*4 + 0x8043a0]
jmp 0x6987b8
cmp eax, 0x20
jl 0x6988af
shr eax, 1
mov edx, dword [eax*4 + 0x8043e0]
jmp 0x6987b8
sar edx, 0x10
add ecx, edx
mov dword [0x80405c], ecx
ret
sar edx, 0x10
add ecx, edx
mov edx, ecx
shr edx, 5
mov eax, dword [ebp + edx*4]
mov edx, dword [ebp + edx*4 + 4]
shld eax, edx, cl
shr eax, 0x12
add ecx, 0xe
sub bl, ah
and eax, 0xff
jne 0x6988fb
mov edx, ecx
shr edx, 5
mov eax, dword [ebp + edx*4]
mov edx, dword [ebp + edx*4 + 4]
shld eax, edx, cl
shr eax, 0x18
add ecx, 8
jmp 0x698926
cmp eax, 0x80
jne 0x69891f
mov edx, ecx
shr edx, 5
mov eax, dword [ebp + edx*4]
mov edx, dword [ebp + edx*4 + 4]
shld eax, edx, cl
shr eax, 0x18
add ecx, 8
sub eax, 0x100
jmp 0x698926
jle 0x698926
sub eax, 0x100
mov edx, eax
dec bl
jmp 0x6987e7