Carol Martineli Postado Março 7, 2023 em 21:36 Compartilhar Postado Março 7, 2023 em 21:36 Olá, Gostaria de saber se existe algum debugger que permite colocar breakpoints automaticamente em toda as instruções J(alguma coisa. Ex: Je, Jne, Jle, Jn, etc) do código inteiro ? Ou seja, quero debugar o código inteiro a partir das instruções J (alguma coisa). Alguém sabe ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
Fernando Mercês Postado Março 13, 2023 em 15:39 Compartilhar Postado Março 13, 2023 em 15:39 Acho que entendo como está pensando, mas já adianto que é um método pouco efetivo. De qualquer forma, acredito que precise de um script na maioria dos debuggers. No x64dbg dá pra fazer com tracing também (Debug -> Trace over/into...): Explicando: A condição que coloquei em Command Condition é que o resultado da função dis.match(cip, "^j") seja True. Essa função vai disassembler a instrução apontada por cip (eip ou rip) e ver se esta começa com j. Quando tal condição for atendida, o que está em Command Text vai executar. Pus dois comandos: um pra colocar um breakpoint no endereço atual e outro para desabilitar esse breakpoint, de modo que a execução continue. Fazendo isso você terá um breakpoint desabilitado em cada salto. Basta reiniciar o programa, habilitar todos os BPs e rodá-lo para atingir teu objetivo. Repare que se usar Trace over, não vai pegar os saltos dentro das funções. Se usar Trace into pega, mas vai ser bem mais lento (tracing em geral é lento mesmo). Abraço. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Carol Martineli Postado Março 13, 2023 em 20:43 Autor Compartilhar Postado Março 13, 2023 em 20:43 Obrigado Fernando Era exatamente isto que estava procurando. Você é um menino de ouro, mavioso. Esta é uma técnica que você pode colocar no seu novo treinamento para enriquecê-lo ainda mais. Saudações 1 Citar Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.