Function at 0x4336c0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebx
push edi
push esi
sub esp, 0x14
mov dword [esp + 0x10], ecx
mov eax, dword [0x49f824]
imul eax, eax, 0x6c0d6474
mov dword [0x49f824], eax
mov eax, dword [0x49df4c]
sar eax, 8
add eax, 0xc838826e
mov edx, dword [0x4a60ec]
mov esi, edx
inc esi
mov dword [0x4a60ec], esi
sub edx, 0x4438ccda
cmp eax, edx
mov dword [esp], ecx
jge 0x433730
mov eax, dword [0x4a3734]
shl eax, 2
mov ecx, 0xa6cd5280
sub ecx, eax
mov dx, word [0x494e6a]
movsx eax, dx
not eax
add ecx, eax
mov eax, dword [0x4a5984]
and eax, ecx
mov dword [0x4a5984], eax
mov eax, 0xc6c4c451
mov ecx, dword [0x49eb84]
sar ecx, 6
or ecx, 0xfa1089a1
cmp eax, ecx
jge 0x43375b
mov eax, dword [0x4a0448]
and eax, 0x8b1ea00f
mov dword [0x4a0448], eax
mov eax, 0x6343bc1e
mov dword [esp + 0xc], 0
mov cx, word [0x494be2]
mov dx, cx
inc edx
mov cx, dx
mov word [0x494be2], cx
movsx edx, cx
mov esi, dword [0x49eb18]
imul edx, esi
cmp eax, edx
jle 0x4337a0
mov eax, dword [0x4aafac]
or eax, 0x4ea56b72
mov dword [0x4aafac], eax
jmp 0x4337a5
cmp dword [esp + 0xc], 0x10
je 0x4339ab
mov eax, 0x770dffff
mov cx, word [0x499b78]
mov dx, cx
add edx, 0x66c0cdb5
mov cx, dx
mov word [0x499b78], cx
mov edx, dword [esp + 0xc]
add edx, edx
mov dword [esp + 8], edx
mov edx, dword [0x4a28d4]
add edx, 0x650e18d6
mov dword [0x4a28d4], edx
mov edx, dword [esp + 0xc]
mov esi, dword [esp]
mov bl, byte [esi + edx + 0x58]
mov byte [esp + 7], bl
mov edx, dword [0x49dbec]
and edx, 0xf9fc3af
mov dword [0x49dbec], edx
movzx edx, byte [esp + 7]
shr edx, 4
mov bl, dl
mov byte [esp + 7], bl
mov edx, dword [0x49f60c]
dec edx
mov dword [0x49f60c], edx
sub edx, 0x99941fe4
add edx, 0xb748fc5b
cmp eax, edx
jl 0x433858
mov ax, word [0x49b064]
mov cx, ax
or ecx, 0x5099
mov ax, cx
mov word [0x49b064], ax
jmp 0x433887
mov eax, 0xef3898f1
mov ecx, dword [0x49de74]
mov edx, dword [0x4aad08]
sub ecx, edx
cmp eax, ecx
je 0x433882
mov eax, dword [0x4a9644]
add eax, 0xf3fa7d8e
mov dword [0x4a9644], eax
jmp 0x433887
mov eax, 0x3dc476cf
movzx ecx, byte [esp + 7]
mov edx, dword [esp]
mov bl, byte [edx + ecx + 0xa8]
mov ecx, dword [esp + 8]
mov byte [edx + ecx + 0xb9], bl
mov si, word [0x498832]
mov cx, si
imul ecx, ecx, 0x114220e5
mov si, cx
mov word [0x498832], si
mov ecx, dword [esp + 8]
inc ecx
mov dword [esp + 8], ecx
mov si, word [0x49433e]
movsx ecx, si
imul ecx, ecx, 0xed8f0f8a
add ecx, 0xf7f54309
mov edi, dword [0x4a2088]
xor edi, ecx
mov dword [0x4a2088], edi
mov ecx, dword [esp + 0xc]
mov bl, byte [edx + ecx + 0x58]
mov byte [esp + 7], bl
mov ecx, dword [0x4a0e20]
cmp eax, ecx
jle 0x433922
mov eax, dword [0x4a131c]
sar eax, 5
or eax, 0x5040da92
mov ecx, dword [0x4a47cc]
and ecx, eax
mov dword [0x4a47cc], ecx
movzx eax, byte [esp + 7]
and eax, 0xf
mov cl, al
mov byte [esp + 7], cl
mov dx, word [0x49aa2e]
mov ax, dx
and eax, 0xc024
mov dx, ax
mov word [0x49aa2e], dx
movzx eax, byte [esp + 7]
mov esi, dword [esp]
mov cl, byte [esi + eax + 0xa8]
mov eax, dword [esp + 8]
mov byte [esi + eax + 0xb9], cl
mov eax, dword [0x4a23a0]
or eax, 0x96f1355c
mov dword [0x4a23a0], eax
mov eax, dword [esp + 0xc]
inc eax
mov dword [esp + 0xc], eax
mov eax, dword [0x4a2684]
dec eax
mov dword [0x4a2684], eax
or eax, 0xc90b87d1
cmp eax, 0x2dde5418
je 0x4339a6
mov eax, dword [0x4a0730]
imul eax, eax, 0x3fffdffb
mov dword [0x4a0730], eax
jmp 0x4337a5
mov ax, word [0x496bde]
mov cx, ax
and ecx, 0x13da
mov ax, cx
mov word [0x496bde], ax
add esp, 0x14
pop esi
pop edi
pop ebx
ret