Function at 0x43898c
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push esi
push edi
push ebx
push ebp
sub esp, 0x10
mov ecx, eax
mov eax, 1
mov ebp, 0xffffffff
mov dword [esp + 4], ecx
mov ebx, 0x4fb18d
mov dword [esp], edx
mov esi, eax
xor edi, edi
mov ecx, dword [esp + 4]
lea eax, [ebp + 0x12]
neg eax
add eax, 0x12
push edi
cmovs eax, edi
lea ecx, [ecx + ebp + 0x12]
cdq
push edx
push eax
push ecx
push edi
push 1
push ebx
call fcn.00439e90
add esp, 0x1c
inc esi
dec ebp
inc ebx
cmp esi, 0x12
jle 0x4389af
mov eax, 1
xor ebx, ebx
mov ebp, eax
mov esi, eax
mov byte [0x4fb1c6], 0x30
mov edx, 1
mov byte [0x4fb1c7], 0x31
mov byte [0x4fb1c8], 0x32
mov byte [0x4fb1c9], 0x33
mov byte [0x4fb1ca], 0x34
mov byte [0x4fb1cb], 0x35
mov byte [0x4fb1cc], 0x36
mov byte [0x4fb1cd], 0x37
mov byte [0x4fb1ce], 0x38
mov byte [0x4fb1cf], 0x39
mov byte [0x4fb1d0], 0x41
mov byte [0x4fb1d1], 0x42
mov byte [0x4fb1d2], 0x43
mov byte [0x4fb1d3], 0x44
mov byte [0x4fb1d4], 0x45
mov byte [0x4fb1d5], 0x46
mov byte [0x4fb1d6], 0x20
mov byte [0x4fb1d7], 0x20
movzx ecx, byte [ebp + 0x4fb18c]
movzx edi, byte [edx + 0x4fb1c5]
cmp ecx, edi
je 0x438d61
inc edx
cmp edx, 0x10
jle 0x438a70
mov ecx, ebx
mov edi, 1
shl ecx, 8
mov byte [0x4fb1c6], 0x30
mov byte [0x4fb1c7], 0x31
mov byte [0x4fb1c8], 0x32
mov byte [0x4fb1c9], 0x33
mov byte [0x4fb1ca], 0x34
mov byte [0x4fb1cb], 0x35
mov byte [0x4fb1cc], 0x36
mov byte [0x4fb1cd], 0x37
mov byte [0x4fb1ce], 0x38
mov byte [0x4fb1cf], 0x39
mov byte [0x4fb1d0], 0x41
mov byte [0x4fb1d1], 0x42
mov byte [0x4fb1d2], 0x43
mov byte [0x4fb1d3], 0x44
mov byte [0x4fb1d4], 0x45
mov byte [0x4fb1d5], 0x46
mov byte [0x4fb1d6], 0x20
mov byte [0x4fb1d7], 0x20
movzx edx, byte [ebp + 0x4fb18d]
movzx eax, byte [edi + 0x4fb1c5]
cmp edx, eax
je 0x438d59
inc edi
cmp edi, 0x10
jle 0x438b14
mov edx, ebx
mov edi, 1
shl edx, 4
mov byte [0x4fb1c6], 0x30
add ecx, edx
mov byte [0x4fb1c7], 0x31
mov byte [0x4fb1c8], 0x32
mov byte [0x4fb1c9], 0x33
mov byte [0x4fb1ca], 0x34
mov byte [0x4fb1cb], 0x35
mov byte [0x4fb1cc], 0x36
mov byte [0x4fb1cd], 0x37
mov byte [0x4fb1ce], 0x38
mov byte [0x4fb1cf], 0x39
mov byte [0x4fb1d0], 0x41
mov byte [0x4fb1d1], 0x42
mov byte [0x4fb1d2], 0x43
mov byte [0x4fb1d3], 0x44
mov byte [0x4fb1d4], 0x45
mov byte [0x4fb1d5], 0x46
mov byte [0x4fb1d6], 0x20
mov byte [0x4fb1d7], 0x20
movzx edx, byte [ebp + 0x4fb18e]
movzx eax, byte [edi + 0x4fb1c5]
cmp edx, eax
je 0x438d51
inc edi
cmp edi, 0x10
jle 0x438bba
add ecx, ebx
xor ecx, 0x6f7
movsx edx, cx
mov dword [esp + 4], edx
mov dword [esp + 8], 0xfffffffd
push 0x4c6134
lea ecx, [esp + 0xc]
push ecx
lea edi, [esp + 0xc]
push edi
call fcn.0045cb30
movsx edi, ax
xor ecx, ecx
mov eax, edi
sar eax, 3
shr eax, 0x1c
add eax, edi
sar eax, 4
mov edx, eax
shl edx, 4
neg edx
add edx, edi
cmp edi, 0xf
push 0
cmovle eax, ecx
cmovg edi, edx
push 0
push 1
mov byte [0x4fb1ea], 0x30
mov byte [0x4fb1eb], 0x31
lea edx, [eax + 0x4fb1ea]
push edx
push 0
push 1
push 0x4fb19f
mov byte [0x4fb1ec], 0x32
mov byte [0x4fb1ed], 0x33
mov byte [0x4fb1ee], 0x34
mov byte [0x4fb1ef], 0x35
mov byte [0x4fb1f0], 0x36
mov byte [0x4fb1f1], 0x37
mov byte [0x4fb1f2], 0x38
mov byte [0x4fb1f3], 0x39
mov byte [0x4fb1f4], 0x41
mov byte [0x4fb1f5], 0x42
mov byte [0x4fb1f6], 0x43
mov byte [0x4fb1f7], 0x44
mov byte [0x4fb1f8], 0x45
mov byte [0x4fb1f9], 0x46
mov byte [0x4fb1fa], 0x20
mov byte [0x4fb1fb], 0x20
call fcn.00439e90
xor ecx, ecx
lea edx, [edi + 0x4fb1ea]
push ecx
push 0
mov edi, 1
push edi
push edx
push ecx
push edi
push 0x4fb1a0
call fcn.00439e90
mov ecx, dword [esp + 0x44]
lea edi, [esi + esi*2]
mov dword [esp + 0x50], edi
lea eax, [edi - 3]
neg eax
add eax, edi
lea ecx, [ecx + edi - 3]
xor edi, edi
dec eax
push edi
push edi
cmovs eax, edi
push 2
cdq
push 0x4fb19f
push edx
push eax
push ecx
mov edi, dword [esp + 0x6c]
call fcn.00439e90
add esp, 0x60
cmp esi, 6
jge 0x438d3c
mov ecx, dword [esp]
lea edx, [edi - 1]
lea ecx, [ecx + edi - 1]
sub edi, edx
mov edx, 0
cmovs edi, edx
mov eax, edi
cdq
xor eax, eax
push eax
push eax
push 1
push 0x4c63f8
push edx
push edi
push ecx
call fcn.00439e90
add esp, 0x1c
add ebp, 3
inc esi
cmp ebp, 0x11
jle 0x4389e6
add esp, 0x10
pop ebp
pop ebx
pop edi
pop esi
ret
lea ebx, [edi - 1]
jmp 0x438bcf
lea ebx, [edi - 1]
jmp 0x438b29
lea ebx, [edx - 1]
jmp 0x438a85