Function at 0x4a8b39
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
mov ecx, dword [ebp + 8]
sub esp, 0x28
push ebx
push esi
push edi
test ecx, ecx
jne 0x4a8b53
mov eax, 0x80070057
jmp 0x4a8d3c
mov eax, dword [ecx]
call dword [eax + 0x5c]
push 0x561f0c
push dword [ebp + 0xc]
mov dword [ebp - 0x24], eax
call fcn.00501f97
mov edi, eax
mov dword [ebp - 0x10], edi
pop ecx
pop ecx
test edi, edi
jne 0x4a8b7d
mov eax, 0x80004005
jmp 0x4a8d3c
xor esi, esi
push esi
push esi
push esi
push str.1.5.19
call fcn.0052d96f
add esp, 0x10
mov dword [ebp - 4], eax
test eax, eax
jne 0x4a8b9f
push edi
call fcn.005020e0
pop ecx
jmp 0x4a8b73
push eax
call fcn.005307ca
mov dword [ebp - 0xc], eax
pop ecx
test eax, eax
jne 0x4a8bc2
push edi
call fcn.005020e0
push esi
lea eax, [ebp - 4]
push eax
call fcn.0052dabc
add esp, 0xc
jmp 0x4a8b73
push 0x40
push 0x4d6636
push dword [ebp - 4]
call fcn.0052f44d
push esi
push eax
call fcn.004d6650
add esp, 0x14
push dword [ebp - 0x10]
test eax, eax
je 0x4a8bed
call fcn.005020e0
lea eax, [ebp - 0xc]
push eax
jmp 0x4a8bb4
push dword [ebp - 4]
call fcn.0053104b
mov ebx, dword [ebp + 8]
pop ecx
pop ecx
mov ecx, ebx
mov eax, dword [ebx]
call dword [eax + 0x50]
mov edx, dword [ebx]
mov ecx, ebx
mov dword [ebp - 8], eax
call dword [edx + 0x54]
push esi
push esi
push esi
push 6
push 8
mov edi, eax
push edi
push dword [ebp - 8]
mov dword [ebp - 0x28], edi
push dword [ebp - 0xc]
push dword [ebp - 4]
call fcn.00531680
push dword [ebp - 0xc]
push dword [ebp - 4]
call fcn.0052e7c7
mov eax, edi
imul eax, dword [ebp - 8]
shl eax, 2
push eax
call fcn.004ae252
add esp, 0x30
mov dword [ebp - 0x20], eax
push 4
pop edx
test edi, edi
je 0x4a8cc4
mov eax, dword [ebp - 8]
mov ecx, edi
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x14], 0xff
test eax, eax
je 0x4a8cb4
mov dword [ebp - 0x18], eax
mov bl, byte [edi + 3]
xor edx, edx
movzx eax, byte [edi]
movzx ecx, bl
imul eax, ecx
push 4
div dword [ebp - 0x14]
xor edx, edx
mov byte [esi + 2], al
movzx eax, byte [edi + 1]
imul eax, ecx
div dword [ebp - 0x14]
xor edx, edx
mov byte [esi + 1], al
movzx eax, byte [edi + 2]
imul eax, ecx
mov ecx, 0xff
mov byte [esi + 3], bl
div ecx
pop edx
mov byte [esi], al
add edi, edx
add esi, edx
sub dword [ebp - 0x18], 1
jne 0x4a8c69
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x1c]
sub ecx, 1
mov dword [ebp - 0x1c], ecx
jne 0x4a8c62
mov edi, dword [ebp - 0x28]
xor esi, esi
mov ebx, dword [ebp + 8]
cmp edi, 0x3fffffff
ja 0x4a8d45
xor ecx, ecx
mov eax, edi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004ae252
pop ecx
mov ecx, eax
mov dword [ebp - 0x28], ecx
test edi, edi
je 0x4a8cfc
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0x20]
shl edx, 2
mov dword [ecx + esi*4], eax
inc esi
add eax, edx
cmp esi, edi
jb 0x4a8cf2
push ecx
push dword [ebp - 4]
call fcn.0052e768
push dword [ebp - 0xc]
push dword [ebp - 4]
call fcn.0052e4cc
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 4]
push eax
call fcn.0052dabc
push dword [ebp - 0x28]
call fcn.004ae23f
push dword [ebp - 0x10]
call fcn.005020e0
mov eax, dword [ebx]
add esp, 0x20
mov ecx, ebx
push dword [ebp - 0x24]
call dword [eax + 0x60]
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Image_is_too_tall_to_process_in_memory
push dword [ebp - 4]
call fcn.0052f0ad
int3