Function at 0x24b8a600
Capabilities:
Access peb ldr_data

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x24bbf860
push eax
mov dword fs:[0], esp
sub esp, 0x234
push esi
mov esi, ecx
mov al, byte [esi + 0x14]
test al, al
je 0x24b8a85d
call dword [sym.imp.ADVAPI32.dll_RevertToSelf]
test eax, eax
setne al
test al, al
jne 0x24b8a765
push str.dbcomponentsdbdll_srccredentialmgr.cpp
call dword [sym.imp.cxlibw_3_1.dll_bool___cdecl_CXLib301::ShouldAssert_char_const__]
add esp, 4
test al, al
je 0x24b8a666
push str.false
push 0x10f
push str.dbcomponentsdbdll_srccredentialmgr.cpp
call dword [sym.imp.cxlibw_3_1.dll_void___cdecl_CXLib301::SAssert_char_const___int__char_const__]
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x25
lea ecx, [esp + 0x26]
mov esi, eax
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SChar_t_unsigned_short_int__1_::constructor_unsigned_short_int_]
push str.CCredentialManager::RevertSecurityContext___failed._GetLastError_returns:__1_
lea ecx, [esp + 8]
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SWCharString::constructor_unsigned_short_int_const__]
lea eax, [esp + 0x22]
push eax
lea ecx, [esp + 8]
push ecx
lea ecx, [esp + 0x30]
mov dword [esp + 0x248], 0
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SResString::constructor_class_CXLib301::SWCharString_const___class_CXLib301::SChar_t_unsigned_short_int__1__const__]
lea edx, [esp + 0xc]
push edx
push esi
mov ecx, eax
mov byte [esp + 0x248], 1
call dword [sym.imp.cxlibw_3_1.dll_public:_class_CXLib301::SResString____thiscall_CXLib301::SResString::operator___unsigned_long_int_]
mov ecx, eax
call dword [sym.imp.cxlibw_3_1.dll_public:_class_CXLib301::SWCharString___thiscall_CXLib301::SResString::operator_class_CXLib301::SWCharString_void_]
lea eax, [esp + 0xc]
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x244], 2
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SWCharString::constructor_class_CXLib301::SWCharString_const__]
push 1
mov ecx, eax
mov byte [esp + 0x244], 3
call dword [sym.imp.cxlibw_3_1.dll_public:_unsigned_short_int_const____thiscall_CXLib301::SString_t_unsigned_short_int__1_::operator_unsigned_short_int_const__void_const]
push eax
push 0x113
push str.dbcomponentsdbdll_srccredentialmgr.cpp
call fcn.24b8acd0
add esp, 0x10
lea ecx, [esp + 0x14]
mov byte [esp + 0x240], 2
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SWCharString::destructor_void_]
lea ecx, [esp + 0xc]
mov byte [esp + 0x240], 1
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SWCharString::destructor_void_]
lea ecx, [esp + 0x28]
mov byte [esp + 0x240], 0
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SResString::destructor_void_]
lea ecx, [esp + 4]
mov dword [esp + 0x240], 0xffffffff
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SWCharString::destructor_void_]
xor al, al
pop esi
mov ecx, dword [esp + 0x234]
mov dword fs:[0], ecx
add esp, 0x240
ret
push edi
push 0x25
lea ecx, [esp + 0x24]
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SChar_t_unsigned_short_int__1_::constructor_unsigned_short_int_]
push str.CCredentialManager::RevertSecurityContext______successful_reverted_user_credentials
lea ecx, [esp + 0x18]
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SWCharString::constructor_unsigned_short_int_const__]
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0x13c]
mov dword [esp + 0x24c], 4
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SResString::constructor_class_CXLib301::SWCharString_const___class_CXLib301::SChar_t_unsigned_short_int__1__const__]
mov edi, dword [sym.imp.cxlibw_3_1.dll_public:_class_CXLib301::SResString____thiscall_CXLib301::SResString::operator___class_CXLib301::SWCharString_const__]
lea ecx, [esp + 0xc]
push ecx
lea edx, [esi + 4]
push edx
lea ecx, [esi + 8]
push ecx
mov ecx, eax
mov byte [esp + 0x250], 5
call edi
mov ecx, eax
call edi
mov ecx, eax
call dword [sym.imp.cxlibw_3_1.dll_public:_class_CXLib301::SWCharString___thiscall_CXLib301::SResString::operator_class_CXLib301::SWCharString_void_]
lea edx, [esp + 0xc]
push edx
lea ecx, [esp + 0x20]
mov byte [esp + 0x248], 6
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SWCharString::constructor_class_CXLib301::SWCharString_const__]
push 0xa
mov ecx, eax
mov byte [esp + 0x248], 7
call dword [sym.imp.cxlibw_3_1.dll_public:_unsigned_short_int_const____thiscall_CXLib301::SString_t_unsigned_short_int__1_::operator_unsigned_short_int_const__void_const]
push eax
push 0x11c
push str.dbcomponentsdbdll_srccredentialmgr.cpp
call fcn.24b8acd0
add esp, 0x10
lea ecx, [esp + 0x1c]
mov byte [esp + 0x244], 6
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SWCharString::destructor_void_]
lea ecx, [esp + 0xc]
mov byte [esp + 0x244], 5
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SWCharString::destructor_void_]
lea ecx, [esp + 0x134]
mov byte [esp + 0x244], 4
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SResString::destructor_void_]
lea ecx, [esp + 0x14]
mov dword [esp + 0x244], 0xffffffff
call dword [sym.imp.cxlibw_3_1.dll_public:_void___thiscall_CXLib301::SWCharString::destructor_void_]
mov byte [esi + 0x14], 0
pop edi
mov ecx, dword [esp + 0x238]
mov al, 1
pop esi
mov dword fs:[0], ecx
add esp, 0x240
ret