pub unsafe extern "system" fn CreateSemaphoreExA(
    lpSemaphoreAttributes: *mut SECURITY_ATTRIBUTES,
    lInitialCount: i32,
    lMaximumCount: i32,
    lpName: *const i8,
    dwFlags: u32,
    dwDesiredAccess: u32
) -> *mut c_void