Página 1 de 1

Name del propio exe sin ruta ni extensión[FASM][Solucionado]

Publicado: 14 Sep 2010, 23:21
por R-007
Bueno como algunos sabrán (Ps1c0s1s y alguno más..) estoy empezando en plan n00b con ASM.. en concretó empecé con FASM a hacer programitas sencillitos y bueno ahora estoy haciendo uno que necesita guardar en una string su propio nombre, pero sin el path ni extensión, es decir, como si le hicieramos un ExtractFileName y le quitaramos la extensión con ExtractFileExt en delphi por ejemplo.

He investigado y os dejo algunos codes que he visto no se cómo implementarlo para que me devuelva correctamente la string que quiero
(por ejemplo si el archivo está en C:\lalala.exe pues que me devuelva "lalala" solamente)
El getNameOfSelf de Antrax que no logro leer entero el eax:

Código: Seleccionar todo

GetNameOfSelf:
mov eax, [fs:0x30]
mov eax, [eax+0x0C]
mov eax, [eax+0x14]
mov ecx, [eax+0x24] ;Length
mov eax, [eax+0x28] ;Buffer(Unicode btw)
ret

Este code que me rompe la ejecución:

Código: Seleccionar todo

proc FileNameFromFile,cFile
    mov     ebx,[cFile]
    mov     eax,-1
    incrementLengthLoop:
        inc     eax
        cmp     byte [ebx+eax],0
        jne     incrementLengthLoop
    xor     ebx,ebx
    add     eax,[cFile]
    inc     eax
    lea     esi,[eax]
    searchFileNameLoop:
        dec     esi
        cmp     byte [esi],0x5C ; 0x5c = '\'
        jne     searchFileNameLoop
    inc     esi
    mov     eax,esi
    xor     esi,esi
    ret
endp
o alguna función propia para quitar lo que sobra de la ruta y al extensión a partir de la string que devuelve GetModuleFileName (no se ni por donde empezar )

Código: Seleccionar todo

                push    MAX_PATH
                push    String
                push    NULL
                call    GetModuleFileName
espero que puedan ayudarme con esto que apenas estoy empezando con ASM..
si todo va bien postearé pronto la nueva tool en ASM jeje

Saludos!

Re: [DUDA] Nombre del propio exe sin ruta ni extensión [FASM

Publicado: 15 Sep 2010, 00:11
por The Swash
Creo que postearas un Offset anotator =) mmm tengo poca experiencia con ASM así que dejo que alguien con mas conocimientos te ayude
Suerte en ASM de seguro te ira de lujo!

Re: [DUDA] Nombre del propio exe sin ruta ni extensión [FASM

Publicado: 15 Sep 2010, 15:43
por ps1c0s1s
Con el amigo ! por el msn :P ! vamos a ver que se hace jaja!

Re: [DUDA] Nombre del propio exe sin ruta ni extensión [FASM

Publicado: 15 Sep 2010, 21:08
por p0is0n-123
Acordate de al final hacer un
invoke ExitProcess,0
o Crasheará la aplicacion,poco mas te puedo ayudar...Deje el aprendizaje de FASM por la mitad...

Salu2....

Re: [DUDA] Nombre del propio exe sin ruta ni extensión [FASM

Publicado: 15 Sep 2010, 22:38
por R-007
gracias a todos por vuestra ayuda :)
YA LO CONSEGUÍ Ps1c0! eres un genio man :P
a los 2 minutos de irte del msn conseguí lo del puntero.. fallaba por escribir después el salto de linea pero ya está todo perfecto

voy a postearlo :P

Saludos!!!