More fixes

This commit is contained in:
Yoshi Askharoun
2021-11-30 01:00:46 -06:00
parent 3cc946f091
commit b3d01b82e3
56 changed files with 895 additions and 1458 deletions
+6
View File
@@ -6,6 +6,12 @@ internal unsafe class CComPtrMgd<TPtr> : IDisposable where TPtr : unmanaged
{
public TPtr* p = null;
public CComPtrMgd() { }
public CComPtrMgd(IntPtr p) : this((TPtr*)p.ToPointer()) { }
public CComPtrMgd(TPtr* p) => op_Assign(p);
private void _007ECComPtrMgd()
{
Release();
+10 -2
View File
@@ -3,9 +3,9 @@
internal unsafe class CComPtrNtv<TPtr> : IDisposable where TPtr : unmanaged
{
private bool disposedValue;
public TPtr* p;
public TPtr* p = (TPtr*)IntPtr.Zero.ToPointer();
public bool IsNullPtr => p == IntPtr.Zero.ToPointer();
public bool IsNullPtr => p == null || p == IntPtr.Zero.ToPointer();
internal CComPtrNtv()
{
@@ -33,6 +33,14 @@ internal unsafe class CComPtrNtv<TPtr> : IDisposable where TPtr : unmanaged
/// </summary>
public static implicit operator bool(CComPtrNtv<TPtr> obj) => obj.IsNullPtr;
public TPtr** GetPtrToPtr()
{
fixed (TPtr** ptr = &p)
{
return ptr;
}
}
protected virtual void Dispose(bool disposing)
{
if (!disposedValue)
@@ -839,9 +839,9 @@ namespace Microsoft.Zune.Configuration
IConfigurationManager* ptr;
IConfigurationManager* intPtr;
HKEY* hHive;
_003F val;
_003F val2;
_003F val3;
object val;
object val2;
object val3;
ref byte val4;
IntPtr intPtr2;
int num;
@@ -67,7 +67,7 @@ namespace Microsoft.Zune.Messaging
bool result = false;
if (m_pMessaging != null)
{
fixed (char* strMessageUrlPtr = strMessageUrl.ToCharArray())
fixed (char* strMessageUrlPtr = strMessageUrl)
{
ushort* ptr = (ushort*)strMessageUrlPtr;
try
@@ -94,7 +94,7 @@ namespace Microsoft.Zune.Messaging
bool result = false;
if (m_pMessaging != null)
{
fixed (char* strMessageUrlPtr = strMessageUrl.ToCharArray())
fixed (char* strMessageUrlPtr = strMessageUrl)
{
ushort* ptr = (ushort*)strMessageUrlPtr;
try
@@ -121,7 +121,7 @@ namespace Microsoft.Zune.Messaging
bool result = false;
if (m_pMessaging != null)
{
fixed (char* strPostUrlPtr = strPostUrl.ToCharArray())
fixed (char* strPostUrlPtr = strPostUrl)
{
ushort* ptr = (ushort*)strPostUrlPtr;
try
@@ -148,7 +148,7 @@ namespace Microsoft.Zune.Messaging
bool result = false;
if (m_pMessaging != null)
{
fixed (char* strPostUrlPtr = strPostUrl.ToCharArray())
fixed (char* strPostUrlPtr = strPostUrl)
{
ushort* ptr = (ushort*)strPostUrlPtr;
try
@@ -175,12 +175,12 @@ namespace Microsoft.Zune.Messaging
bool result = false;
if (m_pMessaging != null)
{
fixed (char* strPostUrlPtr = strPostUrl.ToCharArray())
fixed (char* strPostUrlPtr = strPostUrl)
{
ushort* ptr = (ushort*)strPostUrlPtr;
try
{
fixed (char* strZuneTagPtr = strZuneTag.ToCharArray())
fixed (char* strZuneTagPtr = strZuneTag)
{
ushort* ptr2 = (ushort*)strZuneTagPtr;
try
@@ -228,26 +228,26 @@ namespace Microsoft.Zune.Messaging
goto IL_0086;
}
}
fixed (char* strPostUrlPtr = strPostUrl.ToCharArray())
fixed (char* strPostUrlPtr = strPostUrl)
{
ushort* ptr = (ushort*)strPostUrlPtr;
try
{
fixed (char* strZuneTagPtr = strZuneTag.ToCharArray())
fixed (char* strZuneTagPtr = strZuneTag)
{
ushort* ptr2 = (ushort*)strZuneTagPtr;
try
{
fixed (char* strMessagePtr = strMessage.ToCharArray())
fixed (char* strMessagePtr = strMessage)
{
ushort* ptr3 = (ushort*)strMessagePtr;
try
{
long num2 = *(long*)m_pMessaging + 112;
IZuneNetMessaging* pMessaging = m_pMessaging;
_003F val = ptr;
_003F val2 = ptr2;
_003F val3 = ptr3;
var val = ptr;
var val2 = ptr2;
var val3 = ptr3;
long num3 = *(long*)(cComPtrNtv_003CIMessagingCallback_003E.p);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort*, ushort*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (ushort*)(nint)val, (ushort*)(nint)val2, (ushort*)(nint)val3, (IMessagingCallback*)num3);
}
@@ -291,7 +291,7 @@ namespace Microsoft.Zune.Messaging
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IMessagingCallback*, void>)(&Module.CComPtrNtv_003CIMessagingCallback_003E_002E_007Bdtor_007D), cComPtrNtv_003CIMessagingCallback_003E.p);
cComPtrNtv_003CIMessagingCallback_003E.Dispose();
throw;
}
cComPtrNtv_003CIMessagingCallback_003E.Dispose();
@@ -319,12 +319,12 @@ namespace Microsoft.Zune.Messaging
goto IL_0073;
}
}
fixed (char* strPostUrlPtr = strPostUrl.ToCharArray())
fixed (char* strPostUrlPtr = strPostUrl)
{
ushort* ptr = (ushort*)strPostUrlPtr;
try
{
fixed (char* strZuneTagPtr = strZuneTag.ToCharArray())
fixed (char* strZuneTagPtr = strZuneTag)
{
ushort* ptr2 = (ushort*)strZuneTagPtr;
try
@@ -368,7 +368,7 @@ namespace Microsoft.Zune.Messaging
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IMessagingCallback*, void>)(&Module.CComPtrNtv_003CIMessagingCallback_003E_002E_007Bdtor_007D), cComPtrNtv_003CIMessagingCallback_003E.p);
cComPtrNtv_003CIMessagingCallback_003E.Dispose();
throw;
}
cComPtrNtv_003CIMessagingCallback_003E.Dispose();
@@ -399,22 +399,22 @@ namespace Microsoft.Zune.Messaging
}
if (num >= 0)
{
fixed (char* strPostUrlPtr = strPostUrl.ToCharArray())
fixed (char* strPostUrlPtr = strPostUrl)
{
ushort* ptr3 = (ushort*)strPostUrlPtr;
try
{
fixed (char* strMessagePtr = strMessage.ToCharArray())
fixed (char* strMessagePtr = strMessage)
{
ushort* ptr4 = (ushort*)strMessagePtr;
try
{
fixed (char* strRecipientZuneTagsPtr = strRecipientZuneTags.ToCharArray())
fixed (char* strRecipientZuneTagsPtr = strRecipientZuneTags)
{
ushort* ptr5 = (ushort*)strRecipientZuneTagsPtr;
try
{
fixed (char* strRequestTypePtr = strRequestType.ToCharArray())
fixed (char* strRequestTypePtr = strRequestType)
{
ushort* ptr6 = (ushort*)strRequestTypePtr;
try
@@ -503,22 +503,20 @@ namespace Microsoft.Zune.Messaging
goto IL_0074;
}
}
fixed (char* strPostUrlPtr = strPostUrl.ToCharArray())
fixed (char* strPostUrlPtr = strPostUrl)
{
ushort* ptr = (ushort*)strPostUrlPtr;
try
{
fixed (char* strMessagePtr = strMessage.ToCharArray())
fixed (char* strMessagePtr = strMessage)
{
ushort* ptr2 = (ushort*)strMessagePtr;
try
{
long num2 = *(long*)m_pMessaging + 72;
IZuneNetMessaging* pMessaging = m_pMessaging;
_003F val = ptr;
_003F val2 = ptr2;
long num3 = *(long*)(cComPtrNtv_003CIMessagingCallback_003E.p);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (ushort*)(nint)val, (ushort*)(nint)val2, (IMessagingCallback*)num3);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (ushort*)(nint)ptr, (ushort*)(nint)ptr2, (IMessagingCallback*)num3);
}
catch
{
@@ -549,14 +547,11 @@ namespace Microsoft.Zune.Messaging
goto IL_0076;
end_IL_0013:;
}
catch
finally
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IMessagingCallback*, void>)(&Module.CComPtrNtv_003CIMessagingCallback_003E_002E_007Bdtor_007D), cComPtrNtv_003CIMessagingCallback_003E.p);
throw;
}
cComPtrNtv_003CIMessagingCallback_003E.Dispose();
}
}
return result;
}
@@ -581,22 +576,20 @@ namespace Microsoft.Zune.Messaging
goto IL_0074;
}
}
fixed (char* strFavoritesUrlPtr = strFavoritesUrl.ToCharArray())
fixed (char* strFavoritesUrlPtr = strFavoritesUrl)
{
ushort* ptr2 = (ushort*)strFavoritesUrlPtr;
try
{
fixed (char* strInstructionsPtr = strInstructions.ToCharArray())
fixed (char* strInstructionsPtr = strInstructions)
{
ushort* ptr3 = (ushort*)strInstructionsPtr;
try
{
long num2 = *(long*)m_pMessaging + 80;
IZuneNetMessaging* pMessaging = m_pMessaging;
_003F val = ptr2;
_003F val2 = ptr3;
IMessagingCallback* intPtr = ptr;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EFavoritesAction, ushort*, ushort*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (EFavoritesAction)eAction, (ushort*)(nint)val, (ushort*)(nint)val2, intPtr);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EFavoritesAction, ushort*, ushort*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (EFavoritesAction)eAction, (ushort*)(nint)ptr, (ushort*)(nint)ptr2, intPtr);
}
catch
{
@@ -657,22 +650,20 @@ namespace Microsoft.Zune.Messaging
goto IL_0071;
}
}
fixed (char* strProfileUrlPtr = strProfileUrl.ToCharArray())
fixed (char* strProfileUrlPtr = strProfileUrl)
{
ushort* ptr2 = (ushort*)strProfileUrlPtr;
try
{
fixed (char* strFieldValuePtr = strFieldValue.ToCharArray())
fixed (char* strFieldValuePtr = strFieldValue)
{
ushort* ptr3 = (ushort*)strFieldValuePtr;
try
{
long num2 = *(long*)m_pMessaging + 88;
IZuneNetMessaging* pMessaging = m_pMessaging;
_003F val = ptr2;
_003F val2 = ptr3;
IMessagingCallback* intPtr = ptr;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (ushort*)(nint)val, (ushort*)(nint)val2, intPtr);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (ushort*)(nint)ptr, (ushort*)(nint)ptr2, intPtr);
}
catch
{
@@ -732,22 +723,20 @@ namespace Microsoft.Zune.Messaging
goto IL_008c;
}
}
fixed (char* strProfileImageUrlPtr = strProfileImageUrl.ToCharArray())
fixed (char* strProfileImageUrlPtr = strProfileImageUrl)
{
ushort* ptr = (ushort*)strProfileImageUrlPtr;
try
{
fixed (char* strProfileImageResourcePtr = strProfileImageResource.ToCharArray())
fixed (char* strProfileImageResourcePtr = strProfileImageResource)
{
ushort* ptr2 = (ushort*)strProfileImageResourcePtr;
try
{
long num2 = *(long*)m_pMessaging + 96;
IZuneNetMessaging* pMessaging = m_pMessaging;
_003F val = ptr;
_003F val2 = ptr2;
long num3 = *(long*)(cComPtrNtv_003CIMessagingCallback_003E.p);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (ushort*)(nint)val, (ushort*)(nint)val2, (IMessagingCallback*)num3);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (ushort*)(nint)ptr, (ushort*)(nint)ptr2, (IMessagingCallback*)num3);
}
catch
{
@@ -781,7 +770,7 @@ namespace Microsoft.Zune.Messaging
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IMessagingCallback*, void>)(&Module.CComPtrNtv_003CIMessagingCallback_003E_002E_007Bdtor_007D), cComPtrNtv_003CIMessagingCallback_003E.p);
cComPtrNtv_003CIMessagingCallback_003E.Dispose();
throw;
}
cComPtrNtv_003CIMessagingCallback_003E.Dispose();
@@ -814,7 +803,7 @@ namespace Microsoft.Zune.Messaging
num = ((!success) ? (-2147467259) : num);
if (num >= 0)
{
fixed (char* strProfileImageUrlPtr = strProfileImageUrl.ToCharArray())
fixed (char* strProfileImageUrlPtr = strProfileImageUrl)
{
ushort* ptr2 = (ushort*)strProfileImageUrlPtr;
try
@@ -822,9 +811,8 @@ namespace Microsoft.Zune.Messaging
HBITMAP* ptr = (HBITMAP*)(int)profileImage.DangerousGetHandle();
long num2 = *(long*)m_pMessaging + 104;
IZuneNetMessaging* pMessaging = m_pMessaging;
_003F val = ptr2;
long num3 = *(long*)(cComPtrNtv_003CIMessagingCallback_003E.p);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, HBITMAP*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (ushort*)(nint)val, ptr, (IMessagingCallback*)num3);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, HBITMAP*, IMessagingCallback*, int>)(*(ulong*)num2))((nint)pMessaging, (ushort*)(nint)ptr2, ptr, (IMessagingCallback*)num3);
}
catch
{
@@ -852,7 +840,7 @@ namespace Microsoft.Zune.Messaging
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IMessagingCallback*, void>)(&Module.CComPtrNtv_003CIMessagingCallback_003E_002E_007Bdtor_007D), cComPtrNtv_003CIMessagingCallback_003E.p);
cComPtrNtv_003CIMessagingCallback_003E.Dispose();
throw;
}
cComPtrNtv_003CIMessagingCallback_003E.Dispose();
@@ -869,12 +857,12 @@ namespace Microsoft.Zune.Messaging
{
ushort* ptr = null;
int num = 0;
fixed (char* titlePtr = title.ToCharArray())
fixed (char* titlePtr = title)
{
ushort* ptr2 = (ushort*)titlePtr;
try
{
fixed (char* collectionNamePtr = collectionName.ToCharArray())
fixed (char* collectionNamePtr = collectionName)
{
ushort* ptr3 = (ushort*)collectionNamePtr;
try
@@ -916,17 +904,17 @@ namespace Microsoft.Zune.Messaging
bool result = false;
if (m_pMessaging != null)
{
fixed (char* titlePtr = title.ToCharArray())
fixed (char* titlePtr = title)
{
ushort* ptr = (ushort*)titlePtr;
try
{
fixed (char* collectionNamePtr = collectionName.ToCharArray())
fixed (char* collectionNamePtr = collectionName)
{
ushort* ptr2 = (ushort*)collectionNamePtr;
try
{
fixed (char* localFilePathPtr = localFilePath.ToCharArray())
fixed (char* localFilePathPtr = localFilePath)
{
ushort* ptr3 = (ushort*)localFilePathPtr;
try
@@ -968,7 +956,7 @@ namespace Microsoft.Zune.Messaging
int num = 0;
if (m_pMessaging != null)
{
fixed (char* collectionNamePtr = collectionName.ToCharArray())
fixed (char* collectionNamePtr = collectionName)
{
ushort* ptr = (ushort*)collectionNamePtr;
try
@@ -88,7 +88,7 @@ namespace Microsoft.Zune.Messaging
{
*(short*)(&cComPropVariant) = 8;
Unsafe.As<PROPVARIANT, long>(ref Unsafe.AddByteOffset(ref cComPropVariant, 8)) = (nint)Module.SysAllocString(ptr3);
PROPVARIANT tagPROPVARIANT = (PROPVARIANT)cComPropVariant;
PROPVARIANT tagPROPVARIANT = cComPropVariant;
IMSMediaSchemaPropertySet* intPtr = ptr2;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr2 + 56)))((nint)intPtr, 16777217u, tagPROPVARIANT);
}
@@ -112,7 +112,7 @@ namespace Microsoft.Zune.Messaging
{
*(short*)(&cComPropVariant2) = 8;
Unsafe.As<PROPVARIANT, long>(ref Unsafe.AddByteOffset(ref cComPropVariant2, 8)) = (nint)Module.SysAllocString(ptr4);
PROPVARIANT tagPROPVARIANT2 = (PROPVARIANT)cComPropVariant2;
PROPVARIANT tagPROPVARIANT2 = cComPropVariant2;
IMSMediaSchemaPropertySet* intPtr2 = ptr2;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr2 + 56)))((nint)intPtr2, 16777219u, tagPROPVARIANT2);
}
@@ -135,7 +135,7 @@ namespace Microsoft.Zune.Messaging
}
*(short*)(&cComPropVariant3) = 13;
Unsafe.As<PROPVARIANT, long>(ref Unsafe.AddByteOffset(ref cComPropVariant3, 8)) = (nint)ptr;
PROPVARIANT tagPROPVARIANT3 = (PROPVARIANT)cComPropVariant3;
PROPVARIANT tagPROPVARIANT3 = cComPropVariant3;
IMSMediaSchemaPropertySet* intPtr3 = ptr2;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr2 + 56)))((nint)intPtr3, 3229617665u, tagPROPVARIANT3);
if (num < 0)
@@ -206,7 +206,7 @@ namespace Microsoft.Zune.Messaging
gUID = (Guid)property;
}
string text = dataProviderObject.GetProperty("Title") as string;
object s = ((!(text == (string)null)) ? text : "");
object s = ((!(text == null)) ? text : "");
while (true)
{
fixed (char* sPtr = ((string)s).ToCharArray())
@@ -236,7 +236,7 @@ namespace Microsoft.Zune.Messaging
gUID = (Guid)property;
}
text = dataProviderObject.GetProperty("Title") as string;
s = ((!(text == (string)null)) ? text : "");
s = ((!(text == null)) ? text : "");
}
}
}
@@ -50,7 +50,7 @@ namespace Microsoft.Zune.Playlist
EMediaTypes type = m_type;
uint atom;
EAutoPlaylistRuleOperators op;
int num3 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, uint*, EAutoPlaylistRuleOperators*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 40)))((nint)intPtr, (EMediaTypes)(EMediaTypes)type, (uint)(uint)(uint)num, (uint)(uint)(uint)num2, (uint*)(uint*)&atom, (EAutoPlaylistRuleOperators*)(EAutoPlaylistRuleOperators*)&op, (PROPVARIANT)(PROPVARIANT)cComPropVariant);
int num3 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, uint*, EAutoPlaylistRuleOperators*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 40)))((nint)intPtr, type, (uint)num, (uint)num2, &atom, &op, cComPropVariant);
if (num3 >= 0)
{
if (num3 == 1)
@@ -92,7 +92,7 @@ namespace Microsoft.Zune.Playlist
try
{
IAutoPlaylistRules* intPtr2 = ptr;
num5 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, uint*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 72)))((nint)intPtr2, (uint)(uint)0u, (uint*)(uint*)&atom2, (PROPVARIANT)(PROPVARIANT)cComPropVariant2);
num5 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, uint*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 72)))((nint)intPtr2, 0u, &atom2, cComPropVariant2);
if (num5 < 0)
{
goto IL_0160;
@@ -128,7 +128,7 @@ namespace Microsoft.Zune.Playlist
try
{
IAutoPlaylistRules* intPtr3 = ptr;
num5 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, uint*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 72)))((nint)intPtr3, (uint)(uint)(uint)num4, (uint*)(uint*)&atom2, (PROPVARIANT)(PROPVARIANT)cComPropVariant2);
num5 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, uint*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 72)))((nint)intPtr3, (uint)num4, &atom2, cComPropVariant2);
if (num5 >= 0)
{
continue;
@@ -182,7 +182,7 @@ namespace Microsoft.Zune.Playlist
IAutoPlaylistRules* pAutoPlaylistRules2 = m_pAutoPlaylistRules;
EMediaTypes type = m_type;
int currentRuleSetGroup = m_currentRuleSetGroup;
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, EAutoPlaylistRuleOperators, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules2 + 32)))((nint)pAutoPlaylistRules2, (EMediaTypes)(EMediaTypes)type, (uint)(uint)(uint)currentRuleSetGroup, (uint)(uint)204u, (EAutoPlaylistRuleOperators)(EAutoPlaylistRuleOperators)(EAutoPlaylistRuleOperators)1, (PROPVARIANT)(PROPVARIANT)cComPropVariant);
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, EAutoPlaylistRuleOperators, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules2 + 32)))((nint)pAutoPlaylistRules2, type, (uint)currentRuleSetGroup, 204u, (EAutoPlaylistRuleOperators)1, cComPropVariant);
cComPropVariant.Clear();
}
@@ -201,7 +201,7 @@ namespace Microsoft.Zune.Playlist
IAutoPlaylistRules* pAutoPlaylistRules = m_pAutoPlaylistRules;
EMediaTypes type = m_type;
int currentRuleSetGroup = m_currentRuleSetGroup;
num2 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, EAutoPlaylistRuleOperators, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules + 32)))((nint)pAutoPlaylistRules, (EMediaTypes)(EMediaTypes)type, (uint)(uint)(uint)currentRuleSetGroup, (uint)(uint)(uint)num, (EAutoPlaylistRuleOperators)(EAutoPlaylistRuleOperators)(EAutoPlaylistRuleOperators)op, (PROPVARIANT)(PROPVARIANT)cComPropVariant);
num2 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, EAutoPlaylistRuleOperators, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules + 32)))((nint)pAutoPlaylistRules, type, (uint)currentRuleSetGroup, (uint)num, (EAutoPlaylistRuleOperators)op, cComPropVariant);
}
result = num2;
}
@@ -258,7 +258,7 @@ namespace Microsoft.Zune.Playlist
if (num2 >= 0)
{
IAutoPlaylistRules* pAutoPlaylistRules = m_pAutoPlaylistRules;
num2 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules + 64)))((nint)pAutoPlaylistRules, (uint)(uint)(uint)num, (PROPVARIANT)(PROPVARIANT)cComPropVariant);
num2 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules + 64)))((nint)pAutoPlaylistRules, (uint)num, cComPropVariant);
}
result = num2;
}
@@ -357,7 +357,7 @@ namespace Microsoft.Zune.Playlist
long num = *(long*)m_pPlaylistManager + 136;
IPlaylistManager* pPlaylistManager = m_pPlaylistManager;
int num2;
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, int*, PROPVARIANT, int>)(*(ulong*)num))((nint)pPlaylistManager, (ushort*)(ushort*)ptr, (int*)(int*)&num2, (PROPVARIANT)(PROPVARIANT)cComPropVariant);
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, int*, PROPVARIANT, int>)(*(ulong*)num))((nint)pPlaylistManager, ptr, &num2, cComPropVariant);
result = new string((char*)Unsafe.As<PROPVARIANT, ulong>(ref Unsafe.AddByteOffset(ref cComPropVariant, 8)));
}
catch
+29 -47
View File
@@ -26,11 +26,8 @@ namespace Microsoft.Zune.QuickMix
CComPtrNtv<IQuickMixManager> cComPtrNtv_003CIQuickMixManager_003E = new();
try
{
QUICK_MIX_STATUS_INFO qUICK_MIX_STATUS_INFO;
*(sbyte*)(&qUICK_MIX_STATUS_INFO) = 0;
// IL initblk instruction
Unsafe.InitBlockUnaligned(ref Unsafe.AddByteOffset(ref qUICK_MIX_STATUS_INFO, 1), 0, 15);
int singleton = Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(cComPtrNtv_003CIQuickMixManager_003E.p));
QUICK_MIX_STATUS_INFO qUICK_MIX_STATUS_INFO = default;
int singleton = Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(cComPtrNtv_003CIQuickMixManager_003E.GetPtrToPtr()));
if (singleton >= 0)
{
long num = *(long*)(cComPtrNtv_003CIQuickMixManager_003E.p);
@@ -41,7 +38,7 @@ namespace Microsoft.Zune.QuickMix
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IQuickMixManager*, void>)(&Module.CComPtrNtv_003CIQuickMixManager_003E_002E_007Bdtor_007D), cComPtrNtv_003CIQuickMixManager_003E.p);
cComPtrNtv_003CIQuickMixManager_003E.Dispose();
throw;
}
cComPtrNtv_003CIQuickMixManager_003E.Dispose();
@@ -90,11 +87,8 @@ namespace Microsoft.Zune.QuickMix
CComPtrNtv<IQuickMixManager> cComPtrNtv_003CIQuickMixManager_003E = new();
try
{
QUICK_MIX_STATUS_INFO qUICK_MIX_STATUS_INFO;
*(sbyte*)(&qUICK_MIX_STATUS_INFO) = 0;
// IL initblk instruction
Unsafe.InitBlockUnaligned(ref Unsafe.AddByteOffset(ref qUICK_MIX_STATUS_INFO, 1), 0, 15);
if (Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(cComPtrNtv_003CIQuickMixManager_003E.p)) >= 0)
QUICK_MIX_STATUS_INFO qUICK_MIX_STATUS_INFO = default;
if (Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(cComPtrNtv_003CIQuickMixManager_003E.GetPtrToPtr())) >= 0)
{
long num = *(long*)(cComPtrNtv_003CIQuickMixManager_003E.p);
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, QUICK_MIX_STATUS_INFO*, int>)(*(ulong*)(*(long*)(*(ulong*)(cComPtrNtv_003CIQuickMixManager_003E.p)) + 56)))((nint)num, &qUICK_MIX_STATUS_INFO);
@@ -104,7 +98,7 @@ namespace Microsoft.Zune.QuickMix
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IQuickMixManager*, void>)(&Module.CComPtrNtv_003CIQuickMixManager_003E_002E_007Bdtor_007D), cComPtrNtv_003CIQuickMixManager_003E.p);
cComPtrNtv_003CIQuickMixManager_003E.Dispose();
throw;
}
cComPtrNtv_003CIQuickMixManager_003E.Dispose();
@@ -117,6 +111,7 @@ namespace Microsoft.Zune.QuickMix
public unsafe HRESULT CreateSession(EQuickMixMode eQuickMixMode, Guid serviceMediaId, EMediaTypes eMediaType, string mediaTitle, out QuickMixSession quickMixSession)
{
quickMixSession = null;
//IL_0045: Expected I, but got I8
//IL_0045: Expected I, but got I8
//IL_005d: Expected I, but got I8
@@ -127,7 +122,7 @@ namespace Microsoft.Zune.QuickMix
CComPtrNtv<IQuickMixSession> cComPtrNtv_003CIQuickMixSession_003E = new();
try
{
int num = Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(cComPtrNtv_003CIQuickMixManager_003E.p));
int num = Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)cComPtrNtv_003CIQuickMixManager_003E.p);
if (num >= 0)
{
_GUID gUID = serviceMediaId;
@@ -136,9 +131,9 @@ namespace Microsoft.Zune.QuickMix
ushort* ptr = (ushort*)mediaTitlePtr;
try
{
long num2 = *(long*)(*(ulong*)(cComPtrNtv_003CIQuickMixManager_003E.p)) + 24;
long num3 = *(long*)(cComPtrNtv_003CIQuickMixManager_003E.p);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EQuickMixMode, _GUID*, EMediaTypes, ushort*, IQuickMixSession**, int>)(*(ulong*)num2))((nint)num3, eQuickMixMode, &gUID, eMediaType, ptr, (IQuickMixSession**)(cComPtrNtv_003CIQuickMixSession_003E.p));
long num2 = *(long*)*(ulong*)cComPtrNtv_003CIQuickMixManager_003E.p + 24;
long num3 = *(long*)cComPtrNtv_003CIQuickMixManager_003E.p;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EQuickMixMode, _GUID*, EMediaTypes, ushort*, IQuickMixSession**, int>)(*(ulong*)num2))((nint)num3, eQuickMixMode, &gUID, eMediaType, ptr, (IQuickMixSession**)cComPtrNtv_003CIQuickMixSession_003E.p);
}
catch
{
@@ -149,31 +144,26 @@ namespace Microsoft.Zune.QuickMix
}
if (num >= 0)
{
quickMixSession = new QuickMixSession((IQuickMixSession*)(*(ulong*)(cComPtrNtv_003CIQuickMixSession_003E.p)));
quickMixSession = new QuickMixSession((IQuickMixSession*)*(ulong*)cComPtrNtv_003CIQuickMixSession_003E.p);
}
}
result = num;
}
catch
finally
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IQuickMixSession*, void>)(&Module.CComPtrNtv_003CIQuickMixSession_003E_002E_007Bdtor_007D), cComPtrNtv_003CIQuickMixSession_003E.p);
throw;
}
cComPtrNtv_003CIQuickMixSession_003E.Dispose();
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IQuickMixManager*, void>)(&Module.CComPtrNtv_003CIQuickMixManager_003E_002E_007Bdtor_007D), cComPtrNtv_003CIQuickMixManager_003E.p);
throw;
}
finally
{
cComPtrNtv_003CIQuickMixManager_003E.Dispose();
}
return result;
}
public unsafe HRESULT CreateSession(EQuickMixMode eQuickMixMode, int[] seedMediaIds, EMediaTypes eMediaType, out QuickMixSession quickMixSession)
{
quickMixSession = null;
//IL_003d: Expected I, but got I8
//IL_003d: Expected I, but got I8
//IL_0055: Expected I, but got I8
@@ -184,47 +174,41 @@ namespace Microsoft.Zune.QuickMix
CComPtrNtv<IQuickMixSession> cComPtrNtv_003CIQuickMixSession_003E = new();
try
{
int num = Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(cComPtrNtv_003CIQuickMixManager_003E.p));
int num = Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)cComPtrNtv_003CIQuickMixManager_003E.p);
if (num >= 0)
{
fixed (int* ptr = &seedMediaIds[0])
{
try
{
long num2 = *(long*)(*(ulong*)(cComPtrNtv_003CIQuickMixManager_003E.p)) + 32;
long num3 = *(long*)(cComPtrNtv_003CIQuickMixManager_003E.p);
long num2 = *(long*)*(ulong*)cComPtrNtv_003CIQuickMixManager_003E.p + 32;
long num3 = *(long*)cComPtrNtv_003CIQuickMixManager_003E.p;
IntPtr intPtr = (nint)seedMediaIds.LongLength;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EQuickMixMode, int, int*, EMediaTypes, IQuickMixSession**, int>)(*(ulong*)num2))((nint)num3, eQuickMixMode, (int)(nint)intPtr, ptr, eMediaType, (IQuickMixSession**)(cComPtrNtv_003CIQuickMixSession_003E.p));
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EQuickMixMode, int, int*, EMediaTypes, IQuickMixSession**, int>)(*(ulong*)num2))((nint)num3, eQuickMixMode, (int)(nint)intPtr, ptr, eMediaType, (IQuickMixSession**)cComPtrNtv_003CIQuickMixSession_003E.p);
}
catch
{
//try-fault
ptr = null;
seedMediaIds = null;
throw;
}
}
if (num >= 0)
{
quickMixSession = new QuickMixSession((IQuickMixSession*)(*(ulong*)(cComPtrNtv_003CIQuickMixSession_003E.p)));
quickMixSession = new QuickMixSession((IQuickMixSession*)*(ulong*)cComPtrNtv_003CIQuickMixSession_003E.p);
}
}
result = num;
}
catch
finally
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IQuickMixSession*, void>)(&Module.CComPtrNtv_003CIQuickMixSession_003E_002E_007Bdtor_007D), cComPtrNtv_003CIQuickMixSession_003E.p);
throw;
}
cComPtrNtv_003CIQuickMixSession_003E.Dispose();
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IQuickMixManager*, void>)(&Module.CComPtrNtv_003CIQuickMixManager_003E_002E_007Bdtor_007D), cComPtrNtv_003CIQuickMixManager_003E.p);
throw;
}
finally
{
cComPtrNtv_003CIQuickMixManager_003E.Dispose();
}
return result;
}
@@ -274,11 +258,9 @@ namespace Microsoft.Zune.QuickMix
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint>)(*(ulong*)(*(long*)ptr2 + 16)))((nint)ptr2);
}
}
catch
finally
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IQuickMixManager*, void>)(&Module.CComPtrNtv_003CIQuickMixManager_003E_002E_007Bdtor_007D), cComPtrNtv_003CIQuickMixManager_003E.p);
throw;
cComPtrNtv_003CIQuickMixManager_003E.Dispose();
}
cComPtrNtv_003CIQuickMixManager_003E.Dispose();
return num2;
@@ -179,33 +179,27 @@ namespace Microsoft.Zune.QuickMix
public unsafe HRESULT GetPlaylistTitle(out string playlistTitle)
{
playlistTitle = null;
//IL_0023: Expected I, but got I8
//IL_0031: Expected I, but got I8
WBSTRString wBSTRString;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString);
string wBSTRString = "";
HRESULT result;
try
fixed (char* wBSTRStringPtr = wBSTRString)
{
IQuickMixSession* p = m_spSession.p;
int num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, int>)(*(ulong*)(*(long*)p + 64)))((nint)p, (ushort**)(&wBSTRString));
int num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, int>)(*(ulong*)(*(long*)p + 64)))((nint)p, (ushort**)wBSTRStringPtr);
if (num >= 0)
{
playlistTitle = new string((char*)(*(ulong*)(&wBSTRString)));
playlistTitle = wBSTRString;
}
result = num;
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString);
return result;
}
public unsafe HRESULT SaveAsPlaylist(string playlistTitle, CreatePlaylistOption createOption, out int playlistId)
{
playlistId = 0;
//IL_0048: Expected I, but got I8
int num = -1;
fixed (char* playlistTitlePtr = playlistTitle.ToCharArray())
@@ -220,7 +214,7 @@ namespace Microsoft.Zune.QuickMix
if (createOption != CreatePlaylistOption.OverwriteOnConflict)
{
num2 = -2147418113;
goto IL_0051;
goto done;
}
ePlaylistCreateConflictAction = (EPlaylistCreateConflictAction)1;
}
@@ -240,8 +234,8 @@ namespace Microsoft.Zune.QuickMix
{
playlistId = num;
}
goto IL_0051;
IL_0051:
goto done;
done:
return num2;
}
}
File diff suppressed because it is too large Load Diff
+28 -96
View File
@@ -208,38 +208,28 @@ namespace Microsoft.Zune.Service
{
return;
}
WBSTRString wBSTRString;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString);
try
string wBSTRString = "";
fixed (char* wBSTRStringPtr = wBSTRString)
{
WBSTRString wBSTRString2;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString2);
try
string wBSTRString2 = "";
fixed (char* wBSTRString2Ptr = wBSTRString2)
{
WBSTRString wBSTRString3;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString3);
try
string wBSTRString3 = "";
fixed (char* wBSTRString3Ptr = wBSTRString3)
{
WBSTRString wBSTRString4;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString4);
try
string wBSTRString4 = "";
fixed (char* wBSTRString4Ptr = wBSTRString4)
{
WBSTRString wBSTRString5;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString5);
try
string wBSTRString5 = "";
fixed (char* wBSTRString5Ptr = wBSTRString5)
{
WBSTRString wBSTRString6;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString6);
try
string wBSTRString6 = "";
fixed (char* wBSTRString6Ptr = wBSTRString6)
{
WBSTRString wBSTRString7;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString7);
try
string wBSTRString7 = "";
fixed (char* wBSTRString7Ptr = wBSTRString7)
{
_SYSTEMTIME stValue;
*(short*)(&stValue) = 0;
// IL initblk instruction
Unsafe.InitBlockUnaligned(ref Unsafe.AddByteOffset(ref stValue, 2), 0, 14);
_SYSTEMTIME stValue = default;
CComPtrNtv<IAddress> cComPtrNtv_003CIAddress_003E = new();
try
{
@@ -249,15 +239,15 @@ namespace Microsoft.Zune.Service
CComPtrNtv<IPrivacySettings> cComPtrNtv_003CIPrivacySettings_003E = new();
try
{
if (((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, ushort**, _SYSTEMTIME*, ushort**, ushort**, ushort**, ushort**, ushort**, IAddress**, INewsletterSettings**, IPrivacySettings**, IPassportIdentity**, ICreditCard**, int>)(*(ulong*)(*(long*)pAccountUser + 32)))((nint)pAccountUser, (ushort**)(&wBSTRString), (ushort**)(&wBSTRString2), &stValue, (ushort**)(&wBSTRString3), (ushort**)(&wBSTRString4), (ushort**)(&wBSTRString5), (ushort**)(&wBSTRString6), (ushort**)(&wBSTRString7), (IAddress**)(cComPtrNtv_003CIAddress_003E.p), (INewsletterSettings**)(cComPtrNtv_003CINewsletterSettings_003E.p), (IPrivacySettings**)(&ptrNtvIPrivacySettings), null, null) >= 0)
if (((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, ushort**, _SYSTEMTIME*, ushort**, ushort**, ushort**, ushort**, ushort**, IAddress**, INewsletterSettings**, IPrivacySettings**, IPassportIdentity**, ICreditCard**, int>)(*(ulong*)(*(long*)pAccountUser + 32)))((nint)pAccountUser, (ushort**)wBSTRStringPtr, (ushort**)&wBSTRString2Ptr, &stValue, (ushort**)wBSTRString3Ptr, (ushort**)wBSTRString4Ptr, (ushort**)wBSTRString5Ptr, (ushort**)wBSTRString6Ptr, (ushort**)wBSTRString7Ptr, cComPtrNtv_003CIAddress_003E.GetPtrToPtr(), cComPtrNtv_003CINewsletterSettings_003E.GetPtrToPtr(), (IPrivacySettings**)(&ptrNtvIPrivacySettings), null, null) >= 0)
{
m_zuneTag = new string((char*)(*(ulong*)(&wBSTRString)));
m_locale = new string((char*)(*(ulong*)(&wBSTRString2)));
m_firstName = new string((char*)(*(ulong*)(&wBSTRString3)));
m_lastName = new string((char*)(*(ulong*)(&wBSTRString4)));
m_email = new string((char*)(*(ulong*)(&wBSTRString5)));
m_phoneNumber = new string((char*)(*(ulong*)(&wBSTRString6)));
m_mobilePhoneNumber = new string((char*)(*(ulong*)(&wBSTRString7)));
m_zuneTag = wBSTRString;
m_locale = wBSTRString2;
m_firstName = wBSTRString3;
m_lastName = wBSTRString4;
m_email = wBSTRString5;
m_phoneNumber = wBSTRString6;
m_mobilePhoneNumber = wBSTRString7;
DateTime dateTime = (m_birthday = Module.SystemTimeToDateTime(stValue));
m_accountUserType = (AccountUserType)((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EAccountUserType>)(*(ulong*)(*(long*)pAccountUser + 48)))((nint)pAccountUser);
if (*(long*)(cComPtrNtv_003CIAddress_003E.p) != 0L)
@@ -270,85 +260,27 @@ namespace Microsoft.Zune.Service
}
}
}
catch
finally
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IPrivacySettings*, void>)(&Module.CComPtrNtv_003CIPrivacySettings_003E_002E_007Bdtor_007D), cComPtrNtv_003CIPrivacySettings_003E.p);
throw;
}
cComPtrNtv_003CIPrivacySettings_003E.Dispose();
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<INewsletterSettings*, void>)(&Module.CComPtrNtv_003CINewsletterSettings_003E_002E_007Bdtor_007D), cComPtrNtv_003CINewsletterSettings_003E.p);
throw;
}
finally
{
cComPtrNtv_003CINewsletterSettings_003E.Dispose();
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IAddress*, void>)(&Module.CComPtrNtv_003CIAddress_003E_002E_007Bdtor_007D), cComPtrNtv_003CIAddress_003E.p);
throw;
}
finally
{
cComPtrNtv_003CIAddress_003E.Dispose();
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString7);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString7);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString6);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString6);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString5);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString5);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString4);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString4);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString3);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString3);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString2);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString2);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString);
}
public AccountUser()
+19 -67
View File
@@ -101,87 +101,39 @@ namespace Microsoft.Zune.Service
{
return;
}
WBSTRString wBSTRString;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString);
try
string wBSTRString = "";
fixed (char* wBSTRStringPtr = wBSTRString)
{
WBSTRString wBSTRString2;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString2);
try
string wBSTRString2 = "";
fixed (char* wBSTRStringPtr2 = wBSTRString2)
{
WBSTRString wBSTRString3;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString3);
try
string wBSTRString3 = "";
fixed (char* wBSTRStringPtr3 = wBSTRString3)
{
WBSTRString wBSTRString4;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString4);
try
string wBSTRString4 = "";
fixed (char* wBSTRStringPtr4 = wBSTRString4)
{
WBSTRString wBSTRString5;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString5);
try
string wBSTRString5 = "";
fixed (char* wBSTRStringPtr5 = wBSTRString5)
{
WBSTRString wBSTRString6;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString6);
try
string wBSTRString6 = "";
fixed (char* wBSTRStringPtr6 = wBSTRString6)
{
if (((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, ushort**, ushort**, ushort**, ushort**, ushort**, int>)(*(ulong*)(*(long*)pAddress + 32)))((nint)pAddress, (ushort**)(&wBSTRString), (ushort**)(&wBSTRString2), (ushort**)(&wBSTRString3), (ushort**)(&wBSTRString4), (ushort**)(&wBSTRString5), (ushort**)(&wBSTRString6)) >= 0)
if (((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, ushort**, ushort**, ushort**, ushort**, ushort**, int>)(*(ulong*)(*(long*)pAddress + 32)))((nint)pAddress, (ushort**)wBSTRStringPtr, (ushort**)wBSTRStringPtr2, (ushort**)wBSTRStringPtr3, (ushort**)wBSTRStringPtr4, (ushort**)wBSTRStringPtr5, (ushort**)wBSTRStringPtr6) >= 0)
{
m_street1 = new string((char*)(*(ulong*)(&wBSTRString)));
m_street2 = new string((char*)(*(ulong*)(&wBSTRString2)));
m_city = new string((char*)(*(ulong*)(&wBSTRString3)));
m_state = new string((char*)(*(ulong*)(&wBSTRString4)));
m_district = new string((char*)(*(ulong*)(&wBSTRString5)));
m_postalCode = new string((char*)(*(ulong*)(&wBSTRString6)));
m_street1 = wBSTRString;
m_street2 = wBSTRString2;
m_city = wBSTRString3;
m_state = wBSTRString4;
m_district = wBSTRString5;
m_postalCode = wBSTRString6;
}
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString6);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString6);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString5);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString5);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString4);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString4);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString3);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString3);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString2);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString2);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString);
}
public Address(string street1, string street2, string city, string district, string state, string postalCode)
@@ -117,7 +117,7 @@ namespace Microsoft.Zune.Service
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IPriceInfo*, void>)(&Module.CComPtrNtv_003CIPriceInfo_003E_002E_007Bdtor_007D), cComPtrNtv_003CIPriceInfo_003E.p);
cComPtrNtv_003CIPriceInfo_003E.Dispose();
throw;
}
Module.CComPtrNtv_003CIPriceInfo_003E_002E_007Bdtor_007D(cComPtrNtv_003CIPriceInfo_003E.p);
@@ -125,7 +125,7 @@ namespace Microsoft.Zune.Service
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IContextData*, void>)(&Module.CComPtrNtv_003CIContextData_003E_002E_007Bdtor_007D), cComPtrNtv_003CIContextData_003E.p);
cComPtrNtv_003CIContextData_003E.Dispose();
throw;
}
Module.CComPtrNtv_003CIContextData_003E_002E_007Bdtor_007D(cComPtrNtv_003CIContextData_003E.p);
@@ -111,7 +111,7 @@ namespace Microsoft.Zune.Service
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IPriceInfo*, void>)(&Module.CComPtrNtv_003CIPriceInfo_003E_002E_007Bdtor_007D), cComPtrNtv_003CIPriceInfo_003E.p);
cComPtrNtv_003CIPriceInfo_003E.Dispose();
throw;
}
Module.CComPtrNtv_003CIPriceInfo_003E_002E_007Bdtor_007D(cComPtrNtv_003CIPriceInfo_003E.p);
+36 -106
View File
@@ -226,131 +226,61 @@ namespace Microsoft.Zune.Service
CComPtrNtv<IAddress> cComPtrNtv_003CIAddress_003E = new();
try
{
WBSTRString wBSTRString;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString);
try
string wBSTRString = "";
fixed (char* wBSTRStringPtr = wBSTRString)
{
WBSTRString wBSTRString2;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString2);
try
string wBSTRString2 = "";
fixed (char* wBSTRString2Ptr = wBSTRString2)
{
WBSTRString wBSTRString3;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString3);
try
string wBSTRString3 = "";
fixed (char* wBSTRString3Ptr = wBSTRString3)
{
WBSTRString wBSTRString4;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString4);
try
string wBSTRString4 = "";
fixed (char* wBSTRString4Ptr = wBSTRString4)
{
WBSTRString wBSTRString5;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString5);
try
string wBSTRString5 = "";
fixed (char* wBSTRString5Ptr = wBSTRString5)
{
WBSTRString wBSTRString6;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString6);
try
string wBSTRString6 = "";
fixed (char* wBSTRString6Ptr = wBSTRString6)
{
WBSTRString wBSTRString7;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString7);
try
string wBSTRString7 = "";
fixed (char* wBSTRString7Ptr = wBSTRString7)
{
WBSTRString wBSTRString8;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString8);
try
string wBSTRString8 = "";
fixed (char* wBSTRString8Ptr = wBSTRString8)
{
_SYSTEMTIME stValue;
*(short*)(&stValue) = 0;
// IL initblk instruction
Unsafe.InitBlockUnaligned(ref Unsafe.AddByteOffset(ref stValue, 2), 0, 14);
_SYSTEMTIME stValue = default;
ECreditCardType creditCardType;
if (((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, IAddress**, ECreditCardType*, ushort**, ushort**, ushort**, ushort**, ushort**, ushort**, ushort**, ushort**, _SYSTEMTIME*, int>)(*(ulong*)(*(long*)pAddress + 32)))((nint)pAddress, (IAddress**)(cComPtrNtv_003CIAddress_003E.p), &creditCardType, (ushort**)(&wBSTRString), (ushort**)(&wBSTRString2), (ushort**)(&wBSTRString3), (ushort**)(&wBSTRString4), (ushort**)(&wBSTRString5), (ushort**)(&wBSTRString6), (ushort**)(&wBSTRString7), (ushort**)(&wBSTRString8), &stValue) >= 0)
if (((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, IAddress**, ECreditCardType*, ushort**, ushort**, ushort**, ushort**, ushort**, ushort**, ushort**, ushort**, _SYSTEMTIME*, int>)(*(ulong*)(*(long*)pAddress + 32)))((nint)pAddress, (IAddress**)(cComPtrNtv_003CIAddress_003E.p), &creditCardType, (ushort**)(&wBSTRStringPtr), (ushort**)(&wBSTRString2Ptr), (ushort**)(&wBSTRString3Ptr), (ushort**)(&wBSTRString4Ptr), (ushort**)(&wBSTRString5Ptr), (ushort**)(&wBSTRString6Ptr), (ushort**)(&wBSTRString7Ptr), (ushort**)(&wBSTRString8Ptr), &stValue) >= 0)
{
m_address = new Address((IAddress*)(*(ulong*)(cComPtrNtv_003CIAddress_003E.p)));
m_creditCardType = (CreditCardType)creditCardType;
m_accountHolderName = new string((char*)(*(ulong*)(&wBSTRString)));
m_accountNumber = new string((char*)(*(ulong*)(&wBSTRString2)));
m_ccvNumber = new string((char*)(*(ulong*)(&wBSTRString3)));
m_locale = new string((char*)(*(ulong*)(&wBSTRString4)));
m_phoneNumber = new string((char*)(*(ulong*)(&wBSTRString5)));
m_email = new string((char*)(*(ulong*)(&wBSTRString6)));
m_contactFirstName = new string((char*)(*(ulong*)(&wBSTRString7)));
m_contactLastName = new string((char*)(*(ulong*)(&wBSTRString8)));
m_accountHolderName = wBSTRString;
m_accountNumber = wBSTRString2;
m_ccvNumber = wBSTRString3;
m_locale = wBSTRString4;
m_phoneNumber = wBSTRString5;
m_email = wBSTRString6;
m_contactFirstName = wBSTRString7;
m_contactLastName = wBSTRString8;
DateTime dateTime = (m_expirationDate = Module.SystemTimeToDateTime(stValue));
m_parentCreditCard = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, byte>)(*(ulong*)(*(long*)pAddress + 48)))((nint)pAddress) != 0;
}
}
catch
}
}
}
}
}
}
}
}
finally
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString8);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString8);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString7);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString7);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString6);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString6);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString5);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString5);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString4);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString4);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString3);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString3);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString2);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString2);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IAddress*, void>)(&Module.CComPtrNtv_003CIAddress_003E_002E_007Bdtor_007D), cComPtrNtv_003CIAddress_003E.p);
throw;
}
cComPtrNtv_003CIAddress_003E.Dispose();
}
}
public CreditCard(string id, Address address, CreditCardType creditCardType, string accountHolderName, string accountNumber, string ccvNumber, DateTime expirationDate, string phonePrefix, string phoneNumber, string phoneExtension)
: base(id, PaymentType.CreditCard)
@@ -302,10 +302,10 @@ namespace Microsoft.Zune.Service
catch
{
//try-fault
((IDisposable)managedLock).Dispose();
managedLock.Dispose();
throw;
}
((IDisposable)managedLock).Dispose();
managedLock.Dispose();
goto IL_0122;
IL_0122:
try
@@ -314,7 +314,7 @@ namespace Microsoft.Zune.Service
catch
{
//try-fault
((IDisposable)managedLock).Dispose();
managedLock.Dispose();
throw;
}
return;
@@ -385,13 +385,10 @@ namespace Microsoft.Zune.Service
throw new HttpWebException(num);
}
}
catch
finally
{
//try-fault
((IDisposable)managedLock).Dispose();
throw;
managedLock.Dispose();
}
((IDisposable)managedLock).Dispose();
goto IL_0122;
}
@@ -432,13 +429,10 @@ namespace Microsoft.Zune.Service
}
}
}
catch
finally
{
//try-fault
((IDisposable)managedLock).Dispose();
throw;
managedLock.Dispose();
}
((IDisposable)managedLock).Dispose();
}
internal unsafe static void OnAsyncRequestComplete(IHttpWebRequest* pRequest)
@@ -469,13 +463,10 @@ namespace Microsoft.Zune.Service
Module.SetEvent(m_hRequestsCompleteEvent);
}
}
catch
finally
{
//try-fault
((IDisposable)managedLock).Dispose();
throw;
managedLock.Dispose();
}
((IDisposable)managedLock).Dispose();
}
private HttpWebRequest(Uri uri)
@@ -515,10 +506,10 @@ namespace Microsoft.Zune.Service
return -2147467261;
}
*(long*)ppRequest = 0L;
fixed (char* _uriAbsoluteUriPtr = _uri.AbsoluteUri.ToCharArray())
fixed (char* _uriAbsoluteUriPtr = _uri.AbsoluteUri)
{
ushort* ptr = (ushort*)_uriAbsoluteUriPtr;
fixed (char* _methodPtr = _method.ToCharArray())
fixed (char* _methodPtr = _method)
{
ushort* ptr2 = (ushort*)_methodPtr;
CComPtrNtv<IService> cComPtrNtv_003CIService_003E = new();
@@ -578,7 +569,7 @@ namespace Microsoft.Zune.Service
}
if (num >= 0 && !string.IsNullOrEmpty(_browserCookieUrl))
{
fixed (char* _browserCookieUrlPtr = _browserCookieUrl.ToCharArray())
fixed (char* _browserCookieUrlPtr = _browserCookieUrl)
{
ushort* ptr3 = (ushort*)_browserCookieUrlPtr;
try
@@ -598,7 +589,7 @@ namespace Microsoft.Zune.Service
}
}
}
fixed (char* _contentTypePtr = _contentType.ToCharArray())
fixed (char* _contentTypePtr = _contentType)
{
ushort* ptr4 = (ushort*)_contentTypePtr;
if (num >= 0)
@@ -619,7 +610,7 @@ namespace Microsoft.Zune.Service
catch
{
//try-fault
ptr5 = null;
array = null;
throw;
}
}
@@ -642,21 +633,15 @@ namespace Microsoft.Zune.Service
}
}
}
catch
finally
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IHttpWebRequest*, void>)(&Module.CComPtrNtv_003CIHttpWebRequest_003E_002E_007Bdtor_007D), cComPtrNtv_003CIHttpWebRequest_003E.p);
throw;
}
cComPtrNtv_003CIHttpWebRequest_003E.Dispose();
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<IService*, void>)(&Module.CComPtrNtv_003CIService_003E_002E_007Bdtor_007D), cComPtrNtv_003CIService_003E.p);
throw;
}
finally
{
cComPtrNtv_003CIService_003E.Dispose();
}
return num;
}
}
@@ -676,13 +661,10 @@ namespace Microsoft.Zune.Service
}
_asyncRequests.Add(value);
}
catch
finally
{
//try-fault
((IDisposable)managedLock).Dispose();
throw;
managedLock.Dispose();
}
((IDisposable)managedLock).Dispose();
}
}
}
@@ -88,15 +88,14 @@ namespace Microsoft.Zune.Service
_statusCode = statusCode;
if (pResponse != null)
{
WBSTRString wBSTRString;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString);
try
string WBSTRString = "";
fixed (char* wBSTRStringPtr = WBSTRString)
{
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, int>)(*(ulong*)(*(long*)pResponse + 104)))((nint)pResponse, (ushort**)(&wBSTRString));
bool flag = *(long*)(&wBSTRString) != 0L && ((*(ushort*)(*(ulong*)(&wBSTRString)) != 0) ? true : false);
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, int>)(*(ulong*)(*(long*)pResponse + 104)))((nint)pResponse, (ushort**)(wBSTRStringPtr));
bool flag = *(long*)(wBSTRStringPtr) != 0L && ((*(ushort*)(*(ulong*)(wBSTRStringPtr)) != 0) ? true : false);
if (flag)
{
_responseUri = new Uri(new string((char*)(*(ulong*)(&wBSTRString))));
_responseUri = new Uri(WBSTRString);
}
else
{
@@ -107,26 +106,24 @@ namespace Microsoft.Zune.Service
{
_contentLength = (long)contentLength;
}
WBSTRString wBSTRString2;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString2);
try
string wBSTRString2 = "";
fixed (char* wBSTRStringPtr2 = wBSTRString2)
{
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort**, int>)(*(ulong*)(*(long*)pResponse + 112)))((nint)pResponse, (ushort*)Unsafe.AsPointer(ref Module.1BK_0040DOFICLFP__003F_0024AAC_003F_0024AAo_003F_0024AAn_003F_0024AAt_003F_0024AAe_003F_0024AAn_003F_0024AAt_003F_0024AA_003F9_003F_0024AAT_003F_0024AAy_003F_0024AAp_003F_0024AAe), (ushort**)(&wBSTRString2));
bool flag2 = *(long*)(&wBSTRString2) != 0L && ((*(ushort*)(*(ulong*)(&wBSTRString2)) != 0) ? true : false);
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort**, int>)(*(ulong*)(*(long*)pResponse + 112)))((nint)pResponse, (ushort*)Unsafe.AsPointer(ref Module.1BK_0040DOFICLFP__003F_0024AAC_003F_0024AAo_003F_0024AAn_003F_0024AAt_003F_0024AAe_003F_0024AAn_003F_0024AAt_003F_0024AA_003F9_003F_0024AAT_003F_0024AAy_003F_0024AAp_003F_0024AAe), (ushort**)(wBSTRStringPtr2));
bool flag2 = *(long*)(wBSTRStringPtr2) != 0L && ((*(ushort*)(*(ulong*)(wBSTRStringPtr2)) != 0) ? true : false);
if (flag2)
{
_contentType = new string((char*)(*(ulong*)(&wBSTRString2)));
_contentType = wBSTRString2;
}
WBSTRString wBSTRString3;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString3);
try
string wBSTRString3 = "";
fixed (char* wBSTRStringPtr3 = wBSTRString3)
{
string s = null;
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort**, int>)(*(ulong*)(*(long*)pResponse + 112)))((nint)pResponse, (ushort*)Unsafe.AsPointer(ref Module.1BA_0040FICLJLAN__003F_0024AAE_003F_0024AAx_003F_0024AAp_003F_0024AAi_003F_0024AAr_003F_0024AAe_003F_0024AAs), (ushort**)(&wBSTRString3));
bool flag3 = *(long*)(&wBSTRString3) != 0L && ((*(ushort*)(*(ulong*)(&wBSTRString3)) != 0) ? true : false);
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, ushort**, int>)(*(ulong*)(*(long*)pResponse + 112)))((nint)pResponse, (ushort*)Unsafe.AsPointer(ref Module.1BA_0040FICLJLAN__003F_0024AAE_003F_0024AAx_003F_0024AAp_003F_0024AAi_003F_0024AAr_003F_0024AAe_003F_0024AAs), (ushort**)(wBSTRStringPtr3));
bool flag3 = *(long*)(wBSTRStringPtr3) != 0L && ((*(ushort*)(*(ulong*)(wBSTRStringPtr3)) != 0) ? true : false);
if (flag3)
{
s = new string((char*)(*(ulong*)(&wBSTRString3)));
s = wBSTRString3;
}
if (DateTime.TryParse(s, out _expires))
{
@@ -137,29 +134,8 @@ namespace Microsoft.Zune.Service
_expires = DateTime.MaxValue;
}
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString3);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString3);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString2);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString2);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString);
}
IStream* pStream2 = m_pStream;
if (pStream2 != null)
@@ -16,24 +16,16 @@ namespace Microsoft.Zune.Service
}
else if (pContextData != null)
{
WBSTRString wBSTRString;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString);
try
string wBSTRString = "";
fixed (char* wBSTRStringPtr = wBSTRString)
{
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, int>)(*(ulong*)(*(long*)pContextData + 24)))((nint)pContextData, (ushort**)(&wBSTRString));
bool flag = *(long*)(&wBSTRString) != 0L && ((*(ushort*)(*(ulong*)(&wBSTRString)) != 0) ? true : false);
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, int>)(*(ulong*)(*(long*)pContextData + 24)))((nint)pContextData, (ushort**)(wBSTRStringPtr));
bool flag = *(long*)(wBSTRStringPtr) != 0L && (*(ushort*)(*(ulong*)(wBSTRStringPtr)) != 0);
if (flag)
{
result = new string((char*)(*(ulong*)(&wBSTRString)));
result = wBSTRString;
}
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString);
}
return result;
}
+8 -24
View File
@@ -95,40 +95,24 @@ namespace Microsoft.Zune.Service
m_currencyPrice = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, double>)(*(ulong*)(*(long*)pPriceInfo + 32)))((nint)pPriceInfo);
bool flag = (m_hasPoints = ((((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, int>)(*(ulong*)(*(long*)pPriceInfo + 40)))((nint)pPriceInfo) != 0) ? true : false));
bool flag2 = (m_hasCurrency = ((((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, int>)(*(ulong*)(*(long*)pPriceInfo + 48)))((nint)pPriceInfo) != 0) ? true : false));
WBSTRString wBSTRString;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString);
try
string wBSTRString = "";
fixed (char* wBSTRStringPtr = wBSTRString)
{
WBSTRString wBSTRString2;
Module.WBSTRString_002E_007Bctor_007D(&wBSTRString2);
try
string wBSTRString2 = "";
fixed (char* wBSTRStringPtr2 = wBSTRString2)
{
int num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, int>)(*(ulong*)(*(long*)pPriceInfo + 64)))((nint)pPriceInfo, (ushort**)(&wBSTRString));
int num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, int>)(*(ulong*)(*(long*)pPriceInfo + 64)))((nint)pPriceInfo, (ushort**)wBSTRStringPtr);
if (num >= 0)
{
m_displayPrice = new string((char*)(*(ulong*)(&wBSTRString)));
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, int>)(*(ulong*)(*(long*)pPriceInfo + 72)))((nint)pPriceInfo, (ushort**)(&wBSTRString2));
m_displayPrice = wBSTRString;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort**, int>)(*(ulong*)(*(long*)pPriceInfo + 72)))((nint)pPriceInfo, (ushort**)wBSTRString2Ptr);
if (num >= 0)
{
m_currencyCode = new string((char*)(*(ulong*)(&wBSTRString2)));
m_currencyCode = wBSTRString2;
}
}
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString2);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString2);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<WBSTRString*, void>)(&Module.WBSTRString_002E_007Bdtor_007D), &wBSTRString);
throw;
}
Module.WBSTRString_002E_007Bdtor_007D(&wBSTRString);
}
}
}
File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More