Function at 0x4028d0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push eax
push ecx
nop
push edx
push ebx
push esp
push ebp
push esi
push edi
push ebp
mov ebp, esp
sub esp, 0x64
push ebx
push esi
push edi
mov edi, 7
mov dword [ebp - 0xc], 0xa
mov esi, 0xe
mov dword [ebp - 8], 9
mov eax, esi
add eax, dword [ebp - 8]
sub eax, 0x17
mov dword [ebp - 0x24], eax
and dword [ebp - 0x28], 0
jmp 0x402975
add dword [ebp - 0x28], 0x7a78
mov dword [ebp - 0x20], 0x4aa4fa05
mov dword [ebp - 0x24], 0x13f6
jmp 0x40297e
dec dword [ebp - 0x20]
mov eax, dword [ebp - 8]
sub eax, 9
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x1c], 0x43e000
mov dword [ebp - 0x2c], 0x41a6c0
mov eax, edi
add eax, esi
sub eax, 0x12
mov dword [ebp - 0x10], eax
jmp 0x40295c
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x28]
movzx edx, byte [eax]
movzx ecx, byte [ebp - 0x20]
xor edx, ecx
mov byte [eax], dl
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x10], eax
jb 0x402948
jmp 0x4029ca
mov eax, dword [ebp - 8]
add eax, esi
sub eax, 0x14
cmp eax, dword [ebp - 0x44]
jbe 0x402987
jmp 0x40292e
mov dword [ebp - 0x28], 0x412848
jmp 0x40290b
add dword [ebp - 0x24], 0x2260a
jmp 0x402922
mov eax, esi
sub eax, 0xe
mov dword [ebp - 4], eax
jmp 0x4029a3
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2c]
mov cl, byte [ecx + eax]
mov byte [edx + eax], cl
inc dword [ebp - 4]
cmp dword [ebp - 4], 0x19d34
jb 0x402991
mov dword [ebp - 0x48], 0x4344c0
mov dword [ebp - 0x4c], 0x471000
mov dword [ebp - 0x14], 0x43b0c0
mov dword [ebp - 0x30], 0x10000000
jmp 0x4029d2
inc dword [ebp - 0x44]
jmp 0x402ae9
mov eax, dword [ebp - 8]
sub eax, 9
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
mov cl, byte [ecx + eax]
mov byte [edx + eax], cl
inc dword [ebp - 0x3c]
mov eax, 0x6720
cmp eax, dword [ebp - 0x3c]
ja 0x4029db
mov dword [ebp - 0x50], 0x34000
mov dword [ebp - 0x34], 0x1000
mov ebx, dword [ebp - 0xc]
sub ebx, 0xa
jmp 0x402ad8
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 8]
sub eax, 0xb
add eax, dword [ebp - 0x14]
add eax, ebx
mov dword [ebp - 0x58], eax
jmp 0x402a5e
mov eax, dword [ebp - 0x58]
mov ax, word [eax]
mov word [ebp - 0x54], ax
movzx edx, word [ebp - 0x54]
mov ecx, edi
sub ecx, 3
shl edx, cl
mov word [ebp - 0x52], dx
movzx edx, word [ebp - 0x52]
mov ecx, edi
add ecx, esi
sub ecx, 0x11
sar edx, cl
mov word [ebp - 0x52], dx
movzx edx, word [ebp - 0x54]
mov ecx, esi
sub ecx, 2
sar edx, cl
mov word [ebp - 0x5a], dx
jmp 0x402a69
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x34]
mov dword [ebp - 0x18], eax
jmp 0x402a23
mov eax, dword [ebp - 0xc]
add eax, edi
sub eax, 0x11
movzx edx, word [ebp - 0x54]
cmp eax, edx
je 0x402b6f
mov eax, dword [ebp - 0xc]
sub eax, 0xa
cmp ebx, eax
je 0x402a9a
mov eax, esi
add eax, edi
sub eax, 0x15
movzx edx, word [ebp - 0x52]
cmp eax, edx
je 0x402b6f
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x30]
mov dword [ebp - 0x60], eax
movzx eax, word [ebp - 0x5a]
mov edx, esi
add edx, edi
sub edx, 0x12
cmp eax, edx
jne 0x402aca
mov eax, dword [ebp - 0x14]
mov eax, dword [eax]
movzx edx, word [ebp - 0x52]
add eax, edx
add eax, dword [ebp - 0x18]
mov dword [ebp - 0x64], eax
mov edx, dword [ebp - 0x60]
add edx, dword [eax]
mov dword [eax], edx
mov eax, dword [ebp - 8]
mov edx, eax
add edx, eax
mov eax, edx
sub eax, 0x10
add ebx, eax
mov eax, dword [ebp - 0x14]
cmp ebx, dword [eax + 4]
jb 0x402a10
jmp 0x402b6f
mov eax, esi
add eax, dword [ebp - 0xc]
sub eax, 0x16
cmp eax, dword [ebp - 0x44]
jne 0x402966
inc dword [ebp - 0x20]
jmp 0x402966
mov eax, 0x43d940
cmp eax, dword [ebp - 0x14]
ja 0x4029f7
mov eax, dword [ebp - 8]
lea eax, [esi + eax + 0x431]
mov dword [ebp - 0x38], eax
mov eax, esi
add eax, 0x137a
mov dword [ebp - 0x40], eax
jmp 0x402b44
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0xc]
sub edx, 0x10
add ecx, edx
mul ecx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x40], eax
jmp 0x402b56
mov eax, dword [ebp - 0x38]
mov ecx, esi
add ecx, 9
mul ecx
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x38], eax
jmp 0x402b29
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x38]
add edx, eax
mov ecx, esi
add ecx, dword [ebp - 0xc]
sub ecx, 0x10
add edx, ecx
add eax, edx
mov dword [ebp - 0x40], eax
jmp 0x402b7c
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 4]
add edx, eax
mov dword [ebp - 0x14], edx
jmp 0x402b02
mov eax, dword [ebp - 0xc]
add eax, 0x9a
add dword [ebp - 0x38], eax
pop edi
pop esi
pop ebx
leave
jmp 0x449054