Function at 0x100d866e
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [0x100f5008]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x100f5024], 0
push ebx
push esi
push edi
mov dword [ebp - 8], 0
je 0x100d879f
mov eax, dword [0x1012495c]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x100d879f
movss xmm0, dword [0x100faeb4]
xor ebx, ebx
mulss xmm0, dword [0x100e9b10]
movss dword [ebp - 0x10], xmm0
test eax, eax
jle 0x100d879f
xor ecx, ecx
mov dword [ebp - 0xc], ecx
nop dword [eax + eax]
mov eax, dword [0x1012495c]
mov esi, dword [eax]
add esi, ecx
je 0x100d8789
mov ecx, dword [esi]
test ecx, ecx
je 0x100d8789
mov eax, dword [ecx]
mov eax, dword [eax + 0x280]
call eax
test al, al
je 0x100d85d2
mov ecx, dword [esi]
test ecx, ecx
je 0x100d85d2
mov eax, dword [ecx]
mov eax, dword [eax + 0x6f8]
call eax
test eax, eax
je 0x100d85d2
cmp byte [0x100fbb14], 0
je 0x100d8569
mov ecx, dword [eax + 0xc8]
mov eax, dword [ebp - 8]
dec ecx
cmp ecx, 5
cmovbe eax, dword [0x100fbbb8]
mov dword [ebp - 8], eax
jmp 0x100d856c
mov eax, dword [ebp - 8]
movss xmm3, dword [0x100e9b08]
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 0x100d8789
cmp byte [0x100fbc2c], 0
je case.0x100d85fd.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.0x100d85fd.10
movzx eax, byte [eax + 0x100d87b8]
jmp dword [eax*4 + 0x100d87b0]
mov eax, dword [0x100fbcd0]
mov ecx, eax
movzx edx, word [0x100fbcd2]
movss xmm3, dword [0x100e9b08]
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 0x100d8789
mov edi, dword [esi]
mov eax, dword [0x10124ac4]
cmp byte [eax + edi], 0
jne 0x100d8789
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [0x10124b1c]
add edx, 0xffffffd6
xor edx, 0x1d780df9
lea eax, [eax*4 + 0x1012834c]
mov dword [ebp - 0x14], eax
mov eax, dword [0x100f5024]
mov ecx, dword [edx + edi]
cmp ecx, dword [edx + eax]
jne 0x100d86fb
mov ecx, dword [0x101249cc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
test eax, eax
jne 0x100d86fb
push 1
push dword [0x100fad18]
push dword [0x100fad14]
call fcn.100da5d0
cmp eax, dword [0x100fad18]
je 0x100d8789
mov eax, dword [0x100fae3c]
jmp 0x100d871b
push 0
push dword [0x100fad18]
push dword [0x100fad14]
call fcn.100da5d0
cmp eax, dword [0x100fad18]
je 0x100d8789
mov eax, dword [0x100fadac]
movss xmm3, dword [0x100e9b08]
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 [0x1012495c]
inc ebx
add dword [ebp - 0xc], 0x38
mov ecx, dword [ebp - 0xc]
cmp ebx, dword [eax + 0xc]
jl 0x100d8500
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100da7b6
mov esp, ebp
pop ebp
ret