Open and write file in nasm for Windows 64bit

66 Views Asked by At

Please help me to solve the problem. The file is created but not written. When it goes to the stage of recording a file, the programme slows down a bit. I expect a recorded file to be created, but it is created empty.

DEFAULT REL

global main

extern CreateFileA
extern CloseHandle
extern WriteFile

section .data 
    filename db "f.txt", 0

section .text 
main: 
    sub rsp, 48h

    mov rcx, filename   
    mov dword [rsp+40], 40000000h | 2 
    xor r9d, r9d       
    xor r8d, r8d      
    mov dword [rsp+32], 2 
    mov edx, 2
    сall CreateFileA
    
    mov rdx, rax
    
    mov rcx, rdx
    lea rdx, [filename]
    mov r8, 6
    mov r9, 0
    call WriteFile
    
    mov rcx, rdx
    call CloseHandle
    
    xor eax,eax 
    add rsp, 48h
    ret
0

There are 0 best solutions below