Advertisement
elfdebugtest

Untitled

Jun 29th, 2017
320
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.15 KB | None | 0 0
  1. db 0x7F ; * id 0 ; START OF ELF HEADER
  2. db 0x45 ; * id 1 (E)
  3. db 0x4C ; * id 2 (L)
  4. db 0x46 ; * id 3 (F)
  5. db 0x58 ; file class ; pop eax
  6. db 0x3c ; data encoding ; cmp al, 2 (1)
  7. db 0x02 ; File version ; cmp al, 2 (2)
  8. jz bridge ;db 0x74 ; OS/ABI ; jz short +11 (1)
  9. ;db 0x0b ; padding 1 ; jz short +11 (2)
  10. end: db 0xb3 ; padding 2 ; mov bl, 1 (1)
  11. db 0x01 ; padding 3 ; mov bl, 1 (2)
  12. db 0x31 ; padding 4 ; xor eax, eax (1)
  13. db 0xc0 ; padding 5 ; xor eax, eax (2)
  14. db 0x40 ; padding 6 ; inc eax
  15. db 0xcd ; padding 7 ; int 0x80 (1)
  16. db 0x80 ; padding 8 ; int 0x80 (2)
  17. db 0x02 ; * e_type_1
  18. db 0x00 ; * e_type_2
  19. db 0x03 ; * e_architecture_1
  20. db 0x00 ; * e_architecture_2
  21. bridge: db 0xb4 ; e_version_1 ; mov ah, 32 (1)
  22. db 0x20 ; e_version_2 ; mov ah, 32 (2)
  23. jmp solve ;db 0xeb ; e_version_3 ; jmp short +22 (1)
  24. ;db 0x16 ; e_version_4 ; jmp short +22 (1)
  25. db 0x04 ; + e_entry_1
  26. db 0x20 ; + e_entry_2
  27. db 0x00 ; + e_entry_3
  28. db 0x01 ; + e_entry_4
  29. db 0x21 ; + e_progHeaderoff_1
  30. db 0x00 ; + e_progHeaderoff_2
  31. db 0x00 ; + e_progHeaderoff_3
  32. db 0x00 ; + e_progHeaderoff_4
  33. db 0xff ; e_sectionHeaderOff_1 ; free byte
  34. db 0x01 ; e_sectionHeaderOff_2 ; START OF PROGRAM HEADER ; * p_type_1
  35. db 0x00 ; e_sectionHeaderOff_3 ; * p_type_2
  36. db 0x00 ; e_sectionHeaderOff_4 ; * p_type_3
  37. db 0x00 ; e_flags_1 ; * p_type_4
  38. db 0x00 ; e_flags_2 ; * p_offset_1
  39. db 0x00 ; e_flags_3 ; * p_offset_2
  40. db 0x00 ; e_flags_4 ; * p_offset_3
  41. db 0x00 ; + e_ehsize_1 ; * p_offset_4
  42. db 0x00 ; + e_ehsize_2 ; + p_vaddr_1
  43. db 0x20 ; + e_phentsize_1 ; + p_vaddr_2
  44. db 0x00 ; + e_phentsize_2 ; + p_vaddr_3
  45. db 0x01 ; * e_phnum_1 ; + p_vaddr_4
  46. db 0x00 ; * e_phnum_2 ; p_paddr_1
  47. solve: db 0x31 ; e_shentsize_1 ; xor ecx, ecx (1) ; p_paddr_2
  48. db 0xc9 ; e_shentsize_2 ; xor ecx, ecx (2) ; p_paddr_3
  49. db 0xbb ; e_shnum_1 ; mov ebx, 0x01002000 (1) ; p_paddr_4
  50. db 0x00 ; e_shnum_2 c0 ; mov ebx, 0x01002000 (2) ; * p_filesz_1
  51. db 0x20 ; e_shstrndx_1 ; mov ebx, 0x01002000 (3) ; + p_filesz_2
  52. db 0x00 ; e_shstrndx_2 ; m ; END OF ELF HEADER ; p_filesz_3
  53. db 0x01 ; mov ebx, 0x01002000 (5) ; p_filesz_4
  54. db 0x5e ; pop esi ; p_memsz_1
  55. db 0x5e ; pop esi ; p_memsz_2
  56. jmp skippf ;db 0xeb ; jmp short +1 (1) ; p_memsz_3
  57. ;db 0x01 ; jmp short +1 (2) ; p_memsz_4
  58. db 0x07 ; * p_flags_1
  59. skippf: db 0x20 ; and [ebx+0x0a], cl (1) ; p_flags_2
  60. db 0x4b ; and [ebx+0x0a], cl (2) ; p_flags_3
  61. db 0x0a ; and [ebx+0x0a], cl (3) ; p_flags_4
  62. loop1: db 0x56 ; > push esi ; p_align_1
  63. db 0x53 ; > push ebx ; p_align_2
  64. db 0x01 ; > add esi, ecx (1) ; p_align_3
  65. db 0xce ; > ; END OF PROGRAM HEADER ; p_align_4
  66. db 0x01 ; > add ebx, ecx (1)
  67. db 0xcb ; > add ebx, ecx (2)
  68. db 0x31 ; > xor edx, edx (1)
  69. db 0xd2 ; > xor edx, edx (2)
  70. db 0x30 ; > xor al, al (1)
  71. db 0xc0 ; > xor al, al (2)
  72. loop2: db 0x02 ; >> add al, [ebx] (1)
  73. db 0x03 ; >> add al, [ebx] (2)
  74. db 0x00 ; >> add bl, ah (1)
  75. db 0xe3 ; >> add bl, ah (2)
  76. db 0x42 ; >> inc edx
  77. db 0x83 ; >> cmp edx, 4 (1)
  78. db 0xfa ; >> cmp edx, 4 (2)
  79. db 0x04 ; >> cmp edx, 4 (3)
  80. jnz loop2 ;db 0x75 ; >> jnz short -10 (1)
  81. ;db 0xf6 ; >> jnz short -10 (2)
  82. db 0x5b ; > pop ebx
  83. db 0x32 ; > xor al, [esi]
  84. db 0x06 ; > xor al, [esi]
  85. db 0x08 ; > or [ebx+0x0a], al
  86. db 0x43 ; > or [ebx+0x0a], al
  87. db 0x0a ; > or [ebx+0x0a], al
  88. db 0x5e ; > pop esi
  89. db 0x41 ; > inc ecx
  90. db 0x38 ; > cmp cl, ah
  91. db 0xe1 ; > cmp cl, ah
  92. jnz loop1 ;db 0x75 ; > jnz short
  93. ;db 0x20 ; > jnz short
  94. jmp end ;db 0xeb ; jmp short -86
  95. ;db 0xaa ; jmp short -86
  96. db 0x00 ; free byte
  97. db 0xfa ; flag byte
  98. db 0x05 ; flag byte
  99. db 0x2a ; flag byte
  100. db 0xd0 ; flag byte
  101. db 0x51 ; flag byte
  102. db 0xeb ; flag byte
  103. db 0xa6 ; flag byte
  104. db 0xbd ; flag byte
  105. db 0x60 ; flag byte
  106. db 0x7d ; flag byte
  107. db 0x6d ; flag byte
  108. db 0x01 ; flag byte
  109. db 0x25 ; flag byte
  110. db 0x13 ; flag byte
  111. db 0x67 ; flag byte
  112. db 0xbc ; flag byte
  113. db 0xae ; flag byte
  114. db 0xf9 ; flag byte
  115. db 0x14 ; flag byte
  116. db 0x69 ; flag byte
  117. db 0x91 ; flag byte
  118. db 0x86 ; flag byte
  119. db 0xfc ; flag byte
  120. db 0x06 ; flag byte
  121. db 0x2d ; flag byte
  122. db 0xf5 ; flag byte
  123. db 0x2f ; flag byte
  124. db 0x6f ; flag byte
  125. db 0x3b ; flag byte
  126. db 0xf3 ; flag byte
  127. db 0x75 ; flag byte
  128. db 0x7c ; flag byte
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement