Function at 0x65f5e9
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x98
mov eax, dword [ebp + 8]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x80], eax
mov eax, dword [sym.imp.libssp_0.dll___stack_chk_guard]
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 0x6c], 0
jmp 0x65f632
mov eax, dword [ebp - 0x6c]
lea edx, [eax*8]
mov eax, dword [ebp - 0x80]
add eax, edx
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov edx, eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x34], edx
add dword [ebp - 0x6c], 1
cmp dword [ebp - 0x6c], 9
jle 0x65f611
mov dword [ebp - 0x68], 0
jmp 0x65f739
mov dword [ebp - 0x6c], 0
jmp 0x65f6f8
mov eax, dword [ebp - 0x6c]
and eax, 1
test eax, eax
je 0x65f6a8
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
sar eax, 0x1f
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
and eax, dword [ebp - 0x3c]
sar eax, 0x19
neg eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
mov edx, dword [ebp - 0x38]
shl edx, 0x19
add edx, eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x34], edx
mov eax, dword [ebp - 0x6c]
add eax, 1
mov eax, dword [ebp + eax*4 - 0x34]
mov edx, dword [ebp - 0x6c]
add edx, 1
sub eax, dword [ebp - 0x38]
mov dword [ebp + edx*4 - 0x34], eax
jmp 0x65f6f4
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
sar eax, 0x1f
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
and eax, dword [ebp - 0x44]
sar eax, 0x1a
neg eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
mov edx, dword [ebp - 0x40]
shl edx, 0x1a
add edx, eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x34], edx
mov eax, dword [ebp - 0x6c]
add eax, 1
mov eax, dword [ebp + eax*4 - 0x34]
mov edx, dword [ebp - 0x6c]
add edx, 1
sub eax, dword [ebp - 0x40]
mov dword [ebp + edx*4 - 0x34], eax
add dword [ebp - 0x6c], 1
cmp dword [ebp - 0x6c], 8
jle 0x65f650
mov eax, dword [ebp - 0x10]
sar eax, 0x1f
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x10]
and eax, dword [ebp - 0x4c]
sar eax, 0x19
neg eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x48]
shl edx, 0x19
add eax, edx
mov dword [ebp - 0x10], eax
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x48]
imul eax, eax, 0xffffffed
add eax, edx
mov dword [ebp - 0x34], eax
add dword [ebp - 0x68], 1
cmp dword [ebp - 0x68], 1
jle 0x65f644
mov eax, dword [ebp - 0x34]
sar eax, 0x1f
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x34]
and eax, dword [ebp - 0x60]
sar eax, 0x1a
neg eax
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x5c]
shl edx, 0x1a
add eax, edx
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x5c]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x68], 0
jmp 0x65f847
mov dword [ebp - 0x6c], 0
jmp 0x65f80f
mov eax, dword [ebp - 0x6c]
and eax, 1
test eax, eax
je 0x65f7d0
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
sar eax, 0x19
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
and eax, 0x1ffffff
mov edx, eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x34], edx
mov eax, dword [ebp - 0x6c]
add eax, 1
mov ecx, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 0x6c]
add eax, 1
mov edx, dword [ebp - 0x50]
add edx, ecx
mov dword [ebp + eax*4 - 0x34], edx
jmp 0x65f80b
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
sar eax, 0x1a
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
and eax, 0x3ffffff
mov edx, eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x34], edx
mov eax, dword [ebp - 0x6c]
add eax, 1
mov ecx, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 0x6c]
add eax, 1
mov edx, dword [ebp - 0x54]
add edx, ecx
mov dword [ebp + eax*4 - 0x34], edx
add dword [ebp - 0x6c], 1
cmp dword [ebp - 0x6c], 8
jle 0x65f789
mov eax, dword [ebp - 0x10]
sar eax, 0x19
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x10]
and eax, 0x1ffffff
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x58]
mov eax, edx
shl eax, 3
add eax, edx
add eax, eax
add eax, edx
add eax, ecx
mov dword [ebp - 0x34], eax
add dword [ebp - 0x68], 1
cmp dword [ebp - 0x68], 1
jle 0x65f77d
mov eax, dword [ebp - 0x34]
mov dword [esp + 4], 0x3ffffed
mov dword [esp], eax
call fcn.0065f5ad
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x6c], 1
jmp 0x65f8b4
mov eax, dword [ebp - 0x6c]
and eax, 1
test eax, eax
je 0x65f896
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
mov dword [esp + 4], 0x1ffffff
mov dword [esp], eax
call fcn.0065f542
and dword [ebp - 0x64], eax
jmp 0x65f8b0
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
mov dword [esp + 4], 0x3ffffff
mov dword [esp], eax
call fcn.0065f542
and dword [ebp - 0x64], eax
add dword [ebp - 0x6c], 1
cmp dword [ebp - 0x6c], 9
jle 0x65f870
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x64]
and edx, 0x3ffffed
sub eax, edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x6c], 1
jmp 0x65f91a
mov eax, dword [ebp - 0x6c]
and eax, 1
test eax, eax
je 0x65f8fb
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
mov edx, dword [ebp - 0x64]
and edx, 0x1ffffff
sub eax, edx
mov edx, eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x34], edx
jmp 0x65f916
mov eax, dword [ebp - 0x6c]
mov eax, dword [ebp + eax*4 - 0x34]
mov edx, dword [ebp - 0x64]
and edx, 0x3ffffff
sub eax, edx
mov edx, eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x34], edx
add dword [ebp - 0x6c], 1
cmp dword [ebp - 0x6c], 9
jle 0x65f8d4
mov eax, dword [ebp - 0x30]
shl eax, 2
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x2c]
shl eax, 3
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x28]
shl eax, 5
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x24]
shl eax, 6
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x1c]
add eax, eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x18]
shl eax, 3
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
shl eax, 4
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
shl eax, 6
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x7c]
mov byte [eax], 0
mov eax, dword [ebp - 0x7c]
add eax, 0x10
mov byte [eax], 0
mov eax, dword [ebp - 0x7c]
movzx eax, byte [eax]
mov edx, eax
mov eax, dword [ebp - 0x34]
or eax, edx
mov edx, eax
mov eax, dword [ebp - 0x7c]
mov byte [eax], dl
mov eax, dword [ebp - 0x34]
sar eax, 8
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 1
mov byte [eax], dl
mov eax, dword [ebp - 0x34]
sar eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 2
mov byte [eax], dl
mov eax, dword [ebp - 0x34]
shr eax, 0x18
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 3
mov byte [eax], dl
mov eax, dword [ebp - 0x7c]
add eax, 3
movzx eax, byte [eax]
mov edx, eax
mov eax, dword [ebp - 0x30]
or edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 3
mov byte [eax], dl
mov eax, dword [ebp - 0x30]
sar eax, 8
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 4
mov byte [eax], dl
mov eax, dword [ebp - 0x30]
sar eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 5
mov byte [eax], dl
mov eax, dword [ebp - 0x30]
shr eax, 0x18
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 6
mov byte [eax], dl
mov eax, dword [ebp - 0x7c]
add eax, 6
movzx eax, byte [eax]
mov edx, eax
mov eax, dword [ebp - 0x2c]
or edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 6
mov byte [eax], dl
mov eax, dword [ebp - 0x2c]
sar eax, 8
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 7
mov byte [eax], dl
mov eax, dword [ebp - 0x2c]
sar eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 8
mov byte [eax], dl
mov eax, dword [ebp - 0x2c]
shr eax, 0x18
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 9
mov byte [eax], dl
mov eax, dword [ebp - 0x7c]
add eax, 9
movzx eax, byte [eax]
mov edx, eax
mov eax, dword [ebp - 0x28]
or edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 9
mov byte [eax], dl
mov eax, dword [ebp - 0x28]
sar eax, 8
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0xa
mov byte [eax], dl
mov eax, dword [ebp - 0x28]
sar eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0xb
mov byte [eax], dl
mov eax, dword [ebp - 0x28]
shr eax, 0x18
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0xc
mov byte [eax], dl
mov eax, dword [ebp - 0x7c]
add eax, 0xc
movzx eax, byte [eax]
mov edx, eax
mov eax, dword [ebp - 0x24]
or edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0xc
mov byte [eax], dl
mov eax, dword [ebp - 0x24]
sar eax, 8
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0xd
mov byte [eax], dl
mov eax, dword [ebp - 0x24]
sar eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0xe
mov byte [eax], dl
mov eax, dword [ebp - 0x24]
shr eax, 0x18
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0xf
mov byte [eax], dl
mov eax, dword [ebp - 0x7c]
add eax, 0x10
movzx eax, byte [eax]
mov edx, eax
mov eax, dword [ebp - 0x20]
or edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x10
mov byte [eax], dl
mov eax, dword [ebp - 0x20]
sar eax, 8
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x11
mov byte [eax], dl
mov eax, dword [ebp - 0x20]
sar eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x12
mov byte [eax], dl
mov eax, dword [ebp - 0x20]
shr eax, 0x18
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x13
mov byte [eax], dl
mov eax, dword [ebp - 0x7c]
add eax, 0x13
movzx eax, byte [eax]
mov edx, eax
mov eax, dword [ebp - 0x1c]
or edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x13
mov byte [eax], dl
mov eax, dword [ebp - 0x1c]
sar eax, 8
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x14
mov byte [eax], dl
mov eax, dword [ebp - 0x1c]
sar eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x15
mov byte [eax], dl
mov eax, dword [ebp - 0x1c]
shr eax, 0x18
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x16
mov byte [eax], dl
mov eax, dword [ebp - 0x7c]
add eax, 0x16
movzx eax, byte [eax]
mov edx, eax
mov eax, dword [ebp - 0x18]
or edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x16
mov byte [eax], dl
mov eax, dword [ebp - 0x18]
sar eax, 8
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x17
mov byte [eax], dl
mov eax, dword [ebp - 0x18]
sar eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x18
mov byte [eax], dl
mov eax, dword [ebp - 0x18]
shr eax, 0x18
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x19
mov byte [eax], dl
mov eax, dword [ebp - 0x7c]
add eax, 0x19
movzx eax, byte [eax]
mov edx, eax
mov eax, dword [ebp - 0x14]
or edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x19
mov byte [eax], dl
mov eax, dword [ebp - 0x14]
sar eax, 8
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x1a
mov byte [eax], dl
mov eax, dword [ebp - 0x14]
sar eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x1b
mov byte [eax], dl
mov eax, dword [ebp - 0x14]
shr eax, 0x18
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x1c
mov byte [eax], dl
mov eax, dword [ebp - 0x7c]
add eax, 0x1c
movzx eax, byte [eax]
mov edx, eax
mov eax, dword [ebp - 0x10]
or edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x1c
mov byte [eax], dl
mov eax, dword [ebp - 0x10]
sar eax, 8
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x1d
mov byte [eax], dl
mov eax, dword [ebp - 0x10]
sar eax, 0x10
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x1e
mov byte [eax], dl
mov eax, dword [ebp - 0x10]
shr eax, 0x18
mov edx, eax
mov eax, dword [ebp - 0x7c]
add eax, 0x1f
mov byte [eax], dl
nop
mov eax, dword [ebp - 0xc]
xor eax, dword [sym.imp.libssp_0.dll___stack_chk_guard]
je 0x65fc53
call sub.libssp_0.dll___stack_chk_fail
leave
ret