Function at 0x401ed1
Capabilities:
Accept command line arguments
Get common file path

Disassembly:
push ebp
mov ebp, esp
push str.f:_sourcelcc_startepawm_user.c
push 0xeb0000
push str.GetAppPathName
mov dword [0x44100c], ebp
sub esp, 0x110
mov ecx, 0x44
dec ecx
mov dword [esp + ecx*4], 0xfffa5a5a
jne 0x401ef4
push ebx
push esi
push edi
mov byte [ebp - 8], 1
mov edi, dword [ebp + 0x10]
mov word [ebp + 0x10], di
mov byte [ebp - 8], 7
call sub.KERNEL32.dll_GetCommandLineA
mov dword [0x44100c], ebp
mov dword [ebp - 0x10], eax
inc dword [ebp - 8]
mov edi, dword [ebp - 0x10]
cmp byte [edi], 0x22
jne 0x401f41
inc dword [ebp - 8]
mov edi, dword [ebp - 0x10]
mov esi, edi
add esi, 1
mov dword [ebp - 0x10], esi
mov bl, byte [edi]
mov byte [ebp - 0x115], bl
jmp 0x401f4c
mov byte [ebp - 8], 0xb
mov byte [ebp - 0x115], 0x20
mov byte [ebp - 8], 0xc
mov dword [ebp - 0x14], 0
inc dword [ebp - 8]
dec word [ebp + 0x10]
jmp 0x401f83
mov byte [ebp - 8], 0xf
mov edi, dword [ebp - 0x14]
mov esi, edi
add esi, 1
mov dword [ebp - 0x14], esi
mov esi, dword [ebp - 0x10]
mov ebx, esi
add ebx, 1
mov dword [ebp - 0x10], ebx
mov bl, byte [esi]
mov byte [ebp + edi - 0x114], bl
mov byte [ebp - 8], 0xe
mov edi, dword [ebp - 0x10]
movsx ebx, byte [edi]
movsx edx, byte [ebp - 0x115]
cmp ebx, edx
je 0x401fa1
movzx edi, word [ebp + 0x10]
cmp dword [ebp - 0x14], edi
jl 0x401f60
mov byte [ebp - 8], 0x10
mov edi, dword [ebp - 0x14]
mov byte [ebp + edi - 0x114], 0
mov byte [ebp - 8], 0x12
push 0x3a
lea edi, [ebp - 0x114]
push edi
call sub.CRTDLL.DLL_strchr
add esp, 8
mov dword [0x44100c], ebp
cmp eax, 0
jne 0x401fe2
cmp byte [ebp - 0x114], 0x5c
jne 0x402003
cmp byte [ebp - 0x113], 0x5c
jne 0x402003
mov byte [ebp - 8], 0x13
lea edi, [ebp - 0x114]
push edi
push dword [ebp + 8]
call fcn.0042baa5
add esp, 8
mov dword [0x44100c], ebp
jmp 0x402192
mov byte [ebp - 8], 0x15
push dword [ebp + 8]
push 0x100
call sub.KERNEL32.dll_GetCurrentDirectoryA
mov dword [0x44100c], ebp
mov byte [ebp - 8], 0x17
cmp byte [ebp - 0x114], 0x5c
jne 0x402073
inc dword [ebp - 8]
push 0x5c
push dword [ebp + 8]
call sub.CRTDLL.DLL_strchr
add esp, 8
mov dword [0x44100c], ebp
mov dword [ebp - 0x10], eax
inc dword [ebp - 8]
cmp dword [ebp - 0x10], 0
je 0x402052
inc dword [ebp - 8]
mov edi, dword [ebp - 0x10]
mov byte [edi], 0
mov byte [ebp - 8], 0x1b
lea edi, [ebp - 0x114]
push edi
push dword [ebp + 8]
call sub.CRTDLL.DLL_strcat
add esp, 8
mov dword [0x44100c], ebp
jmp 0x402192
mov byte [ebp - 8], 0x1d
cmp byte [ebp - 0x114], 0x2e
jne 0x402134
cmp byte [ebp - 0x113], 0x2e
jne 0x402134
cmp byte [ebp - 0x112], 0x5c
jne 0x402134
inc dword [ebp - 8]
lea edi, [ebp - 0x114]
mov dword [ebp - 0x10], edi
jmp 0x4020e9
mov byte [ebp - 8], 0x20
push 0x5c
push dword [ebp + 8]
call sub.CRTDLL.DLL_strrchr
add esp, 8
mov dword [0x44100c], ebp
mov dword [ebp - 0x11c], eax
inc dword [ebp - 8]
cmp dword [ebp - 0x11c], 0
je 0x4020e1
inc dword [ebp - 8]
mov edi, dword [ebp - 0x11c]
mov byte [edi], 0
mov byte [ebp - 8], 0x23
add dword [ebp - 0x10], 3
mov byte [ebp - 8], 0x1f
mov edi, dword [ebp - 0x10]
cmp byte [edi], 0x2e
jne 0x402101
cmp byte [edi + 1], 0x2e
jne 0x402101
cmp byte [edi + 2], 0x5c
je 0x4020ac
mov byte [ebp - 8], 0x25
push 0x441268
push dword [ebp + 8]
call sub.CRTDLL.DLL_strcat
add esp, 8
mov dword [0x44100c], ebp
inc dword [ebp - 8]
push dword [ebp - 0x10]
push dword [ebp + 8]
call sub.CRTDLL.DLL_strcat
add esp, 8
mov dword [0x44100c], ebp
jmp 0x40218e
mov byte [ebp - 8], 0x29
lea edi, [ebp - 0x114]
mov dword [ebp - 0x10], edi
inc dword [ebp - 8]
cmp byte [ebp - 0x114], 0x2e
jne 0x40215d
cmp byte [ebp - 0x113], 0x5c
jne 0x40215d
inc dword [ebp - 8]
add dword [ebp - 0x10], 2
mov byte [ebp - 8], 0x2c
push 0x441268
push dword [ebp + 8]
call sub.CRTDLL.DLL_strcat
add esp, 8
mov dword [0x44100c], ebp
inc dword [ebp - 8]
push dword [ebp - 0x10]
push dword [ebp + 8]
call sub.CRTDLL.DLL_strcat
add esp, 8
mov dword [0x44100c], ebp
mov byte [ebp - 8], 0x2f
mov byte [ebp - 8], 0x31
push 0x5c
push dword [ebp + 8]
call sub.CRTDLL.DLL_strrchr
add esp, 8
mov dword [0x44100c], ebp
mov dword [ebp - 0x10], eax
inc dword [ebp - 8]
cmp dword [ebp - 0x10], 0
je 0x402208
inc dword [ebp - 8]
mov edi, dword [ebp - 0x10]
add edi, 1
mov dword [ebp - 0x10], edi
push edi
push dword [ebp + 0xc]
call fcn.0042baa5
add esp, 8
mov dword [0x44100c], ebp
inc dword [ebp - 8]
mov edi, dword [ebp - 0x10]
mov byte [edi], 0
inc dword [ebp - 8]
push 0x2e
push dword [ebp + 0xc]
call sub.CRTDLL.DLL_strrchr
add esp, 8
mov dword [0x44100c], ebp
mov dword [ebp - 0x10], eax
cmp eax, 0
je 0x402212
inc dword [ebp - 8]
mov edi, dword [ebp - 0x10]
mov byte [edi], 0
inc dword [ebp - 8]
jmp 0x402212
mov byte [ebp - 8], 0x39
mov edi, dword [ebp + 0xc]
mov byte [edi], 0
mov byte [ebp - 8], 0x3a
cmp dword [ebp - 0xc], 0x4411fc
je 0x402229
push 0
call fcn.0042b684
add esp, 4
pop edi
pop esi
pop ebx
leave
ret