Function at 0x41aee0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push es
or edi, edi
dec dword [ebx - 0x7a22232]
into
fstp qword [ebp - 8]
mov esi, eax
mov edx, esi
movzx eax, word [esi]
cmp eax, 0x87
je 0x457d67
cmp eax, 0x83
je 0x457e2c
cmp eax, 0x84
je 0x457e2c
add eax, dword [eax]
cmp eax, 0x88
je 0x457e2c
cmp eax, 0x89
je 0x457e2c
cmp eax, 0x85
je 0x457e13
cmp eax, 0x86
je 0x457e13
cmp eax, 0x8a
je 0x457e13
cmp eax, 0x8b
je 0x457e13
cmp eax, 0x7d
je 0x41aeb8
cmp eax, 0x81
je 0x41aebf
cmp eax, 0x82
je 0x41aebf
cmp eax, 0x55
je 0x457ddf
cmp eax, 0x56
je 0x457ddf
cmp eax, 0x5e
je 0x457ddf
cmp eax, 0x1b
je 0x457e48
cmp eax, 0x1c
je 0x457e48
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret
push 1
jmp 0x457e2f
mov eax, dword [ebp + 0xc]
push dword [ebp + 0x10]
inc eax
push eax
jmp 0x457e32
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
mov eax, edx
mov dword [ebp - 0xc], 0x86
push edi
mov ebx, ecx
mov dword [ebp - 0x18], eax
xor edi, edi
mov dword [ebp - 8], 0x7d
or esi, 0xffffffff
mov dword [eax], esi
movzx eax, word [ebx]
mov ecx, 0x85
cmp ax, cx
je 0x457e63
add ecx, 5
cmp ax, cx
je 0x457e63
mov ecx, 0x86
cmp ax, cx
je 0x457e63
add ecx, 5
cmp ax, cx
je 0x457e63
push 4
pop eax
xor edx, edx
inc edx
lea ecx, [eax + ebx]
call fcn.0041c935
mov ecx, eax
movzx edx, word [ecx]
mov eax, edx
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], eax
cmp ax, 0x31
ja 0x41af78
cmp ax, 0x30
jae 0x457ef7
cmp ax, 0x1d
je 0x457e85
cmp ax, 0x1e
je 0x457ef7
cmp ax, 0x22
ja 0x457e6a
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret
cmp ax, 0x36
je 0x41afa4
cmp ax, 0x38
je 0x457ef7
iretd
add byte [esi + 0x3b], ah
inc ebp
clc
cmp ax, word [ebp - 8]
je 0x457ec0
mov dword [ebp - 4], 0x80
cmp ax, word [ebp - 4]
jbe 0x41af71
jmp 0x457e9b
add ecx, 2
jmp 0x457ef7
jmp 0x41adab
lea ecx, [esi + 4]
xor edx, edx
call fcn.0041c949
mov esi, eax
movzx eax, word [esi]
jmp 0x41ae2d
inc dword [ebx + 0xf00707f]
test dword [edi - 0x7c0003d0], esp
jge 0x457e31
add cl, ch
cwde
xor ah, bh
dec dword [edi]
mov bh, 0x4e
add al, 0x33
rol byte [edx - 0x7d], cl
stc
and byte [ebx + 2], dh
jae 0x457e35
add dl, bl
loop 0x457e35
shl edx, cl
push dword [ebp + 0x10]
jne 0x457e48
or edx, dword [ebp - 4]
push dword [ebp + 0xc]
jmp 0x457e49
cld
push edi
mov ecx, esi
call fcn.0041adf5
cmp edi, 0xc
test eax, ecx
je 0x41aec5
movzx eax, word [ebx + 2]
push 0x77
lea ebx, [ebx + eax*2]
sbb al, 0x43
pop eax
cmp word [ebx], ax
je 0x41ae07
test byte [eax + 0x33fffc2f], bl
rol byte [eax - 0x17], 0x50
xor ah, bh
jmp [edx + 6]
xor eax, eax
inc eax
jmp 0x41aec7
cmp eax, 0x29
je 0x457e96
cmp ax, 0x2b
jne 0x41af85
jmp 0x457e99
add ecx, 2
cmp dword [ebp + 8], 0
or byte [eax], al
je 0x41af85
movzx eax, word [ecx + 2]
test esi, esi
jns 0x457f24
xor esi, esi
jmp 0x457f20
jbe 0x41af85
mov eax, 0x8b
cmp dx, ax
ja 0x41af85
push 0x7d
xor eax, eax
pop edx
cmp word [ebp - 0x10], dx
lea edx, [ebp - 0x14]
sete al
push eax
call 0x41aee0
pop ecx
mov ecx, dword [ebp - 0x14]
test ecx, ecx
js 0x41af85
xor esi, 0x79
push es
jns 0x457eff
mov edi, eax
mov esi, ecx
jmp 0x457f2c
cmp edi, eax
jne 0x41af85
cmp esi, ecx
jmp 0x457f26
mov edi, eax
jmp 0x457f2c
cmp edi, eax
jne 0x41af85
movzx eax, word [ebx + 2]
push 0x77
pop edx
lea ebx, [ebx + eax*2]
cmp word [ebx], dx
jne 0x457f42
mov eax, edx
jmp 0x41af08
mov eax, dword [ebp - 0x18]
mov dword [eax], esi
mov eax, edi
jmp 0x41af87