Function at 0x4811f0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x74
push ebx
push esi
push edi
mov dword [ebp - 4], 1
mov eax, dword [ebp + 8]
mov dword [ebp - 8], eax
movsd xmm0, qword [0x562d50]
movsd qword [ebp - 0x10], xmm0
mov dword [ebp - 0x14], 0
mov eax, dword [ebp + 8]
movzx ecx, byte [eax]
movzx edx, byte [ecx + 0x55bd78]
and edx, 1
je 0x481237
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
jmp 0x48121a
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
cmp ecx, 0x2d
jne 0x481254
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
jmp 0x481268
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
cmp ecx, 0x2b
jne 0x481268
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
mov eax, 1
imul eax, eax, 0
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx + eax]
cmp edx, 0x30
jne 0x481287
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
jmp 0x481268
mov eax, dword [ebp + 8]
movzx ecx, byte [eax]
movzx edx, byte [ecx + 0x55bd78]
and edx, 4
je 0x4812d0
movsd xmm0, qword [ebp - 0x10]
mulsd xmm0, qword [0x562d88]
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
sub ecx, 0x30
cvtsi2sd xmm1, ecx
addsd xmm0, xmm1
movsd qword [ebp - 0x10], xmm0
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
jmp 0x481287
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
cmp ecx, 0x2e
jne 0x48139c
movsd xmm0, qword [0x562d70]
movsd qword [ebp - 0x1c], xmm0
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
cmp dword [ebp - 0x14], 0
jne 0x48132c
mov eax, 1
imul eax, eax, 0
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx + eax]
cmp edx, 0x30
jne 0x48132c
movsd xmm0, qword [ebp - 0x1c]
mulsd xmm0, qword [0x562d88]
movsd qword [ebp - 0x1c], xmm0
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
jmp 0x4812fb
mov eax, dword [ebp + 8]
movzx ecx, byte [eax]
movzx edx, byte [ecx + 0x55bd78]
and edx, 4
je 0x48138d
cmp dword [ebp - 0x14], 0x12
jge 0x481382
movsd xmm0, qword [ebp - 0x10]
mulsd xmm0, qword [0x562d88]
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
sub ecx, 0x30
cvtsi2sd xmm1, ecx
addsd xmm0, xmm1
movsd qword [ebp - 0x10], xmm0
movsd xmm0, qword [ebp - 0x1c]
mulsd xmm0, qword [0x562d88]
movsd qword [ebp - 0x1c], xmm0
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
jmp 0x48132c
movsd xmm0, qword [ebp - 0x10]
divsd xmm0, qword [ebp - 0x1c]
movsd qword [ebp - 0x10], xmm0
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
cmp ecx, 0x65
je 0x4813b6
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
cmp ecx, 0x45
jne 0x4814ed
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x24], 0
movsd xmm0, qword [0x562d70]
movsd qword [ebp - 0x2c], xmm0
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
cmp ecx, 0x2d
jne 0x4813f7
mov dword [ebp - 0x20], 0xffffffff
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
jmp 0x48140b
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
cmp ecx, 0x2b
jne 0x48140b
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
mov eax, dword [ebp + 8]
movzx ecx, byte [eax]
movzx edx, byte [ecx + 0x55bd78]
and edx, 4
je 0x48143b
mov eax, dword [ebp - 0x24]
imul eax, eax, 0xa
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
lea eax, [eax + edx - 0x30]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp + 8]
add eax, 1
mov dword [ebp + 8], eax
jmp 0x48140b
cmp dword [ebp - 0x24], 0x40
jl 0x48145e
movsd xmm0, qword [ebp - 0x2c]
mulsd xmm0, qword [0x562e48]
movsd qword [ebp - 0x2c], xmm0
mov eax, dword [ebp - 0x24]
sub eax, 0x40
mov dword [ebp - 0x24], eax
jmp 0x48143b
cmp dword [ebp - 0x24], 0x10
jl 0x481481
movsd xmm0, qword [ebp - 0x2c]
mulsd xmm0, qword [0x562e30]
movsd qword [ebp - 0x2c], xmm0
mov eax, dword [ebp - 0x24]
sub eax, 0x10
mov dword [ebp - 0x24], eax
jmp 0x48145e
cmp dword [ebp - 0x24], 4
jl 0x4814a4
movsd xmm0, qword [ebp - 0x2c]
mulsd xmm0, qword [0x562df0]
movsd qword [ebp - 0x2c], xmm0
mov eax, dword [ebp - 0x24]
sub eax, 4
mov dword [ebp - 0x24], eax
jmp 0x481481
cmp dword [ebp - 0x24], 1
jl 0x4814c7
movsd xmm0, qword [ebp - 0x2c]
mulsd xmm0, qword [0x562d88]
movsd qword [ebp - 0x2c], xmm0
mov eax, dword [ebp - 0x24]
sub eax, 1
mov dword [ebp - 0x24], eax
jmp 0x4814a4
cmp dword [ebp - 0x20], 0
jge 0x4814de
movsd xmm0, qword [ebp - 0x10]
divsd xmm0, qword [ebp - 0x2c]
movsd qword [ebp - 0x10], xmm0
jmp 0x4814ed
movsd xmm0, qword [ebp - 0x10]
mulsd xmm0, qword [ebp - 0x2c]
movsd qword [ebp - 0x10], xmm0
cmp dword [ebp - 4], 0
jge 0x481507
movsd xmm0, qword [ebp - 0x10]
xorpd xmm0, xmmword [0x585130]
movsd qword [ebp - 0x74], xmm0
jmp 0x481511
movsd xmm0, qword [ebp - 0x10]
movsd qword [ebp - 0x74], xmm0
mov eax, dword [ebp + 0xc]
movsd xmm0, qword [ebp - 0x74]
movsd qword [eax], xmm0
mov eax, dword [ebp + 8]
sub eax, dword [ebp - 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret