troller12 |
10-22-2015 07:00 AM |
Re: Recording RTMP Webcams from cam4(HowTo record XXX/adult web-cam videos from cam4.
Hi,
I could post the unpacked files of Elgero's cmd tools so that you can decompile it any Net decompiler.No idea why Elgero did protect his files. :) Bellow some small codes.
Code:
private bool method_11(string string_0, string string_1)
{
GClass6 class2 = new GClass6 {
int_0 = 3,
genum3_0 = GEnum3.Large,
genum2_0 = GEnum2.Invoke_AMF3
};
class2.method_2(0x1000);
GClass3.smethod_0("Sending receiveRTMPResponse");
List<byte> list = new List<byte> { 0 };
smethod_4(list, "receiveRTMPResponse");
int num = this.int_11 + 1;
this.int_11 = num;
smethod_8(list, (double) num);
list.Add(5);
list.Add(0x11);
list.Add(10);
list.Add(11);
list.Add(1);
smethod_0(list, "client", string_0);
smethod_0(list, "result", string_1);
list.Add(1);
list.Add(1);
list.Add(1);
Array.Copy(list.ToArray(), class2.byte_0, list.Count);
class2.uint_1 = (uint) list.Count;
return this.method_26(class2, true);
}
Code:
private static void smethod_5()
{
GClass2 l = new GClass2 {
string_1 = string_1,
int_0 = 0x78f,
string_7 = string_2,
string_4 = string_0,
string_2 = string_3,
string_5 = "http://edgecast.cam4s.com/client/Cam4Chatless_1.25_s_guest.swf",
string_6 = string.Format("http://www.cam4.com/{0}", string_4)
};
GClass5 class2 = new GClass5(l);
GClass6 class3 = null;
int num = 0;
uint num2 = 0;
uint num3 = 0;
long elapsedMilliseconds = 0L;
Stopwatch stopwatch = new Stopwatch();
Console.CursorVisible = false;
smethod_10("Connecting...");
if (!class2.method_0())
{
smethod_12("RTMP Connection Failed.");
}
smethod_10("Connected.");
smethod_10("Starting Live Stream.");
smethod_11("0 kB", "00:00:00");
try
{
using (FileStream stream = new FileStream(string_5, FileMode.Create, FileAccess.ReadWrite, FileShare.Read, 0x3e800))
{
stream.Write(byte_0, 0, byte_0.Length);
stopwatch.Start();
goto Label_0141;
Label_00F3:
if (!class2.method_39(class3, stream, ref num2, ref num3))
{
goto Label_0150;
}
if ((stopwatch.ElapsedMilliseconds - elapsedMilliseconds) >= 500L)
{
elapsedMilliseconds = stopwatch.ElapsedMilliseconds;
smethod_11(smethod_7((long) num3), smethod_8(num2));
}
Label_0133:
if ((num == 2) || !class2.Boolean_0)
{
return;
}
Label_0141:
num = class2.method_6(out class3);
if (num == 1)
{
goto Label_00F3;
}
goto Label_0133;
Label_0150:
smethod_12("Downloading aborted, because the stream is corrupt.");
}
}
catch (Exception exception1)
{
smethod_12(exception1.Message);
}
}
Code:
private static void smethod_6()
{
GClass2 l = new GClass2 {
string_1 = string_1,
int_0 = 0x78f,
string_7 = string_2,
string_4 = string_0,
string_2 = string_3,
string_5 = "http://edgecast.cam4s.com/client/Cam4Chatless_1.25_s_guest.swf",
string_6 = string.Format("http://www.cam4.com/{0}", string_4)
};
GClass5 class2 = new GClass5(l);
GClass6 class3 = null;
int num = 0;
uint num2 = 0;
uint num3 = 0;
if (!class2.method_0())
{
smethod_12("RTMP Connection Failed.");
}
using (Stream stream = Console.OpenStandardOutput(0x8000))
{
stream.Write(byte_0, 0, byte_0.Length);
goto Label_00BC;
Label_009F:
if (!class2.method_39(class3, stream, ref num2, ref num3))
{
goto Label_00CD;
}
Label_00AE:
if ((num == 2) || !class2.Boolean_0)
{
return;
}
Label_00BC:
num = class2.method_6(out class3);
if (num == 1)
{
goto Label_009F;
}
goto Label_00AE;
Label_00CD:
smethod_12("Downloading aborted, because the stream is corrupt.");
}
}
greetz
|