private EBattlEyeCommandResult SendAcknowledgePacket(string command)
{
try
{
if (!_socket.Connected)
{
return(EBattlEyeCommandResult.NotConnected);
}
var crc32 = new CRC32();
string packet;
string header = "BE";
string hash = crc32.ComputeHash(Helpers.String2Bytes(Helpers.Hex2Ascii("FF02") + command)).Aggregate <byte, string>(null,
(current, b)
=>
current +
b.ToString(
"X2"));
hash = Helpers.Hex2Ascii(hash);
hash = new string(hash.ToCharArray().Reverse().ToArray());
header += hash;
packet = header + Helpers.Hex2Ascii("FF02") + command;
_socket.Send(Helpers.String2Bytes(packet));
_commandSend = DateTime.Now;
}
catch
{
return(EBattlEyeCommandResult.Error);
}
return(EBattlEyeCommandResult.Success);
}