Function at 0x10006dd0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1000f0f5
mov eax, dword fs:[0]
push eax
sub esp, 0x28
push ebx
push esi
push edi
mov eax, dword [0x10019040]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
movaps xmm0, xmm2
movss dword [ebp - 0x18], xmm0
movss dword [ebp - 0x14], xmm1
mov ebx, dword [0x1001a2b0]
cvttss2si ecx, xmm2
movss xmm0, dword [ebx + 0x10]
mulss xmm0, dword [0x10016a5c]
push ecx
addss xmm0, xmm1
cvttss2si eax, xmm0
push eax
push ecx
push eax
push 0x10019ff0
call dword [sym.imp.USER32.dll_SetRect]
cmp dword [ebx + 4], 0
je 0x100070ab
mov eax, dword [0x1001a30c]
mov edx, dword [ebp + 8]
movss xmm1, dword [0x10016a98]
test eax, eax
jne 0x10006ede
movss xmm0, dword [ebp - 0x18]
cvttss2si ecx, dword [ebp - 0x14]
push edx
sub esp, 0x14
subss xmm0, xmm1
cvttss2si edx, xmm0
call fcn.10006cc0
add esp, 0x18
mov ecx, 0xc5
xor edx, edx
nop word [eax + eax]
mov al, byte [edx + 0x100125a4]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x34], al
and ecx, 0x800000ff
jns 0x10006e9d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xc
jl 0x10006e80
mov byte [ebp - 0x28], 0
movss xmm0, dword [ebp - 0x14]
lea eax, [ebp - 0x34]
sub esp, 8
mov dword [ebp - 4], 0
addss xmm0, dword [0x10016ac8]
push eax
mov eax, dword [0x100195c4]
add eax, 0x1f
push eax
cvttss2si eax, xmm0
push eax
call fcn.10006ac0
mov dword [ebp - 4], 0xffffffff
jmp 0x10006f51
cmp eax, 1
jne 0x10006f5c
movss xmm0, dword [ebp - 0x18]
cvttss2si ecx, dword [ebp - 0x14]
push edx
sub esp, 0x14
subss xmm0, xmm1
cvttss2si edx, xmm0
call fcn.10006cc0
mov dword [ebp - 0x30], 0x454e5552
mov dword [ebp - 0x2c], 0x5a444f4d
mov byte [ebp - 0x28], 0
movss xmm0, dword [ebp - 0x14]
lea eax, [ebp - 0x30]
add esp, 0x10
mov dword [ebp - 4], 1
addss xmm0, dword [0x10016ac8]
push eax
mov eax, dword [0x100195c4]
add eax, 0x1f
push eax
cvttss2si eax, xmm0
push eax
call fcn.10006ac0
mov dword [ebp - 4], 0xffffffff
xorps xmm0, xmm0
movq qword [ebp - 0x30], xmm0
mov byte [ebp - 0x28], 0
mov edx, dword [ebp + 8]
movss xmm1, dword [0x10016a98]
movss xmm0, dword [ebp - 0x18]
xor esi, esi
addss xmm0, dword [ebx + 0x14]
mov dword [ebp - 0x1c], esi
movss dword [ebp - 0x18], xmm0
cmp dword [ebx], esi
jle 0x100070ab
cvttss2si ecx, dword [ebp - 0x14]
nop dword [eax]
subss xmm0, xmm1
push edx
sub esp, 0xc
cvttss2si eax, xmm0
push eax
push ecx
call fcn.10006b80
mov eax, dword [ebx + 8]
mov eax, dword [eax + esi*4]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x10006fa4
mov ecx, dword [ecx]
jmp 0x10006fa6
xor ecx, ecx
mov dword [ebp - 0x20], ecx
cmp esi, dword [ebx + 0xc]
jne 0x10006fb5
mov edi, 0xffcefb2d
jmp 0x10006fdc
mov eax, dword [eax]
cmp eax, 1
jne 0x10006fc3
mov edi, 0xff00ff00
jmp 0x10006fdc
cmp eax, 2
jne 0x10006fcf
mov edi, 0xffffff00
jmp 0x10006fdc
or edi, 0xffffffff
mov eax, 0xff68d2ff
test ecx, ecx
cmovne edi, eax
cvttss2si esi, dword [ebp - 0x18]
cvttss2si eax, dword [ebp - 0x14]
push esi
push eax
push esi
push eax
push 0x1001a0c8
call dword [sym.imp.USER32.dll_SetRect]
movss xmm0, dword [ebp - 0x14]
addss xmm0, dword [ebx + 0x10]
push esi
cvttss2si eax, xmm0
push eax
push esi
push eax
push 0x1001a220
call dword [sym.imp.USER32.dll_SetRect]
mov eax, dword [ebx + 8]
mov esi, dword [ebp - 0x1c]
mov ecx, dword [0x1001a214]
push edi
push 0x100
mov eax, dword [eax + esi*4]
mov edx, dword [ecx]
push 0x1001a0c8
push 0xffffffffffffffff
push dword [eax + 4]
push 0
push ecx
call dword [edx + 0x38]
mov eax, dword [ebx + 8]
mov eax, dword [eax + esi*4]
mov dword [ebp - 0x24], eax
mov edx, dword [eax + 8]
test edx, edx
je 0x10007080
cmp dword [eax], 2
mov eax, dword [0x1001a214]
push edi
push 0x102
push 0x1001a220
mov ecx, dword [eax]
push 0xffffffffffffffff
jne 0x1000706b
push edx
push 0
push eax
call dword [ecx + 0x38]
jmp 0x10007080
mov esi, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov edi, dword [esi + 8]
push dword [edi + edx*4]
push 0
push eax
call dword [ecx + 0x38]
mov esi, dword [ebp - 0x1c]
movss xmm0, dword [ebp - 0x18]
inc esi
addss xmm0, dword [ebx + 0x14]
movss xmm1, dword [0x10016a98]
cvttss2si ecx, dword [ebp - 0x14]
mov edx, dword [ebp + 8]
mov dword [ebp - 0x1c], esi
movss dword [ebp - 0x18], xmm0
cmp esi, dword [ebx]
jl 0x10006f80
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4