/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x140076c50 FUN_140076c50 * Pseudocode, not original source. */ DWORD FUN_140076c50(longlong param_1,uint param_2,ulonglong param_3,BOOL param_4) { longlong lVar1; DWORD DVar2; DWORD DVar3; longlong lVar4; exception local_258 [72]; HANDLE apvStack_210 [65]; if ((int)param_2 < 0x41) { lVar4 = 0; if (0 < (int)param_2) { do { lVar1 = lVar4 * 8; lVar4 = lVar4 + 1; apvStack_210[lVar4] = (HANDLE)**(undefined8 **)(param_1 + lVar1); } while (lVar4 < (int)param_2); } DVar2 = WaitForMultipleObjects(param_2,apvStack_210 + 1,param_4,(DWORD)param_3); DVar3 = 0xffffffff; if (DVar2 < param_2) { DVar3 = DVar2; } return DVar3; } FUN_14006ba50(local_258,L"WaitForSignal에서 최대 가능한 갯수를 초과했음",param_3, param_3 & 0xffffffff); /* WARNING: Subroutine does not return */ _CxxThrowException(local_258,(ThrowInfo *)&DAT_1401a93e8); }