Advertisement
Guest User

Untitled

a guest
Dec 26th, 2013
239
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .global main
  2. .text
  3.     .type main, @function
  4. main:
  5.     pushq %rbp
  6.     movq %rsp, %rbp
  7.     pushq %r14
  8.     pushq %r15
  9.     pushq %r13
  10.     movq %rbp, %r14
  11.     movq %rsp, %r15
  12.     movq $0, %r11
  13. .try_1:
  14.     leaq .catch_2, %r13
  15.     pushq %r14
  16.     pushq %r15
  17.     pushq %r13
  18.     movq %rbp, %r14
  19.     movq %rsp, %r15
  20.     movq $0, %r11
  21. .try_5:
  22.     leaq .catch_6, %r13
  23.     movq $0 , %rax
  24.     movq %rax, %r12
  25.     movq $1, %r11
  26.     jmpq *%r13
  27.     cmp $0, %r11
  28.     je .endTryBlock_8
  29. .catch_6:   movq %r14, %rbp
  30.     movq %r15, %rsp
  31.     popq %r13
  32.     popq %r15
  33.     popq %r14
  34.     cmp $2, %r11
  35.     jne .catch_9
  36.     pushq %r11
  37.     pushq %rdi
  38.     pushq %rsi
  39.     pushq %rdx
  40.     pushq %rcx
  41.     pushq %r8
  42.     pushq %r9
  43. .data
  44. .string_10:
  45.     .string "Ne m'affiche pas !\n"
  46.     .align 8
  47. .text
  48.     movq $.string_10, %rax
  49.     pushq %rax
  50.     pop %rdi
  51.     movq $0, %rax
  52.     callq printf
  53.     movslq %eax, %rax
  54.     popq %r9
  55.     popq %r8
  56.     popq %rcx
  57.     popq %rdx
  58.     popq %rsi
  59.     popq %rdi
  60.     popq %r11
  61.     movq $0, %r11
  62. .catch_9:
  63. .finally_7:
  64.     pushq %r11
  65.     pushq %rdi
  66.     pushq %rsi
  67.     pushq %rdx
  68.     pushq %rcx
  69.     pushq %r8
  70.     pushq %r9
  71. .data
  72. .string_12:
  73.     .string "Affiche moi 1!\n"
  74.     .align 8
  75. .text
  76.     movq $.string_12, %rax
  77.     pushq %rax
  78.     pop %rdi
  79.     movq $0, %rax
  80.     callq printf
  81.     movslq %eax, %rax
  82.     popq %r9
  83.     popq %r8
  84.     popq %rcx
  85.     popq %rdx
  86.     popq %rsi
  87.     popq %rdi
  88.     popq %r11
  89.     cmp $0, %r11
  90.     je .endFinally_14
  91.     jmpq *%r13
  92. .endFinally_14:
  93. .endTryBlock_8:
  94.     pushq %r11
  95.     pushq %rdi
  96.     pushq %rsi
  97.     pushq %rdx
  98.     pushq %rcx
  99.     pushq %r8
  100.     pushq %r9
  101. .data
  102. .string_15:
  103.     .string "Ne m'affiche pas !\n"
  104.     .align 8
  105. .text
  106.     movq $.string_15, %rax
  107.     pushq %rax
  108.     pop %rdi
  109.     movq $0, %rax
  110.     callq printf
  111.     movslq %eax, %rax
  112.     popq %r9
  113.     popq %r8
  114.     popq %rcx
  115.     popq %rdx
  116.     popq %rsi
  117.     popq %rdi
  118.     popq %r11
  119.     cmp $0, %r11
  120.     je .endTryBlock_4
  121. .catch_2:   movq %r14, %rbp
  122.     movq %r15, %rsp
  123.     popq %r13
  124.     popq %r15
  125.     popq %r14
  126.     cmp $1, %r11
  127.     jne .catch_17
  128.     pushq %r11
  129.     pushq %rdi
  130.     pushq %rsi
  131.     pushq %rdx
  132.     pushq %rcx
  133.     pushq %r8
  134.     pushq %r9
  135.     movq %r12, %rax
  136.     pushq %rax
  137. .data
  138. .string_18:
  139.     .string "Affiche un z\195\169ro : %d\n"
  140.     .align 8
  141. .text
  142.     movq $.string_18, %rax
  143.     pushq %rax
  144.     pop %rdi
  145.     pop %rsi
  146.     movq $0, %rax
  147.     callq printf
  148.     movslq %eax, %rax
  149.     popq %r9
  150.     popq %r8
  151.     popq %rcx
  152.     popq %rdx
  153.     popq %rsi
  154.     popq %rdi
  155.     popq %r11
  156.     movq $0, %r11
  157. .catch_17:
  158. .finally_3:
  159.     pushq %r11
  160.     pushq %rdi
  161.     pushq %rsi
  162.     pushq %rdx
  163.     pushq %rcx
  164.     pushq %r8
  165.     pushq %r9
  166. .data
  167. .string_20:
  168.     .string "Affiche moi 2!\n"
  169.     .align 8
  170. .text
  171.     movq $.string_20, %rax
  172.     pushq %rax
  173.     pop %rdi
  174.     movq $0, %rax
  175.     callq printf
  176.     movslq %eax, %rax
  177.     popq %r9
  178.     popq %r8
  179.     popq %rcx
  180.     popq %rdx
  181.     popq %rsi
  182.     popq %rdi
  183.     popq %r11
  184.     cmp $0, %r11
  185.     je .endFinally_22
  186.     jmpq *%r13
  187. .endFinally_22:
  188. .endTryBlock_4:
  189.     pushq %r11
  190.     pushq %rdi
  191.     pushq %rsi
  192.     pushq %rdx
  193.     pushq %rcx
  194.     pushq %r8
  195.     pushq %r9
  196. .data
  197. .string_23:
  198.     .string "Affiche moi 3!\n"
  199.     .align 8
  200. .text
  201.     movq $.string_23, %rax
  202.     pushq %rax
  203.     pop %rdi
  204.     movq $0, %rax
  205.     callq printf
  206.     movslq %eax, %rax
  207.     popq %r9
  208.     popq %r8
  209.     popq %rcx
  210.     popq %rdx
  211.     popq %rsi
  212.     popq %rdi
  213.     popq %r11
  214.     pushq %r14
  215.     pushq %r15
  216.     pushq %r13
  217.     movq %rbp, %r14
  218.     movq %rsp, %r15
  219.     movq $0, %r11
  220. .try_25:
  221.     leaq .catch_26, %r13
  222.     movq $2 , %rax
  223.     movq %rax, %r12
  224.     movq $3, %r11
  225.     jmpq *%r13
  226.     cmp $0, %r11
  227.     je .endTryBlock_28
  228. .catch_26:  movq %r14, %rbp
  229.     movq %r15, %rsp
  230.     popq %r13
  231.     popq %r15
  232.     popq %r14
  233.     cmp $3, %r11
  234.     jne .catch_29
  235.     pushq %r14
  236.     pushq %r15
  237.     pushq %r13
  238.     movq %rbp, %r14
  239.     movq %rsp, %r15
  240.     movq $0, %r11
  241. .try_30:
  242.     leaq .catch_31, %r13
  243.     movq $3 , %rax
  244.     movq %rax, %r12
  245.     movq $4, %r11
  246.     jmpq *%r13
  247.     cmp $0, %r11
  248.     je .endTryBlock_33
  249. .catch_31:  movq %r14, %rbp
  250.     movq %r15, %rsp
  251.     popq %r13
  252.     popq %r15
  253.     popq %r14
  254.     cmp $5, %r11
  255.     jne .catch_34
  256.     pushq %r11
  257.     pushq %rdi
  258.     pushq %rsi
  259.     pushq %rdx
  260.     pushq %rcx
  261.     pushq %r8
  262.     pushq %r9
  263. .data
  264. .string_35:
  265.     .string "Ne m'affiche surtout pas !\n"
  266.     .align 8
  267. .text
  268.     movq $.string_35, %rax
  269.     pushq %rax
  270.     pop %rdi
  271.     movq $0, %rax
  272.     callq printf
  273.     movslq %eax, %rax
  274.     popq %r9
  275.     popq %r8
  276.     popq %rcx
  277.     popq %rdx
  278.     popq %rsi
  279.     popq %rdi
  280.     popq %r11
  281.     movq $0, %r11
  282. .catch_34:
  283. .finally_32:
  284.     pushq %r11
  285.     pushq %rdi
  286.     pushq %rsi
  287.     pushq %rdx
  288.     pushq %rcx
  289.     pushq %r8
  290.     pushq %r9
  291. .data
  292. .string_37:
  293.     .string "Affiche moi vraiment!\n"
  294.     .align 8
  295. .text
  296.     movq $.string_37, %rax
  297.     pushq %rax
  298.     pop %rdi
  299.     movq $0, %rax
  300.     callq printf
  301.     movslq %eax, %rax
  302.     popq %r9
  303.     popq %r8
  304.     popq %rcx
  305.     popq %rdx
  306.     popq %rsi
  307.     popq %rdi
  308.     popq %r11
  309.     cmp $0, %r11
  310.     je .endFinally_39
  311.     jmpq *.finally_27
  312. .endFinally_39:
  313. .endTryBlock_33:
  314.     movq $0, %r11
  315. .catch_29:
  316.     cmp $4, %r11
  317.     jne .catch_40
  318.     pushq %r11
  319.     pushq %rdi
  320.     pushq %rsi
  321.     pushq %rdx
  322.     pushq %rcx
  323.     pushq %r8
  324.     pushq %r9
  325. .data
  326. .string_41:
  327.     .string "Je pense que tu ne devrais pas m'afficher !\n"
  328.     .align 8
  329. .text
  330.     movq $.string_41, %rax
  331.     pushq %rax
  332.     pop %rdi
  333.     movq $0, %rax
  334.     callq printf
  335.     movslq %eax, %rax
  336.     popq %r9
  337.     popq %r8
  338.     popq %rcx
  339.     popq %rdx
  340.     popq %rsi
  341.     popq %rdi
  342.     popq %r11
  343.     movq $0, %r11
  344. .catch_40:
  345. .finally_27:
  346.     pushq %r11
  347.     pushq %rdi
  348.     pushq %rsi
  349.     pushq %rdx
  350.     pushq %rcx
  351.     pushq %r8
  352.     pushq %r9
  353. .data
  354. .string_43:
  355.     .string "Je dois \195\170tre affich\195\169 !\n"
  356.     .align 8
  357. .text
  358.     movq $.string_43, %rax
  359.     pushq %rax
  360.     pop %rdi
  361.     movq $0, %rax
  362.     callq printf
  363.     movslq %eax, %rax
  364.     popq %r9
  365.     popq %r8
  366.     popq %rcx
  367.     popq %rdx
  368.     popq %rsi
  369.     popq %rdi
  370.     popq %r11
  371.     cmp $0, %r11
  372.     je .endFinally_45
  373.     jmpq *%r13
  374. .endFinally_45:
  375. .endTryBlock_28:
  376.     pushq %r11
  377.     pushq %rdi
  378.     pushq %rsi
  379.     pushq %rdx
  380.     pushq %rcx
  381.     pushq %r8
  382.     pushq %r9
  383. .data
  384. .string_46:
  385.     .string "Affiche moi parce que je le vaux bien !\n"
  386.     .align 8
  387. .text
  388.     movq $.string_46, %rax
  389.     pushq %rax
  390.     pop %rdi
  391.     movq $0, %rax
  392.     callq printf
  393.     movslq %eax, %rax
  394.     popq %r9
  395.     popq %r8
  396.     popq %rcx
  397.     popq %rdx
  398.     popq %rsi
  399.     popq %rdi
  400.     popq %r11
  401.     leaveq
  402.     retq
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement