RtlIpv4AddressToStringExA

NTSTATUS __stdcall RtlIpv4AddressToStringExA(
        in_addr *Address,
        UINT16 Port,
        PSTR AddressString,
        UINT64 *AddressStringLength){
  INT8 *v7; 
  int v8; 
  unsigned int v9; 
  NTSTATUS result; 
  CHAR S[22]; 
  char v12[2]; 
  if( !Address || !AddressStringLength || !AddressString && *(_DWORD *)AddressStringLength )
    return -1073741811;
  v7 = RtlIpv4AddressToStringA(Address, S);
  v8 = (int)v7;
  if( Port )
    v8 = sprintf_s(v7, v12 - v7, (INT8 *)":%u") + (_DWORD)v7;
  v9 = v8 - (unsigned int)S + 1;
  if( *(_DWORD *)AddressStringLength < v9 )
  {
    *(_DWORD *)AddressStringLength = v9;
    return -1073741811;
  }
  memmove((UINT8 *)AddressString, (UINT8 *)S, v9);
  result = 0;
  *(_DWORD *)AddressStringLength = v9;
  return result;
}

Referenced by:

No references.