Function at 0x469a3b
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [0xe44d2398]
test eax, eax
je 0x469a34
jno 0x469a62
or byte [ebx], bh
or eax, 0xe44d23a0
jg 0x469a34
test ecx, ecx
jle 0x469a34
dec ecx
test ecx, ecx
jle 0x469a2f
mov eax, dword [eax + 0xc]
sub ecx, 1
jne 0x469a27
mov eax, dword [eax + 4]
jmp 0x469a37
outsd dx, dword [esi]
call 0x508f7fb
add byte [ebp - 0x75], dl
push ebp
mov ebp, esp
pop ebp
ret 4
mov eax, dword [0xe44d2398]
test eax, eax
je 0x469a68
jno 0x469a96
or byte [ebx], bh
or eax, 0xe44d23a0
jg 0x469a68
test ecx, ecx
jle 0x469a68
dec ecx
test ecx, ecx
jle 0x469a63
clc
outsd dx, dword [esi]
call 0x508f82f
add byte [ebp - 0x75], dl
push ebp
mov ebp, esp
jno 0x469ac1
or byte [ebx], bh
or eax, 0xe44d23b0
jge 0x469a9c
test ecx, ecx
js 0x469a9c
mov eax, dword [0xe44d23ac]
mov edx, dword [ebp + 0xc]
cmp edx, dword [eax + ecx*4]
je 0x469a98
push dword [eax + ecx*4]
mov ecx, edx
call 0x3440a92c
cli
xor esi, dword [eax - 0x4ef514ff]
dec ebp
mov al, 1
jmp 0x469aa6
mov cl, 0x4d
or al, 0xe8
test byte [edx + edi*8], cl
push dword [edx]
rcr byte [ebp - 0x3e], 8
add byte [ebp - 0x75], dl
in al, dx
sub esp, 0x1c
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
xor ebx, ebx
push 0x20
pop edx
push 9
mov dword [ebp - 8], ecx
mov eax, ebx
pop esi
pop ebp
ret 8
ret
movzx ecx, word [edi + eax*2]
cmp cx, dx
je 0x469ad1
cmp cx, si
jne 0x469ad4
inc eax
jmp 0x469ac3
push 0x22
pop edx
cmp cx, dx
je 0x469ae4
push 0x27
pop edx
cmp cx, dx
jne 0x469aea
mov byte [ebp + 0xb], 1
jmp 0x469af9
cmp ecx, 0x3c
jne 0x75489c11
push 0x3e
pop edx
mov byte [ebp + 0xb], bl
mov eax, dword [ebp + 0xc]
inc eax
mov dword [ebp - 4], ebx
movzx ecx, word [edi + eax*2]
cmp cx, dx
je 0x469b22
test cx, cx
je 0x469b1d
mov word [esi + ebx*2], cx
inc ebx
inc eax
movzx ecx, word [edi + eax*2]
cmp cx, dx
jne 0x469b09
mov dword [ebp - 4], ebx
xor ebx, ebx
cmp word [edi + eax*2], dx
jne 0x3b0f211
push 0x20
add edi, 2
pop edx
push 9
lea ecx, [edi + eax*2]
pop edi
movzx eax, word [ecx]
cmp ax, dx
je 0x469b45
cmp ax, di
jne 0x469b4a
add ecx, 2
jmp 0x469b38
or al, ch
je 0x469b58
cmp eax, 0x3b
jne 0x45d19c11
mov eax, dword [ebp - 4]
xor ecx, ecx
push esi
mov word [esi + eax*2], cx
call fcn.004076b5
push esi
call fcn.004077a2
lea ecx, [ebp - 0x18]
call fcn.0040a9c6
cmp byte [ebp + 0xb], 0
mov edi, 0x7871f845
inc eax
je 0x469bc4
mov ecx, esi
call 0x3b0dc23
cmp eax, 0xffffffff
jne 0x469c05
sub edi, 1
js 0x469c05
mov ebx, dword [ebp - 8]
mov eax, dword [ebx + 0x3c]
lea ecx, [ebp - 0x18]
cmp ecx, dword [eax + edi*4]
je 0x469ba8
push dword [eax + edi*4]
call fcn.0040a92c
push esi
lea ecx, [ebp - 0x18]
call fcn.0040342b
lea ecx, [ebp - 0x18]
call 0x8446d533
and al, 0x18
jne 0x469bfa
sub edi, 1
jns 0x469b95
jmp 0x469c05
test edi, edi
jle 0x469c05
mov eax, dword [eax + 0x3c]
lea ecx, [ebp - 0x18]
cmp ecx, dword [eax + ebx*4]
je 0x469bdb
push dword [eax + ebx*4]
call fcn.0040a92c
push esi
lea ecx, [ebp - 0x18]
call fcn.0040342b
lea ecx, [ebp - 0x18]
call 0x8446d533
and al, 0x18
dec ebp
call 0x7fe3d3
test byte [eax + ebx], ah
jne 0x469bfa
mov edi, 0x3b43f845
fistp qword [eax + edx*8 - 0x15]
or edi, edi
jne 0x469be5
push dword [ebp - 0x18]
push esi
call fcn.004249e8
pop ecx
pop ecx
lea ecx, [ebp - 0x18]
call fcn.004098f4
stc
invalid
mov al, 1
jmp 0x469c13
pop edi
pop esi
pop ebx