Guest User

Untitled

a guest
Apr 19th, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.55 KB | None | 0 0
  1. .file "obf.c"
  2. .section .rodata
  3. .LC0:
  4. .string "%s %d %d\n"
  5. .align 4
  6. .LC1:
  7. .ascii "@n'+,#'/*{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l+,/"
  8. .ascii "n{n+,/+#n+,/#;#q#n+,/+k#;*+,/'r :'d*'3,}{w+K w'K:'+}e#';dq#'"
  9. .ascii "l q#'+d'K#!/+k#;q#'r}eKK#}w'r}e"
  10. .string "KK{nl]'/#;#q#n'){)#}w'){){nl]'/+#n';d}rw' i;# ){nl]!/n{n#'; r{#w'r nc{nl]'/#{l,+'K {rw' iK{;[{nl]'/w#q#n'wk nw' iwk{KK{nl]!/w{%'l##w#' i; :{nl]'/*{q#'ld;r'}{nlwb!/*de}'c ;;{nl'-{}rw]'/+,}##'*}#nc,',#nw]'/+kd'+e}+;#'rdq#w! nr'/ ') }+}{rl#'{n' ')# }'+}##(!!/"
  11. .LC2:
  12. .string "%s"
  13. .align 4
  14. .LC3:
  15. .string "!ek;dc i@bK'(q)-[w]*%n+r3#l,{}:\nuwloca-O;m .vpbks,fxntdCeghiry"
  16. .text
  17. .globl main
  18. .type main, @function
  19. main:
  20. .LFB0:
  21. .cfi_startproc
  22. pushl %ebp
  23. .cfi_def_cfa_offset 8
  24. .cfi_offset 5, -8
  25. movl %esp, %ebp
  26. .cfi_def_cfa_register 5
  27. pushl %ebx
  28. andl $-16, %esp
  29. subl $16, %esp
  30. cmpl $1, 8(%ebp)
  31. jle .L2
  32. .cfi_offset 3, -12
  33. cmpl $2, 8(%ebp)
  34. jg .L4
  35. movl 16(%ebp), %eax
  36. addl $1, %eax
  37. movl %eax, 8(%esp)
  38. movl $0, 4(%esp)
  39. movl $-86, (%esp)
  40. call main
  41. movl %eax, %edx
  42. addl 16(%ebp), %edx
  43. movl $1, %eax
  44. subl 12(%ebp), %eax
  45. movl %edx, 8(%esp)
  46. movl %eax, 4(%esp)
  47. movl $-87, (%esp)
  48. call main
  49. addl 16(%ebp), %eax
  50. movl %eax, 8(%esp)
  51. movl $-13, 4(%esp)
  52. movl $-79, (%esp)
  53. call main
  54. .L4:
  55. movl 8(%ebp), %eax
  56. cmpl 12(%ebp), %eax
  57. jge .L6
  58. movl 8(%ebp), %eax
  59. leal 1(%eax), %edx
  60. movl 16(%ebp), %eax
  61. movl %eax, 8(%esp)
  62. movl 12(%ebp), %eax
  63. movl %eax, 4(%esp)
  64. movl %edx, (%esp)
  65. call main
  66. .L6:
  67. movl 8(%ebp), %eax
  68. leal -27(%eax), %edx
  69. movl 16(%ebp), %eax
  70. movl %eax, 8(%esp)
  71. movl %edx, 4(%esp)
  72. movl $-94, (%esp)
  73. call main
  74. testl %eax, %eax
  75. je .L7
  76. cmpl $2, 8(%ebp)
  77. jne .L7
  78. cmpl $12, 12(%ebp)
  79. jg .L8
  80. movl 12(%ebp), %eax
  81. addl $1, %eax
  82. movl $.LC0, 8(%esp)
  83. movl %eax, 4(%esp)
  84. movl $2, (%esp)
  85. call main
  86. jmp .L9
  87. .L8:
  88. movl $9, %eax
  89. .L9:
  90. jmp .L10
  91. .L7:
  92. movl $16, %eax
  93. .L10:
  94. jmp .L11
  95. .L2:
  96. cmpl $0, 8(%ebp)
  97. jns .L12
  98. cmpl $-72, 8(%ebp)
  99. jge .L13
  100. movl $.LC1, 8(%esp)
  101. movl 8(%ebp), %eax
  102. movl %eax, 4(%esp)
  103. movl 12(%ebp), %eax
  104. movl %eax, (%esp)
  105. call main
  106. jmp .L14
  107. .L13:
  108. cmpl $-50, 8(%ebp)
  109. jge .L15
  110. movl 16(%ebp), %eax
  111. movzbl (%eax), %eax
  112. movsbl %al, %eax
  113. cmpl 12(%ebp), %eax
  114. jne .L16
  115. movl 16(%ebp), %eax
  116. addl $31, %eax
  117. movzbl (%eax), %eax
  118. movsbl %al, %eax
  119. movl %eax, (%esp)
  120. call putchar
  121. jmp .L17
  122. .L16:
  123. movl 16(%ebp), %eax
  124. addl $1, %eax
  125. movl %eax, 8(%esp)
  126. movl 12(%ebp), %eax
  127. movl %eax, 4(%esp)
  128. movl $-65, (%esp)
  129. call main
  130. .L17:
  131. jmp .L18
  132. .L15:
  133. movl 16(%ebp), %eax
  134. leal 1(%eax), %edx
  135. movl 16(%ebp), %eax
  136. movzbl (%eax), %eax
  137. cmpb $47, %al
  138. sete %al
  139. movzbl %al, %eax
  140. addl 8(%ebp), %eax
  141. movl %edx, 8(%esp)
  142. movl 12(%ebp), %edx
  143. movl %edx, 4(%esp)
  144. movl %eax, (%esp)
  145. call main
  146. .L18:
  147. .L14:
  148. jmp .L19
  149. .L12:
  150. cmpl $0, 8(%ebp)
  151. jle .L20
  152. movl $.LC2, 8(%esp)
  153. movl $2, 4(%esp)
  154. movl $2, (%esp)
  155. call main
  156. jmp .L21
  157. .L20:
  158. movl 16(%ebp), %eax
  159. movzbl (%eax), %eax
  160. cmpb $47, %al
  161. je .L22
  162. movl 16(%ebp), %eax
  163. leal 1(%eax), %ebx
  164. movl 16(%ebp), %eax
  165. movzbl (%eax), %eax
  166. movsbl %al, %eax
  167. movl $.LC3, 8(%esp)
  168. movl %eax, 4(%esp)
  169. movl $-61, (%esp)
  170. call main
  171. movl %ebx, 8(%esp)
  172. movl %eax, 4(%esp)
  173. movl $0, (%esp)
  174. call main
  175. testl %eax, %eax
  176. je .L23
  177. .L22:
  178. movl $1, %eax
  179. jmp .L24
  180. .L23:
  181. movl $0, %eax
  182. .L24:
  183. .L21:
  184. .L19:
  185. .L11:
  186. movl -4(%ebp), %ebx
  187. leave
  188. .cfi_restore 5
  189. .cfi_def_cfa 4, 4
  190. .cfi_restore 3
  191. ret
  192. .cfi_endproc
  193. .LFE0:
  194. .size main, .-main
  195. .ident "GCC: ********"
  196. .section .note.GNU-stack,"",@progbits
Add Comment
Please, Sign In to add comment