Advertisement
_takumi

idz2_5_unchanged

Nov 3rd, 2022
1,146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     .file   "idz2_5.c"
  2.     .intel_syntax noprefix
  3.     .text
  4.     .globl  solve
  5.     .type   solve, @function
  6. solve:
  7.     push    rbp
  8.     mov rbp, rsp
  9.     sub rsp, 48
  10.     mov QWORD PTR -40[rbp], rdi
  11.     mov QWORD PTR -48[rbp], rsi
  12.     mov QWORD PTR -32[rbp], 0
  13.     mov rdx, QWORD PTR -48[rbp]
  14.     mov rax, QWORD PTR -40[rbp]
  15.     add rax, rdx
  16.     mov QWORD PTR -24[rbp], rax
  17.     cmp QWORD PTR -48[rbp], 1
  18.     jne .L2
  19.     mov rax, QWORD PTR -40[rbp]
  20.     mov QWORD PTR -32[rbp], rax
  21. .L2:
  22.     mov rax, QWORD PTR -48[rbp]
  23.     sub rax, 1
  24.     mov QWORD PTR -16[rbp], rax
  25.     jmp .L3
  26. .L8:
  27.     mov rax, QWORD PTR -16[rbp]
  28.     lea rdx, -1[rax]
  29.     mov rax, QWORD PTR -40[rbp]
  30.     add rax, rdx
  31.     movzx   edx, BYTE PTR [rax]
  32.     mov rcx, QWORD PTR -16[rbp]
  33.     mov rax, QWORD PTR -40[rbp]
  34.     add rax, rcx
  35.     movzx   eax, BYTE PTR [rax]
  36.     cmp dl, al
  37.     jge .L4
  38.     mov rax, QWORD PTR -16[rbp]
  39.     lea rdx, -1[rax]
  40.     mov rax, QWORD PTR -40[rbp]
  41.     add rax, rdx
  42.     mov QWORD PTR -32[rbp], rax
  43.     jmp .L5
  44. .L4:
  45.     cmp QWORD PTR -32[rbp], 0
  46.     jne .L12
  47.     mov rdx, QWORD PTR -16[rbp]
  48.     mov rax, QWORD PTR -40[rbp]
  49.     add rax, rdx
  50.     mov QWORD PTR -24[rbp], rax
  51. .L5:
  52.     sub QWORD PTR -16[rbp], 1
  53. .L3:
  54.     cmp QWORD PTR -16[rbp], 0
  55.     jg  .L8
  56.     jmp .L7
  57. .L12:
  58.     nop
  59. .L7:
  60.     cmp QWORD PTR -32[rbp], 0
  61.     je  .L13
  62.     mov QWORD PTR -8[rbp], 0
  63.     jmp .L10
  64. .L11:
  65.     mov rdx, QWORD PTR -8[rbp]
  66.     mov rax, QWORD PTR -32[rbp]
  67.     add rax, rdx
  68.     movzx   eax, BYTE PTR [rax]
  69.     movsx   eax, al
  70.     mov edi, eax
  71.     call    putchar@PLT
  72.     add QWORD PTR -8[rbp], 1
  73. .L10:
  74.     mov rdx, QWORD PTR -8[rbp]
  75.     mov rax, QWORD PTR -32[rbp]
  76.     add rax, rdx
  77.     cmp QWORD PTR -24[rbp], rax
  78.     jne .L11
  79. .L13:
  80.     nop
  81.     leave
  82.     ret
  83.     .size   solve, .-solve
  84.     .section    .rodata
  85. .LC0:
  86.     .string "%lld"
  87. .LC1:
  88.     .string "%c"
  89.     .text
  90.     .globl  main
  91.     .type   main, @function
  92. main:
  93.     push    rbp
  94.     mov rbp, rsp
  95.     sub rsp, 32
  96.     mov rax, QWORD PTR fs:40
  97.     mov QWORD PTR -8[rbp], rax
  98.     xor eax, eax
  99.     mov QWORD PTR -24[rbp], 0
  100.     lea rax, -24[rbp]
  101.     mov rsi, rax
  102.     lea rdi, .LC0[rip]
  103.     mov eax, 0
  104.     call    __isoc99_scanf@PLT
  105.     mov rax, QWORD PTR -24[rbp]
  106.     add rax, 1
  107.     mov rdi, rax
  108.     call    malloc@PLT
  109.     mov QWORD PTR -16[rbp], rax
  110.     call    getchar@PLT
  111.     mov DWORD PTR -28[rbp], 0
  112.     jmp .L15
  113. .L16:
  114.     mov eax, DWORD PTR -28[rbp]
  115.     movsx   rdx, eax
  116.     mov rax, QWORD PTR -16[rbp]
  117.     add rax, rdx
  118.     mov rsi, rax
  119.     lea rdi, .LC1[rip]
  120.     mov eax, 0
  121.     call    __isoc99_scanf@PLT
  122.     add DWORD PTR -28[rbp], 1
  123. .L15:
  124.     mov eax, DWORD PTR -28[rbp]
  125.     movsx   rdx, eax
  126.     mov rax, QWORD PTR -24[rbp]
  127.     cmp rdx, rax
  128.     jl  .L16
  129.     mov rdx, QWORD PTR -24[rbp]
  130.     mov rax, QWORD PTR -16[rbp]
  131.     mov rsi, rdx
  132.     mov rdi, rax
  133.     call    solve
  134.     mov eax, 0
  135.     mov rcx, QWORD PTR -8[rbp]
  136.     xor rcx, QWORD PTR fs:40
  137.     je  .L18
  138.     call    __stack_chk_fail@PLT
  139. .L18:
  140.     leave
  141.     ret
  142.     .size   main, .-main
  143.     .ident  "GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0"
  144.     .section    .note.GNU-stack,"",@progbits
  145.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement