// Token: 0x06000D97 RID: 3479 RVA: 0x00029884 File Offset: 0x00027A84
public override void ReorderArgumentArray(ref object[] args, object state)
{
DefaultBinder.BinderState binderState = (DefaultBinder.BinderState)state;
DefaultBinder.ReorderParams(binderState.m_argsMap, args);
if (!binderState.m_isParamArray)
{
if (args.Length > binderState.m_originalSize)
{
object[] array = new object[binderState.m_originalSize];
Array.Copy(args, 0, array, 0, binderState.m_originalSize);
args = array;
}
return;
}
int num = args.Length - 1;
if (args.Length == binderState.m_originalSize)
{
args[num] = ((object[])args[num])[0];
return;
}
object[] array2 = new object[args.Length];
Array.Copy(args, 0, array2, 0, num);
int i = num;
int num2 = 0;
while (i < array2.Length)
{
array2[i] = ((object[])args[num])[num2];
i++;
num2++;
}
args = array2;
}