server-re/decomp/DBCServer_Release_x64/full/functions/0x1401ad270.c

30 lines
1 KiB
C

/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
* Ghidra 12.1.2 decompiler output for 0x1401ad270 FUN_1401ad270
* Pseudocode, not original source. */
HANDLE FUN_1401ad270(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,(ulonglong)param_3,(ulonglong)param_4,param_5,param_6,
param_7,param_8,*param_1,0,0);
return pvVar2;
}
}
return (HANDLE)0xffffffffffffffff;
}