Function at 0x144a7f8
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x3ec
call dword [0x42e0c8]
sub dword [0x428180], 0x7312e33c
and eax, 0x23c2400
mov dword [0x428044], eax
call fcn.01451ff8
mov edx, 0x4289cc
mov al, byte [edx]
test al, al
je 0x144a844
sub eax, 0x30
cmp al, 9
jbe 0x144a841
sub dword [0x428044], 0x3e6cc170
jmp 0x144a844
inc edx
jmp 0x144a828
mov edx, 0x4289cc
mov al, byte [edx]
test al, al
je 0x144a86f
sub eax, 0x30
cmp al, 9
jbe 0x144a86c
mov eax, dword [0x428044]
sub eax, 0x5c1a5be4
or eax, 0x81d02503
mov dword [0x428180], eax
jmp 0x144a86f
inc edx
jmp 0x144a849
mov eax, dword [0x428180]
lea edi, [ebp - 0x3b0]
mov esi, 0x414170
xor ebx, ebx
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
or eax, 0xfd8f03b
mov esi, 0x39
mov dword [0x428044], eax
call fcn.014509b0
mov eax, dword [0x428180]
and eax, 0xd7644957
mov dword [0x428044], eax
sub eax, 0xb017175
mov dword [0x428180], eax
call fcn.01451c40
add esi, dword [ebp + ebx*4 - 0x3b0]
inc ebx
mov dword [ebp - 0x3dc], esi
cmp ebx, 4
jne 0x144a897
mov ecx, ebx
lea edi, [ebp - 0x244]
mov esi, 0x414180
xor ebx, ebx
rep movsd dword es:[edi], dword [esi]
mov esi, 0x5f
xor eax, eax
cmp byte [eax + 0x429580], 0
je 0x144a91b
inc eax
cmp eax, 0x213
jne 0x144a8e5
mov dword [esp + 0xc], 0x42c880
mov dword [esp + 8], 0x42c880
mov dword [esp + 4], 0x42c880
mov eax, dword [0x428180]
mov dword [esp], eax
call fcn.0144ddd0
mov eax, dword [0x428044]
mov edx, eax
and edx, 0xac9b7e47
mov dword [0x428180], edx
mov dword [esp + 4], eax
mov dword [esp], 0x4289cc
call fcn.0144eb78
mov eax, dword [0x428044]
mov edi, dword [ebp + ebx*4 - 0x244]
inc ebx
mov edx, eax
add edi, esi
or edx, 0x5f80d1bc
mov esi, edi
mov dword [0x428180], edx
cmp ebx, 4
jne 0x144a8e3
sub eax, 0x45f4608a
xor edx, edx
mov dword [0x428180], eax
cmp word [edx + edx + 0x42c880], 0
je 0x144a989
inc edx
cmp edx, 0xecd
jne 0x144a96e
and eax, 0x2effc4d8
jmp 0x144a997
cmp edx, 0x49d
jg 0x144a99c
imul eax, eax, 0xeb148f3a
mov dword [0x428180], eax
mov edx, dword [0x428180]
xor ecx, ecx
xor ebx, ebx
mov dword [ebp - 0x344], 0x2f
mov dword [ebp - 0x340], 0x48
mov esi, dword [0x4289cc]
mov dword [ebp - 0x33c], 0xffffff89
and edx, 0x9febf050
lea eax, [edx + 0x538c4a0f]
mov dword [ebp - 0x3e0], eax
mov eax, esi
test al, al
je 0x144a9ec
or dword [ebp - 0x3e0], 0x98cb0768
or edx, 0xa00e7e30
sub ebx, dword [ebp + ecx*4 - 0x344]
inc ecx
xor edx, 0xd1953e27
cmp ecx, 3
jne 0x144a9d0
mov eax, dword [ebp - 0x3e0]
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x384], edi
mov dword [ebp - 0x378], ecx
mov dword [ebp - 0x374], ecx
sub eax, 0x102bfe0c
mov ecx, esi
mov dword [0x428180], eax
mov dword [ebp - 0x388], 0x18
mov dword [ebp - 0x37c], edx
mov dword [ebp - 0x380], ebx
test cl, cl
je 0x144aa51
or eax, 0x5c94536c
mov dword [0x428180], eax
imul eax, dword [0x428180], 0x8cbaf1f5
xor edi, edi
mov dword [0x428180], eax
add eax, 0x430dc172
mov dword [0x428044], eax
mov dword [esp], 0x130a
call dword [0x42e0d8]
mov edx, 0x429580
push esi
mov dword [ebp - 0x3d0], edi
mov dword [ebp - 0x3cc], edi
mov al, byte [edx]
test al, al
je 0x144aaa7
sub eax, 0x30
cmp al, 9
jbe 0x144aaa4
xor dword [0x428044], 0x180b4d0d
jmp 0x144aaa7
inc edx
jmp 0x144aa8b
or dword [0x428044], 0x39f44f18
call fcn.0145317c
mov eax, dword [ebp - 0x3dc]
mov dword [ebp - 0x244], 0x22c
mov dword [esp], 2
mov dword [esp + 4], eax
mov eax, dword [0x4140cc]
call dword [eax + 0x34]
push ecx
push ecx
mov dword [ebp - 0x3dc], eax
lea eax, [ebp - 0x244]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x3dc]
mov dword [esp], eax
mov eax, dword [0x4140cc]
call dword [eax + 0x38]
dec eax
push ebx
push ebx
jne 0x144adc3
lea eax, [ebp - 0x244]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x3dc]
mov dword [esp], eax
mov eax, dword [0x4140cc]
call dword [eax + 0x3c]
dec eax
push edx
push edx
jne 0x144adc3
lea edi, [ebp - 0x3c7]
mov esi, 0x42b0f4
mov ecx, 0xb
cmp byte [0x4289cc], 0
rep movsb byte es:[edi], byte [esi]
je 0x144ab4e
sub dword [0x428044], 0x5e1267c4
lea edi, [ebp - 0x36d]
mov esi, 0x42b0ff
mov ecx, 0x29
mov eax, dword [0x428044]
rep movsb byte es:[edi], byte [esi]
or eax, 0xa7e9617d
mov dword [0x428180], eax
sub eax, 0x6ebcdde3
mov dword [0x428044], eax
xor eax, eax
mov byte [ebp + eax - 0x344], al
inc eax
cmp eax, 0x100
jne 0x144ab7b
xor esi, esi
xor ebx, ebx
mov edi, 0x28
mov eax, ebx
xor edx, edx
mov cl, byte [ebp + ebx - 0x344]
div edi
movzx eax, byte [ebp + edx - 0x36d]
movzx edx, cl
add eax, edx
add eax, esi
movzx esi, al
mov al, byte [ebp + esi - 0x344]
mov byte [ebp + ebx - 0x344], al
inc ebx
mov byte [ebp + esi - 0x344], cl
cmp ebx, 0x100
jne 0x144ab93
xor edi, edi
xor esi, esi
xor ebx, ebx
inc ebx
cmp byte [0x429580], 0
movzx ebx, bl
mov cl, byte [ebp + ebx - 0x344]
lea eax, [ecx + esi]
movzx esi, al
je 0x144ac04
mov eax, dword [0x428044]
and eax, 0xaafe55f8
add eax, 0x3f69b8bc
mov dword [0x428180], eax
mov eax, dword [0x428180]
mov byte [ebp - 0x3e0], cl
add eax, 0x5ca64060
mov dword [0x428044], eax
call fcn.0145053c
mov al, byte [ebp + esi - 0x344]
mov cl, byte [ebp - 0x3e0]
lea edx, [ebp - 0x39e]
mov byte [ebp + ebx - 0x344], al
mov byte [ebp + esi - 0x344], cl
mov al, byte [ebp + ebx - 0x344]
add eax, ecx
movzx eax, al
mov al, byte [ebp + eax - 0x344]
xor al, byte [ebp + edi - 0x3c7]
movzx eax, al
mov word [edx + edi*2], ax
inc edi
cmp edi, 0xb
jne 0x144abd6
mov word [ebp - 0x388], 0
lea eax, [ebp - 0x220]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0144ce14
mov ebx, eax
test eax, eax
jne 0x144ab05
call fcn.014509b0
xor esi, esi
imul eax, dword [0x428044], 0xb661dce3
xor eax, 0x91b22b2
mov dword [0x428044], eax
and eax, 0xb646d4da
mov dword [0x428180], eax
call fcn.01451ff8
call dword [0x42e0c8]
mov eax, dword [0x428180]
mov dword [ebp - 0x3bc], 0x13
mov dword [ebp - 0x3b8], 4
mov dword [ebp - 0x3b4], 0xffffffe9
mov edx, eax
and eax, 0xb95a1401
and edx, 0xb95e7707
mov dword [0x428044], eax
mov dword [0x428180], edx
mov edx, 0x42c880
mov ecx, 0x138b
movzx eax, word [edx]
add edx, 2
test ax, ax
je 0x144ad28
add ecx, eax
cmp ecx, 0x14a0
jbe 0x144ad04
call fcn.0144ffc8
sub dword [0x428044], 0x28e7e9f9
xor dword [0x428180], 0x5ba56873
sub dword [0x428044], 0x5a2f5c2e
call fcn.0145053c
sub ebx, dword [ebp + esi*4 - 0x3bc]
inc esi
cmp esi, 3
jne 0x144acfa
mov eax, dword [0x428180]
and eax, 0x3d5b00b
xor eax, 0x5c463261
mov dword [0x428180], eax
mov eax, dword [ebp - 0x23c]
mov dword [ebp - 0x3d0], eax
lea eax, [ebp - 0x3d0]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x388]
mov dword [esp + 8], eax
lea eax, [ebp - 0x3d4]
mov dword [esp + 4], 0x1fffff
mov dword [esp], eax
call fcn.0144108d
cmp eax, ebx
jl 0x144ab05
cmp dword [ebp - 0x3d4], 0
je 0x144ab05
mov eax, dword [ebp - 0x3dc]
mov dword [esp], eax
call fcn.01441065
mov eax, dword [ebp - 0x3d4]
jmp 0x144add4
mov eax, dword [ebp - 0x3dc]
mov dword [esp], eax
call fcn.01441065
or eax, 0xffffffff
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret