Function at 0x438fa0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebx
push edi
push esi
push eax
mov dword [esp], 0xffffffff
cmp dword [0x53c2d8], 0
je 0x438fe0
push 0x52b213
push 0x29c2d
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.004287c0
add esp, 0x14
mov esi, 0x15
mov eax, esi
add esp, 4
pop esi
pop edi
pop ebx
ret
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
mov dword [esp], ecx
dec eax
cmp eax, 0x1c
ja case.0x438ff3.6
xor esi, esi
jmp dword [eax*4 + 0x526dc0]
mov esi, 1
jmp case.0x438ff3.14
mov word [0x53c20c], 0
jmp case.0x438ff3.14
mov word [0x53c20c], 1
jmp case.0x438ff3.14
mov word [0x53c20c], 0x101
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov eax, dword [eax]
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movups xmmword [0x53c238], xmm1
movups xmmword [0x53c228], xmm0
jmp case.0x438ff3.14
cmp dword [0x53c228], 0
jne 0x43905c
push 0x5354c8
push 4
call fcn.00438fa0
add esp, 8
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov eax, dword [eax]
movups xmm0, xmmword [0x53c238]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [0x53c228]
movups xmmword [eax], xmm0
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov ecx, dword [eax]
mov dword [0x53c2c0], ecx
mov ecx, dword [eax + 4]
mov dword [0x53c2c4], ecx
lea ecx, [eax + 0xc]
mov dword [esp], ecx
mov eax, dword [eax + 8]
mov dword [0x53c2c8], eax
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov eax, dword [eax]
mov dword [0x53c208], eax
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov eax, dword [eax]
mov ecx, dword [eax + 0x20]
mov dword [0x53c268], ecx
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movups xmmword [0x53c258], xmm1
movups xmmword [0x53c248], xmm0
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov eax, dword [eax]
mov ecx, dword [0x53c268]
mov dword [eax + 0x20], ecx
movups xmm0, xmmword [0x53c258]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [0x53c248]
movups xmmword [eax], xmm0
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov ecx, dword [eax]
mov dword [0x53c21c], ecx
lea ecx, [eax + 8]
mov dword [esp], ecx
mov eax, dword [eax + 4]
mov dword [0x53c220], eax
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov ecx, dword [eax]
mov dword [0x53c2f4], ecx
lea ecx, [eax + 8]
mov dword [esp], ecx
mov eax, dword [eax + 4]
mov dword [0x53c2f8], eax
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
movzx eax, byte [eax]
mov byte [0x53c20e], al
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov eax, dword [eax]
mov ecx, dword [eax + 0x30]
mov dword [0x53c29c], ecx
movups xmm0, xmmword [eax + 0x20]
movups xmmword [0x53c28c], xmm0
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movups xmmword [0x53c27c], xmm1
movups xmmword [0x53c26c], xmm0
jmp case.0x438ff3.14
cmp dword [0x53c274], 0
jne 0x4391ce
push 0x535534
push 0x12
call fcn.00438fa0
add esp, 8
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov eax, dword [eax]
mov ecx, dword [0x53c29c]
mov dword [eax + 0x30], ecx
movups xmm0, xmmword [0x53c28c]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [0x53c27c]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [0x53c26c]
movups xmmword [eax], xmm0
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
movzx eax, byte [eax]
mov byte [0x53c20f], al
jmp case.0x438ff3.14
mov edx, dword [esp]
mov ecx, dword [edx + 4]
lea edi, [edx + 0x10]
xor esi, esi
test ecx, ecx
mov eax, dword [edx]
cmovs eax, esi
mov dword [esp], edi
mov edi, dword [edx + 8]
cmovle ecx, esi
cmp edi, 0x7fff0000
mov ebx, 0x7fff0000
cmovae edi, ebx
cmp dword [edx + 0xc], 0
cmovne edi, ebx
cmp eax, edi
cmovae eax, edi
test ecx, ecx
cmovne eax, edi
mov dword [0x53c2b8], edi
mov dword [0x53c2bc], 0
mov dword [0x53c2b0], eax
mov dword [0x53c2b4], 0
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov eax, dword [eax]
mov dword [eax], 0xa0
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov eax, dword [eax]
mov dword [0x53c2d4], eax
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
mov eax, dword [eax]
mov dword [0x53c224], eax
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 4]
mov dword [esp], ecx
movzx eax, byte [eax]
mov byte [0x53c210], al
jmp case.0x438ff3.14
mov eax, dword [esp]
lea ecx, [eax + 8]
mov dword [esp], ecx
movsd xmm0, qword [eax]
movsd qword [0x53c300], xmm0
jmp case.0x438ff3.14