Function at 0x419e60
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xb0
mov dword [esp + 0x10], 0x83798562
mov dword [esp + 0x14], 0x8f71817e
mov dword [esp + 0x18], 0x8b638d70
mov dword [esp + 0x1c], 0x97638963
mov dword [esp + 0x20], 0x93789572
mov dword [esp + 0x24], 0x9f7a9179
mov dword [esp + 0x28], 0x9b679d71
mov dword [esp + 0x2c], 0xa764996e
lea eax, [esp + 0x30]
mov word [esp + 0x30], 0xa5a6
mov dword [esp + 0x32], 0
mov dword [esp + 0x36], 0
mov dword [esp + 0x3a], 0
mov dword [esp + 0x3e], 0
mov dword [esp + 0x42], 0
mov dword [esp + 0x46], 0
mov dword [esp + 0x74], 0
mov ecx, dword [esp + 0x74]
cmp ecx, 0x39
ja 0x419f44
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x74]
movzx esi, byte [esp + edx + 0x10]
lea edx, [ecx + esi]
add edx, 0xf091a541
add ecx, 0xf091a541
and ecx, esi
add ecx, ecx
mov esi, edx
not esi
and esi, ecx
not ecx
and ecx, edx
sub ecx, esi
add cl, 0x39
mov edx, dword [esp + 0x74]
mov byte [esp + edx + 0x10], cl
inc dword [esp + 0x74]
mov ecx, dword [esp + 0x74]
cmp ecx, 0x3a
jb 0x419f00
mov ebx, dword [ebp + 8]
lea edi, [esp + 0x74]
lea edx, [esp + 0x10]
mov ecx, 8
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x94]
mov ecx, 1
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + 4]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + eax + 2], 0
lea eax, [eax + 2]
jne 0x419f80
cmp eax, 0xffffffdd
jge 0x419f97
mov eax, 0xffffffff
jmp 0x419f9a
add eax, 0x22
push eax
call fcn.00435ac0
add esp, 4
mov esi, eax
movzx ecx, word [edi]
test cx, cx
je 0x419fd1
add edi, 2
mov eax, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edi]
add edi, 2
test cx, cx
jne 0x419fc0
mov word [eax], 0
movzx ecx, word [esp + 0x74]
test cx, cx
je 0x41a001
lea edx, [esp + 0x76]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x419ff0
mov word [eax], 0
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], esi
mov eax, dword [ebp + 0xc]
mov dword [esp + 0xa0], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0xa4], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0xa8], eax
mov dword [esp + 0x10], 0xdbadd9ad
mov dword [esp + 0x14], 0xe7d3e59e
mov dword [esp + 0x18], 0xe39ae18d
mov dword [esp + 0x1c], 0xef83ed90
mov dword [esp + 0x20], 0xeb99e99e
mov dword [esp + 0x24], 0xf781f59d
mov dword [esp + 0x28], 0xf3d9f186
mov dword [esp + 0x2c], 0xffd5fdd7
mov dword [esp + 0x30], 0xfb9cf9d2
mov dword [esp + 0x34], 0x7750579
mov dword [esp + 0x38], 0x370016d
mov dword [esp + 0x3c], 0xf790d4f
mov dword [esp + 0x40], 0xb76097e
mov dword [esp + 0x44], 0x176e1579
mov dword [esp + 0x48], 0x135b116c
mov dword [esp + 0x4c], 0x1f5b1d70
mov dword [esp + 0x50], 0x1b1a1932
mov word [esp + 0x64], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0xc]
cmp eax, 0x55
ja 0x41a147
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0xc]
movzx edx, byte [esp + eax + 0x10]
lea eax, [ecx + edx]
add eax, 0x4bf43dc
add ecx, 0x4bf43dc
and ecx, edx
add ecx, ecx
sub eax, ecx
mov ecx, eax
or ecx, 0xfb
and eax, 0xfb
add eax, ecx
inc al
mov ecx, dword [esp + 0xc]
mov byte [esp + ecx + 0x10], al
inc dword [esp + 0xc]
mov eax, dword [esp + 0xc]
cmp eax, 0x56
jb 0x41a100
lea eax, [esp + 0x98]
push eax
push 0x41a4f0
lea eax, [esp + 0x18]
push eax
push esi
call fcn.0041aa20
add esp, 0x10
mov ebx, eax
mov eax, dword [0x442c00]
mov ecx, 0x1828650
xor ecx, dword [0x442c08]
add eax, ecx
inc eax
jmp eax