1void add_unwind_adjustsp (long); 2void abort (void); 3 4unsigned char bytes[5]; 5 6void 7add_unwind_adjustsp (long offset) 8{ 9 int n; 10 unsigned long o; 11 12 o = (long) ((offset - 0x204) >> 2); 13 14 n = 0; 15 while (o) 16 { 17 bytes[n] = o & 0x7f; 18 o >>= 7; 19 if (o) 20 bytes[n] |= 0x80; 21 n++; 22 } 23} 24 25int main(void) 26{ 27 add_unwind_adjustsp (4132); 28 if (bytes[0] != 0x88 || bytes[1] != 0x07) 29 abort (); 30 return 0; 31} 32