Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .intel_syntax noprefix
- .text
- .section .rodata
- .LC0:
- .string "%lld"
- .LC1:
- .string "r"
- .LC2:
- .string "w"
- .text
- .globl main
- .type main, @function
- main:
- push rbp
- mov rbp, rsp
- sub rsp, 64
- mov QWORD PTR -64[rbp], rsi
- mov rdi, QWORD PTR -64[rbp]
- add rdi, 8
- mov rdi, QWORD PTR [rdi]
- lea rsi, .LC1[rip]
- call fopen@PLT
- mov r13, rax
- mov rdi, QWORD PTR -64[rbp]
- add rdi, 16
- mov rdi, QWORD PTR [rdi]
- lea rsi, .LC2[rip]
- call fopen@PLT
- mov r14, rax
- mov QWORD PTR -40[rbp], 0 # rbp-40 is n
- lea rdx, -40[rbp]
- lea rsi, .LC0[rip]
- mov rdi, r13
- mov eax, 0
- call __isoc99_fscanf@PLT
- mov rax, QWORD PTR -40[rbp] # rax = n
- add rax, 1 # rax = n+1
- mov rdi, rax # malloc argument is n+1 - the size of the string s in bytes
- call malloc@PLT
- #mov QWORD PTR -16[rbp], rax # rbp-16 = s
- mov rbx, rax # rbx = s
- mov rdi, r13
- call fgetc@PLT
- #mov QWORD PTR -52[rbp], 0 # rbp-52 = i = 0
- mov rdx, r13
- mov rax, QWORD PTR -40[rbp]
- lea rsi, [rax+1]
- mov rdi, rbx
- call fgets@PLT
- mov rdx, r14
- mov rsi, QWORD PTR -40[rbp] # rsi = n
- mov rdi, rbx # rdi = s
- call solve
- mov rdi, r13
- call fclose@PLT
- mov rdi, r14
- call fclose@PLT
- mov eax, 0
- leave
- ret
- .size main, .-main
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement