Function at 0x40809f
Capabilities:
Encrypt data using rc4 prga

Disassembly:
in al, 0xe8
adc al, 0x74
add eax, ecx
mov dword [ebp + 0x93feec], eax
add byte [eax], al
adc byte [ebx + 0x45c7fec0], al
les ecx, [ebp + 0x4d]
dec ebp
dec ebp
mov dword [ebp + 0xfef4], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
add byte [eax], al
add byte [eax], al
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x44], 0x4d4d4d4d
mov dword [ebp + 0xfee8], 0
mov edx, ecx
mov ecx, dword [eax - 0x25]
je 0x33445b23
andnps xmm1, xmmword [ebx + ecx*4]
jne 0x40811b
test esi, 0xe20f5a6f
jne 0x8d975b5e
fisttp dword [edi]
test byte [ebp - 0x26], dl
call 0x6840ce64
test byte [ebp - 0x26], cl
push esi
lea ebx, [esi]
dec ebp
add byte [eax - 0x7c], ch
dec ebp
ficom dword [esi - 0x73]
push ds
jge 0x40813e
pop esi
pop ebx
leave
sbb al, 0xf
test byte [eax], bh
invalid
push esi
lea esp, [esi - 0x7d]
jle 0x4080cc
cmc
jecxz 0x40814a
int3
jg 0xcc44653d
mov eax, dword [ebx]
cmp eax, 0x50435245
jne 0x8d975b8e
test byte [ebx + 0xc], 2
je 0x33445ba2
cmovnp ecx, dword [eax]
test ecx, 0xff0c4100
je 0x33445bac
mov eax, 0x3fa
mov dword [ebp - 8], eax
mov dword [ebp - 0x1607b8], eax
test esi, 0x8000003
jne 0x33445bb3
test esi, 0x4d238003
jne 0x42445bbd
cmp esi, esi
mov dword [ebp - 0x7c], esi
jne 0x4081d7
je 0x4081b2
test dword [ebp + 0x14], 0x8b0020ff
je 0x33445bc7
movzx eax, word [ebx + 0x22]
mov esi, 0x33989680
movzx edx, word [ebx + 0x24]
mov dword [ebp - 0x160700e4], edx
mov dh, byte [ebp + 0x7414e8fc]
add byte [ebx + eax*2], al
mov dword [ebp - 0x16070100], 0x4d4d1f40
dec ebp
mov dword [ebp - 0x160700d8], eax
movzx eax, word [ebx + 0x26]
mov dword [ebp - 0x13b00e8], eax
xor eax, eax
mov word [ebp - 0x74], cx
inc ebp
movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 0x30]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x20]
jne 0x40822f
je 0x408234
mov ecx, dword [eax]
test cl, 1
je 0x40820d
add byte [eax + 4], al
add byte [eax], al
jmp 0xf7208544
test cl, 2
jne 0x8d975c3e
test cl, 0x10
jne 0x66415c4c
test cl, 4
jne 0x66415c5d
test cl, 8
cmovnp ecx, dword [eax]
jne 0x33445c6b
test dword [edi], esi
fiadd dword [ebx]
xor esi, edi
inc ebx
or al, 0xff
and byte [eax], al
mov ecx, dword [edi]
test dword [0xf76600da], esi
inc ebx
or al, 0xff
inc eax
add byte [ebx - 0x25c17af1], cl
add esi, dword [ebx]
test dword [ebx + 0xc], 0x8b0020ff
jne 0x66415c76
test dword [ebx + 0xc], 0x8b0040ff
jne 0x33445c8c
pcmpeqw mm3, mm4
add dword [edx + 3], ebp
add eax, 0x4b0bb0be
add byte [ebx + 0x14450bc1], cl
test al, 0x10
jne 0x86045ca6
mov dword [ebp - 0x24], 0
test dword [ebx + 0xc], 0x8b0001ff
jne 0x86045cb2
mov dword [ebp - 0x30], 0
test ecx, 0xe8500000
jne 0x86045cbe
mov dword [ebp - 0x40], 0
movzx eax, word [ebx + 0x26]
imul edx, eax
movzx eax, word [ebx + 0x22]
mov dword [ebp - 0x70], edi
add edx, eax
lea eax, [ebx + edx*2]
fadd qword [edx]
or byte [ecx - 0xe17577b], cl
add dword [ebx - 0x6a76f3bb], ecx
jo 0x4082a9
add cl, byte [eax]
mov dword [ebp + 0x1f1e8a8], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp + 0xc6af170], edx
push 0xc
add byte [eax], al
inc edx
mov dword [ebp - 4], eax
mov dword [ebp - 0x7bb27680], eax
test cl, 0x20
jne 0x42445cca
xor eax, eax
test cx, cx
ret