Function at 0x430f7f
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
mov eax, 0x48223a
call fcn.0045d0f8
push ecx
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, ecx
xor eax, eax
mov ecx, dword [ebp + 0x10]
mov dword [ebx], eax
push 0x4a8
push 0x40
mov dword [ecx], eax
mov dword [ebp - 0x10], edi
mov dword [edi], eax
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov esi, eax
test esi, esi
jne 0x430fbe
mov dword [edi], 1
jmp 0x4311d9
lea edi, [esi + 0x428]
push edi
push dword [ebp + 8]
call fcn.00435bbf
pop ecx
test eax, eax
pop ecx
jne 0x430fe8
push esi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov eax, dword [ebp - 0x10]
mov dword [eax], 0x16
jmp 0x4311d9
push edi
call fcn.00435e6a
movzx eax, ax
push edi
mov dword [esi + 0x41c], eax
call fcn.00435e82
movzx eax, ax
pop ecx
mov dword [esi + 0x420], eax
movsx eax, byte [esi + 0x42b]
pop ecx
movsx ecx, byte [esi + 0x469]
imul ecx, eax
xor eax, eax
mov dword [esi + 0x404], ecx
cmp dword [ebp + 0x14], eax
setne al
cmp ecx, 0x18
mov dword [esi], eax
jl 0x431034
and dword [ebp + 0xc], 0
jmp 0x43103c
push 1
pop eax
shl eax, cl
mov dword [ebp + 0xc], eax
cmp ecx, 8
jle 0x431054
cmp dword [esi], 0
je 0x431054
mov eax, dword [ebp - 0x10]
mov dword [eax], 0x1c
jmp 0x4311d9
mov eax, dword [esi + 0x41c]
mov ecx, dword [ebp + 0x10]
mov dword [ebx], eax
mov eax, dword [esi + 0x420]
push edi
mov dword [ecx], eax
call fcn.00435e9a
test eax, eax
pop ecx
je 0x431086
lea eax, [esi + 4]
push eax
push edi
push dword [ebp + 8]
call fcn.00435d64
add esp, 0xc
test eax, eax
jne 0x43109f
xor ecx, ecx
lea eax, [esi + 5]
mov byte [eax + 1], cl
mov byte [eax], cl
mov byte [eax - 1], cl
inc ecx
add eax, 4
cmp ecx, 0x100
jl 0x43108b
cmp dword [esi + 0x404], 8
jge 0x431131
cmp byte [esi + 0x469], 1
jne 0x4310db
cmp byte [esi + 0x42b], 1
jne 0x4310db
and byte [esi + 4], 0
and byte [esi + 5], 0
and byte [esi + 6], 0
or byte [esi + 8], 0xff
or byte [esi + 9], 0xff
or byte [esi + 0xa], 0xff
push 2
pop edx
jmp 0x431111
mov edi, dword [ebp + 0xc]
xor edx, edx
test edi, edi
jle 0x431111
lea ecx, [esi + 5]
lea eax, [esi + 0x439]
mov edx, edi
mov bl, byte [eax + 1]
mov byte [ecx + 1], bl
mov bl, byte [eax]
mov byte [ecx], bl
mov bl, byte [eax - 1]
mov byte [ecx - 1], bl
add eax, 3
add ecx, 4
dec edi
jne 0x4310ef
cmp dword [ebp + 0xc], 0x100
jge 0x431131
mov edi, 0x100
lea ebx, [esi + edx*4 + 4]
sub edi, edx
lea eax, [esi + 4]
push 4
push eax
push ebx
call fcn.0045cbf0
add esp, 0xc
add ebx, 4
dec edi
jne 0x43111c
xor edi, edi
cmp dword [esi], edi
je 0x43114b
lea eax, [esi + 4]
push 0x400
push eax
push dword [ebp + 0x14]
call fcn.0045cbf0
add esp, 0xc
mov eax, dword [esi + 0x41c]
lea eax, [eax + eax*2]
push eax
call fcn.004704db
cmp eax, edi
pop ecx
mov dword [esi + 0x418], eax
jne 0x431170
mov eax, dword [ebp - 0x10]
mov dword [eax], 1
jmp 0x4311d2
lea eax, [esi + 0x428]
push eax
call fcn.004360dd
push eax
call fcn.004704db
pop ecx
cmp eax, edi
pop ecx
mov dword [esi + 0x414], eax
jne 0x4311a4
mov eax, dword [ebp - 0x10]
mov dword [eax], 1
push dword [esi + 0x418]
call fcn.00470504
jmp 0x4311d1
push dword [ebp + 8]
call fcn.00435ec4
test eax, eax
pop ecx
jne 0x4311e0
mov eax, dword [ebp - 0x10]
mov dword [eax], 1
push dword [esi + 0x418]
call fcn.00470504
push dword [esi + 0x414]
call fcn.00470504
pop ecx
pop ecx
push esi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
xor eax, eax
jmp 0x431267
mov ecx, dword [esi + 0x404]
push 8
pop eax
mov dword [esi + 0x424], edi
cdq
idiv ecx
push 1
cmp ecx, 0x18
pop edx
mov dword [esi + 0x408], edx
mov dword [esi + 0x40c], eax
je 0x431220
lea eax, [ecx - 1]
cmp eax, edi
jle 0x431220
mov ebx, dword [esi + 0x408]
dec eax
lea ebx, [ebx + ebx + 1]
mov dword [esi + 0x408], ebx
jne 0x43120d
cmp ecx, edx
jne 0x43123c
and byte [esi + 4], 0
and byte [esi + 5], 0
and byte [esi + 6], 0
or byte [esi + 8], 0xff
or byte [esi + 9], 0xff
or byte [esi + 0xa], 0xff
push 0x154
call fcn.004704db
pop ecx
mov dword [ebp + 0x10], eax
cmp eax, edi
mov dword [ebp - 4], edi
je 0x43125d
push dword [ebp + 8]
mov ecx, eax
call fcn.00430243
jmp 0x43125f
xor eax, eax
mov dword [esi + 0x410], eax
mov eax, esi
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 0x10