Ir para conteúdo

Nitczi

Membros
  • Postagens

    3
  • Registro em

  • Última visita

Conquistas de Nitczi

2

Reputação

  1. Olá pessoal, boa noite! Estou abrindo esse tópico pois preciso de ajuda para um entendimento em um código em assembly que aparece no livro "Programação em Baixo Nível - Igor Zhirkov" na página 52 ele mostra um código que tem o objetivo de mostrar o valor do registrador RAX, segue abaixo: section .data codes: db "0123456789ABCDEF" section .text global _start _start: mov rax, 0x1122334455667788 mov rdi, 1 mov rdx, 1 mov rcx, 64 ; Cada 4 bits devem ser exibidos como um dígito hexadecimal ; Use o deslocamento (shift) e a operação bit a bit AND para isolá-los ; o resultado é o offset no array 'codes' .loop: push rax sub rcx, 4 ; cl é um registrador, a parte menor de rcx ; rax -- eax -- ax -- ah + al ; rcx -- ecx -- cx -- ch + cl sar rax, cl and rax, 0xf lea rsi, [codes + rax] mov rax, 1 push rcx syscall pop rcx pop rax test rcx, rcx jnz .loop mov rax, 60 xor rdi, rdi syscall O que eu não estou conseguindo compreender é: Na linha onde está "sar rax,cl" vi que isso é uma operação de bit shifting para a direita, pesquisei em alguns sites para ver como ficaria essa operação e o resultado é sempre 5, mas rodando o programa o resultado é 1, por que? Não entendi o propósito do programa em si, quem souber explicar fico muito grato. Tentei procurar na internet e utilizar o ChatGPT mas ainda não consegui entender na totalidade a ponto de saber explicar para alguém, quem puder me ajudar agradeço muito.
  2. Nitczi

    Sample da Aula 24 do Cero

    Valeu meu amigo. Não tinha chegado até o final da aula, eu tinha definido uma planilha de estudo e hoje seria apenas para praticar Engenharia Reversa, no caso o que seria dado na aula. Aí deixei amanhã reservado para fazer os códigos em C, mas valeu mesmo pela ajuda!
  3. Opa, Boa Tarde! Minha primeira interação aqui no Fórum, gostaria de saber se alguém tem disponível, ou sabe de algum outro sample, o arquivo de anti-debug da aula 24 do CERO, não consegui achar exemplos na internet nem aqui no fórum.
×
×
  • Criar Novo...