def METHOD_NAME(self, arch):
    p = angr.Project(os.path.join(test_location, arch, "fauxware"), auto_load_libs=False)
    # screw up the instructions and make sure the test fails with nodecode
    for i, c in enumerate(corrupt_addrs[arch][1]):
        p.loader.memory[corrupt_addrs[arch][0] + i] = c
    boned = p.factory.simulation_manager().explore(find=target_addrs[arch], avoid=avoid_addrs[arch])
    assert len(boned.errored) >= 1
    assert isinstance(boned.errored[0].error, angr.SimIRSBNoDecodeError)
    assert boned.errored[0].state.addr == corrupt_addrs[arch][0]
    # hook the instructions with the emulated stuff
    p.hook(
        corrupt_addrs[arch][0],
        corrupt_addrs[arch][2],
        length=len(corrupt_addrs[arch][1]),
    )
    results = p.factory.simulation_manager().explore(find=target_addrs[arch], avoid=avoid_addrs[arch])
    stdin = results.found[0].posix.dumps(0)
    assert b"\x00\x00\x00\x00\x00\x00\x00\x00\x00SOSNEAKY\x00" == stdin