Function at 0x41ceb0
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ebx
push esi
push edi
xor edi, edi
mov esi, 0x48c94c
mov dword [esi + 0xc], 0x780
call fcn.00423e30
and eax, 0xffff
mov dword [esi], eax
call fcn.00423e30
and eax, 0xffff
mov dword [esi + 4], eax
call fcn.00423e30
and eax, 0xffff
mov dword [esi + 8], eax
mov eax, edi
cdq
and edx, 7
add eax, edx
mov edx, 0x3200
mov ebx, eax
sar ebx, 3
mov cl, bl
call fcn.00423d20
mov edx, 0x3200
mov cl, bl
mov dword [esi - 0xc], eax
call fcn.00423d00
mov dword [esi - 8], eax
mov dword [esi - 4], 0
add esi, 0x1c
add edi, 0x100
cmp esi, 0x48ca2c
jl 0x40f86a
mov esi, 0x48d29c
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x180
cdq
idiv ecx
add edx, 0x80
mov dword [esi - 4], edx
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x1e0
cdq
idiv ecx
neg edx
mov dword [esi], edx
call fcn.00423e30
and eax, 0xffff
mov ecx, 0xa
cdq
idiv ecx
add esi, 0xc
add edx, ecx
cmp esi, 0x48d47c
mov dword [esi - 8], edx
jl 0x40f8df
pop edi
pop esi
pop ebx
ret
push esi
push edi
mov byte [0x48c93c], 0
mov dword [0x48c930], 0x5000
mov dword [0x48c934], 0x3c00
mov dword [0x48c938], 0x1e
mov esi, 0x48ba54
call fcn.00423e30
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x140
cdq
idiv ecx
mov edi, edx
add edi, ecx
call fcn.00423e30
and eax, 0xffff
mov ecx, 7
cdq
idiv ecx
lea edx, [edx + edx*8]
shl edx, 3
mov dword [esi - 4], edx
call fcn.00423e30
and eax, 0xffff
and eax, 0x8000000f
jns 0x410458
dec eax
or eax, 0xfffffff0
inc eax
shl eax, 4
mov dword [esi], eax
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x1e4
cdq
idiv ecx
add edx, 0x1c
shl edx, 6
mov dword [esi + 4], edx
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x280
cdq
idiv ecx
add esi, 0x18
neg edx
shl edx, 6
mov dword [esi - 0x10], edx
mov dword [esi - 0xc], 0
mov dword [esi - 8], edi
cmp esi, 0x48c1d4
jl 0x41040c
pop edi
pop esi
ret
push ecx
push ebx
push ebp
push esi
push edi
xor ebx, ebx
mov dword [esp + 0x10], 2
xor edi, edi
call fcn.00423e30
and eax, 0xffff
mov ecx, 0xfa0
cdq
idiv ecx
mov eax, edi
and eax, 0x80000003
mov ebp, edx
jns 0x410763
dec eax
or eax, 0xfffffffc
inc eax
lea eax, [eax + eax*4]
mov esi, edi
shl esi, 5
lea eax, [eax + eax*4]
lea edx, [eax + eax*4]
shl edx, 6
add ebp, edx
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x7d00
cdq
idiv ecx
sub edx, 0x3e80
mov dword [esi + 0x48c5b0], edx
mov edx, 0xffffc180
sub edx, ebp
mov dword [esi + 0x48c5b4], edx
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x7d00
cdq
idiv ecx
sub edx, 0x3e80
cmp edi, 0x11
mov dword [esi + 0x48c5b8], edx
je 0x4107c9
cmp edi, 0x18
jne 0x4107cd
dec dword [esp + 0x10]
mov dl, byte [esp + 0x10]
xor eax, eax
mov byte [esi + 0x48c5ce], dl
mov dword [esi + 0x48c5bc], ebx
mov al, byte [esi + 0x48c5ce]
mov ecx, eax
mov eax, 4
sub eax, ecx
shl eax, 4
mov dword [esi + 0x48c5c0], eax
mov dword [esi + 0x48c5c8], eax
mov dword [esi + 0x48c5c4], ebx
inc edi
mov byte [esi + 0x48c5cc], bl
mov byte [esi + 0x48c5cd], 0x40
cmp edi, 0x1c
mov byte [esi + 0x48c5cf], bl
jl 0x410741
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret
push esi
push edi
xor edi, edi
mov esi, 0x48c1dc
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x180
cdq
idiv ecx
add edx, 0x80
mov dword [esi - 4], edx
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x280
neg eax
cdq
idiv ecx
mov dword [esi], edx
call fcn.00423e30
mov byte [esi + 6], al
mov eax, edi
cdq
mov ecx, 3
idiv ecx
mov byte [esi + 5], dl
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x50
cdq
idiv ecx
add dl, 0x46
mov byte [esi + 7], dl
call fcn.00423e30
and eax, 0xffff
mov ecx, 3
cdq
idiv ecx
add esi, 0xc
add dl, 2
inc edi
mov byte [esi - 8], dl
cmp esi, 0x48c32c
jl 0x410bf9
mov esi, 0x48ca24
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x180
cdq
idiv ecx
add edx, 0x80
mov dword [esi - 4], edx
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x1e0
cdq
idiv ecx
mov dword [esi], edx
call fcn.00423e30
and eax, 0xffff
mov ecx, 0x14
cdq
idiv ecx
add esi, 0xc
add edx, 8
cmp esi, 0x48ccf4
mov dword [esi - 8], edx
jl 0x410c84
pop edi
pop esi
ret
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0xb
ja case.default.0x41cec2
jmp dword [eax*4 + 0x41cfcc]
mov byte [0x4cea29], 2
ret
mov dword [0x4cea4c], 0x41d010
mov dword [0x4cea50], 0
ret
mov dword [0x4cea4c], 0x41d3b0
mov dword [0x4cea50], 0
ret
mov dword [0x4cea4c], fcn.0041d000
mov dword [0x4cea50], 0
ret
mov dword [0x4cea4c], 0x41d430
mov dword [0x4cea50], 0
jmp 0x40f860
mov dword [0x4cea4c], 0x41d440
mov dword [0x4cea50], 0
jmp 0x4103e0
mov dword [0x4cea4c], 0x41d460
mov dword [0x4cea50], 0
jmp 0x410730
cmp dword [0x4cea4c], 0x41d460
jne case.default.0x41cec2
xor dl, dl
mov cl, 4
jmp fcn.00410b30
mov dword [0x4cea4c], 0x41d450
mov dword [0x4cea50], 0
jmp 0x410bf0
mov dword [0x4cea4c], 0x41d470
mov dword [0x4cea50], 0
call fcn.00410ee0
mov cl, 3
jmp fcn.0040e0c0
xor al, al
mov dword [0x4cea4c], 0x41d300
mov byte [0x4cea4a], al
mov byte [0x4cea49], al
ret
mov dword [0x4cea4c], 0x41d350
ret