Function at 0x100dfbbe
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [0x100fc040]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x100fc0a4], 0
push ebx
push esi
push edi
mov dword [ebp - 8], 0
je 0x100dfcef
mov eax, dword [0x1012b9c4]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x100dfcef
movss xmm0, dword [0x10101f34]
xor ebx, ebx
mulss xmm0, dword [0x100f1140]
movss dword [ebp - 0x10], xmm0
test eax, eax
jle 0x100dfcef
xor ecx, ecx
mov dword [ebp - 0xc], ecx
nop dword [eax + eax]
mov eax, dword [0x1012b9c4]
mov esi, dword [eax]
add esi, ecx
je 0x100dfcd9
mov ecx, dword [esi]
test ecx, ecx
je 0x100dfcd9
mov eax, dword [ecx]
mov eax, dword [eax + 0x280]
call eax
test al, al
je 0x100dfb22
mov ecx, dword [esi]
test ecx, ecx
je 0x100dfb22
mov eax, dword [ecx]
mov eax, dword [eax + 0x6f8]
call eax
test eax, eax
je 0x100dfb22
cmp byte [0x10102b94], 0
je 0x100dfab9
mov ecx, dword [eax + 0xc8]
mov eax, dword [ebp - 8]
dec ecx
cmp ecx, 5
cmovbe eax, dword [0x10102c38]
mov dword [ebp - 8], eax
jmp 0x100dfabc
mov eax, dword [ebp - 8]
movss xmm3, dword [0x100f1138]
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 0x100dfcd9
cmp byte [0x10102cac], 0
je case.0x100dfb4d.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.0x100dfb4d.10
movzx eax, byte [eax + 0x100dfd08]
jmp dword [eax*4 + 0x100dfd00]
mov eax, dword [0x10102d50]
mov ecx, eax
movzx edx, word [0x10102d52]
movss xmm3, dword [0x100f1138]
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 0x100dfcd9
mov edi, dword [esi]
mov eax, dword [0x1012bb2c]
cmp byte [eax + edi], 0
jne 0x100dfcd9
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [0x1012bb94]
add edx, 0xffffffd6
xor edx, 0x418206cc
lea eax, [eax*4 + 0x1012f3c4]
mov dword [ebp - 0x14], eax
mov eax, dword [0x100fc0a4]
mov ecx, dword [edx + edi]
cmp ecx, dword [edx + eax]
jne 0x100dfc4b
mov ecx, dword [0x1012ba34]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
test eax, eax
jne 0x100dfc4b
push 1
push dword [0x10101d98]
push dword [0x10101d94]
call fcn.100e1ce0
cmp eax, dword [0x10101d98]
je 0x100dfcd9
mov eax, dword [0x10101ebc]
jmp 0x100dfc6b
push 0
push dword [0x10101d98]
push dword [0x10101d94]
call fcn.100e1ce0
cmp eax, dword [0x10101d98]
je 0x100dfcd9
mov eax, dword [0x10101e2c]
movss xmm3, dword [0x100f1138]
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 [0x1012b9c4]
inc ebx
add dword [ebp - 0xc], 0x38
mov ecx, dword [ebp - 0xc]
cmp ebx, dword [eax + 0xc]
jl 0x100dfa50
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100e1e1c
mov esp, ebp
pop ebp
ret