The Officially Unofficial Reference Guide
AssignICCProfile is used to assign a ICC profile to an image.

Current Profile: It shows the description of the ICC profile assigned to the image selected on the view selection combo box (M63M51_RGB in the example above), or the default RGB ICC profile (as selected in the Color Management Setup dialog) if no particular view is selected. You cannot change the profile description.
New Profile lets you assign an ICC profile to the target image.
Assign the default profile: It assigns the default ICC profile to target image.
Leave the image untagged: It does not add a ICC profile to the image. In this case, the default profile will be used to manage its color.
Assign profile: here is where you can assign a different ICC profile to the image.
This
process allows converting an image from its current ICC profile to
the color space defined by a different ICC profile. One instance when
this process can be useful is for example when preparing an image for
being published on the Web.
Source Profile: The image whose ICC profile we wish to change.
Target Profile: The new profile we want to assign to the source image.
Convert to the specified profile: Select this option if you want to assign to your source image one of the several available ICC profiles.
Convert to the default profile: Depending on whether your source image is RGB or grayscale, selecting this option will assign the default profile to the image.
Rendering Intent: When the gamut of source color space exceeds that of the destination, saturated colors are liable to become clipped (inaccurately represented). The color management module can deal with this problem in several ways:
Perceptual (Photographic images): The gamut transformation is done according to the selected ICC profile. This method may result in strong color variations.
Saturation (graphics): Similar to perceptual except that while the results from a perceptual intent tend to be more pleasing, in the case of the saturation intent, they tend to be more eye-catching.
Relative Colorimetric (match white points): The goal in relative colorimetry is to be truthful to the specified color, but depending on different media you may end up with flat images, maintaining only a fraction of available grays or a collapsed image with loss of details in dark shadows. Media differences are the only thing you really would like to adjust for. Obviously there has to be some gamut mapping going on also. Usually this is done in a way where hue and lightness are maintained at the cost of reduced saturation.
Absolute Colorimetric (proofing): Absolute colorimetry and relative colorimetry actually use the same table but differ in the adjustment for the white point media. Perceptually, the colors may appear incorrect, but instrument measurements of the resulting output would match the source. Colors outside of the proof print system's possible color are mapped to the boundary of the color gamut. Absolute colorimetry is useful to get an exact specified color, or to quantify the accuracy of mapping methods.
Black point compensation: The black point compensation feature does work in conjunction with relative colorimetric intent. Perceptual and Saturation intents should make no difference, although it affects some profiles. When enabled, BPC will scale the full image across the gray axis in order to accommodate the darkest tone origin media can render to the darkest tone destination media can render. In other words, the gray balance that is scaled in order to accommodate to the dynamic range of the new media.
Floating point transform: ICC transformations often benefit from being done in floating point. If our source image is not in floating point format, it will be transformed to 32-bit floating point.