Rotate object around a corner, not center

I’m trying to rotate a 2D object, but using as a center its corner. I’ve tried the following:

a.transform.localRotation = Quaternion.Euler(0f, 0f, 90f);
a.transform.Rotate(0f, 0f, 90f, Space.World);
a.transform.RotateAround(a.BottomRightPivot, Vector3.forward, 90f);

where a is my game object, and a.BottomRightPivot is the world coordinates of its bottom right corner.

I want the object to rotate around an axis passing through its bottom right corner, parallel to Z axis (or perpendicular to the 2D plane of unity 4.3’s 2D scenes). This way, the position of BottomRightPivot should remain the same, but the position of the object (its center) should move 90 degrees around the pivot/corner.

Man i really don’t know how to code. The way i would do it (if i didn’t put the pivot point in the corner from the 3D modeling application) would be to make an empty game object, place it at the corner i want, then parent my main object to that. So, by rotating the empty object with the script, the main object would rotate around its corner.