def write_int(self, where, expression, size=None, force=False):
if size is None:<EOL><INDENT>size = self.address_bit_size<EOL><DEDENT>assert size in SANE_SIZES<EOL>self._publish('<STR_LIT>', where, expression, size)<EOL>data = [Operators.CHR(Operators.EXTRACT(expression, offset, <NUM_LIT:8>)) for offset in range(<NUM_LIT:0>, size, <NUM_LIT:8>)]<EOL>self._memory.write(where, data, force)<EOL>self._publish('<STR_LIT>', where, expression, size)<EOL>
Writes int to memory

:param int where: address to write to
:param expr: value to write
:type expr: int or BitVec
:param size: bit size of `expr`
:param force: whether to ignore memory permissions