Function at 0x100d8810
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [0x100f6008]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x100f6024], 0
push ebx
push esi
push edi
mov dword [ebp - 8], 0
je 0x100d8b0f
mov eax, dword [0x1012595c]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x100d8b0f
movss xmm0, dword [0x100fbeb4]
xor ebx, ebx
mulss xmm0, dword [0x100eaad8]
movss dword [ebp - 0x10], xmm0
test eax, eax
jle 0x100d8b0f
xor ecx, ecx
mov dword [ebp - 0xc], ecx
nop dword [eax + eax]
mov eax, dword [0x1012595c]
mov esi, dword [eax]
add esi, ecx
je 0x100d8af9
mov ecx, dword [esi]
test ecx, ecx
je 0x100d8af9
mov eax, dword [ecx]
mov eax, dword [eax + 0x280]
call eax
test al, al
je 0x100d8942
mov ecx, dword [esi]
test ecx, ecx
je 0x100d8942
mov eax, dword [ecx]
mov eax, dword [eax + 0x6f8]
call eax
test eax, eax
je 0x100d8942
cmp byte [0x100fcb14], 0
je 0x100d88d9
mov ecx, dword [eax + 0xc8]
mov eax, dword [ebp - 8]
dec ecx
cmp ecx, 5
cmovbe eax, dword [0x100fcbb8]
mov dword [ebp - 8], eax
jmp 0x100d88dc
mov eax, dword [ebp - 8]
movss xmm3, dword [0x100eaad0]
movzx ecx, al
mov dword [esi + 0x2c], 0
mov word [esi + 0x24], 1
mov byte [esi + 0x26], 0
movd xmm2, ecx
mov ecx, eax
shr ecx, 8
shr eax, 0x10
movzx ecx, cl
movzx eax, al
cvtdq2ps xmm2, xmm2
movd xmm1, ecx
movd xmm0, eax
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
mulss xmm2, xmm3
mulss xmm1, xmm3
mulss xmm0, xmm3
movss dword [esi + 4], xmm2
movss dword [esi + 8], xmm1
movss dword [esi + 0xc], xmm0
mov dword [esi + 0x10], 0x3f19999a
jmp 0x100d8af9
cmp byte [0x100fcc2c], 0
je case.0x100d896d.10
mov ecx, dword [esi]
add ecx, 8
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
mov eax, dword [eax + 0x14]
add eax, 0xfffffff7
cmp eax, 0x7d
ja case.0x100d896d.10
movzx eax, byte [eax + 0x100d8b28]
jmp dword [eax*4 + 0x100d8b20]
mov eax, dword [0x100fccd0]
mov ecx, eax
movzx edx, word [0x100fccd2]
movss xmm3, dword [0x100eaad0]
movzx eax, al
shr ecx, 8
mov dword [esi + 0x2c], 0
mov word [esi + 0x24], 1
movd xmm2, eax
movzx eax, cl
cvtdq2ps xmm2, xmm2
mov byte [esi + 0x26], 0
movd xmm1, eax
movzx eax, dl
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm2, xmm3
mulss xmm1, xmm3
mulss xmm0, xmm3
movss dword [esi + 4], xmm2
movss dword [esi + 8], xmm1
movss dword [esi + 0xc], xmm0
mov dword [esi + 0x10], 0x3f333333
mov ecx, dword [esi]
mov eax, dword [ecx]
mov eax, dword [eax + 0x260]
call eax
test al, al
je 0x100d8af9
mov edi, dword [esi]
mov eax, dword [0x10125ac4]
cmp byte [eax + edi], 0
jne 0x100d8af9
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [0x10125b1c]
add edx, 0xffffffd6
xor edx, 0x1d780df9
lea eax, [eax*4 + 0x1012934c]
mov dword [ebp - 0x14], eax
mov eax, dword [0x100f6024]
mov ecx, dword [edx + edi]
cmp ecx, dword [edx + eax]
jne 0x100d8a6b
mov ecx, dword [0x101259cc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
test eax, eax
jne 0x100d8a6b
push 1
push dword [0x100fbd18]
push dword [0x100fbd14]
call fcn.100da940
cmp eax, dword [0x100fbd18]
je 0x100d8af9
mov eax, dword [0x100fbe3c]
jmp 0x100d8a8b
push 0
push dword [0x100fbd18]
push dword [0x100fbd14]
call fcn.100da940
cmp eax, dword [0x100fbd18]
je 0x100d8af9
mov eax, dword [0x100fbdac]
movss xmm3, dword [0x100eaad0]
movzx ecx, al
mov dword [ebp - 8], eax
mov dword [esi + 0x2c], 0
mov word [esi + 0x24], 1
movd xmm2, ecx
mov ecx, eax
shr ecx, 8
shr eax, 0x10
movzx eax, al
movzx ecx, cl
cvtdq2ps xmm2, xmm2
mov byte [esi + 0x26], 0
movd xmm0, eax
mov eax, dword [ebp - 0x14]
cvtdq2ps xmm0, xmm0
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm3
mulss xmm2, xmm3
mulss xmm1, xmm3
movss dword [esi + 0xc], xmm0
movss xmm0, dword [ebp - 0x10]
movss dword [esi + 4], xmm2
movss dword [esi + 8], xmm1
mulss xmm0, dword [eax]
movss dword [esi + 0x10], xmm0
mov eax, dword [0x1012595c]
inc ebx
add dword [ebp - 0xc], 0x38
mov ecx, dword [ebp - 0xc]
cmp ebx, dword [eax + 0xc]
jl 0x100d8870
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100dab26
mov esp, ebp
pop ebp
ret