30 lines
1,022 B
C
30 lines
1,022 B
C
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
|
|
* Ghidra 12.1.2 decompiler output for 0x1400a0220 FUN_1400a0220
|
|
* Pseudocode, not original source. */
|
|
|
|
HANDLE FUN_1400a0220(longlong *param_1,LPCWSTR param_2,uint param_3,uint param_4,
|
|
LPSECURITY_ATTRIBUTES param_5,DWORD param_6,DWORD param_7,undefined8 param_8)
|
|
|
|
{
|
|
HMODULE hModule;
|
|
FARPROC pFVar1;
|
|
HANDLE pvVar2;
|
|
|
|
if (*param_1 == 0) {
|
|
if ((int)param_1[1] != 0) {
|
|
pvVar2 = CreateFileW(param_2,param_3,param_4,param_5,param_6,param_7,(HANDLE)0x0);
|
|
return pvVar2;
|
|
}
|
|
}
|
|
else {
|
|
hModule = GetModuleHandleW(L"kernel32.dll");
|
|
if ((hModule != (HMODULE)0x0) &&
|
|
(pFVar1 = GetProcAddress(hModule,"CreateFileTransactedW"), pFVar1 != (FARPROC)0x0)) {
|
|
pvVar2 = (HANDLE)(*pFVar1)(param_2,param_3,param_4,param_5,param_6,param_7,param_8,*param_1,0,
|
|
0);
|
|
return pvVar2;
|
|
}
|
|
}
|
|
return (HANDLE)0xffffffffffffffff;
|
|
}
|
|
|