Function at 0x401810
Capabilities:
Get common file path
Terminate process

Disassembly:
push ebx
push ebp
push esi
push edi
push 0x40cd18
push 0x80
call dword [0x40908c]
mov edi, 0x40a14c
or ecx, 0xffffffff
xor eax, eax
mov ebp, dword [esp + 0x14]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xor ebx, ebx
mov esi, edi
mov edx, ecx
mov edi, 0x40cd18
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp byte [ebp], bl
je 0x4019e0
mov al, byte [ebp]
cmp al, 0x2f
je 0x40186f
cmp al, 0x2d
jne 0x4019d4
movsx eax, byte [ebp + 1]
inc ebp
push eax
inc ebp
call fcn.00403821
add eax, 0xffffffbe
add esp, 4
cmp eax, 0x14
ja case.0x401892.74
xor ecx, ecx
mov cl, byte [eax + 0x401b8c]
jmp dword [ecx*4 + 0x401b68]
mov word [0x40a034], 1
jmp 0x4019d4
mov al, byte [ebp]
xor ecx, ecx
cmp al, 0x20
jne 0x4018bc
cmp al, bl
je 0x4018bc
mov al, byte [ebp + 1]
inc ebp
cmp al, 0x20
je 0x4018b0
mov al, byte [ebp]
cmp al, 0x20
je 0x4018d6
cmp al, bl
je 0x4018d6
mov byte [ecx + 0x40cc98], al
mov al, byte [ebp + 1]
inc ecx
inc ebp
cmp al, 0x20
jne 0x4018c3
mov byte [ecx + 0x40cc98], bl
mov edi, 0x40cc98
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp byte [ecx + 0x40cc97], 0x5c
je 0x4019d4
mov edi, 0x40a14c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x40cc98
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4019d4
mov al, byte [ebp]
xor ecx, ecx
cmp al, 0x20
jne 0x40193f
cmp al, bl
je 0x40193f
mov al, byte [ebp + 1]
inc ebp
cmp al, 0x20
je 0x401933
mov al, byte [ebp]
cmp al, 0x20
je 0x401959
cmp al, bl
je 0x401959
mov byte [ecx + 0x40cd18], al
mov al, byte [ebp + 1]
inc ecx
inc ebp
cmp al, 0x20
jne 0x401946
mov byte [ecx + 0x40cd18], bl
mov edi, 0x40cd18
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp byte [ecx + 0x40cd17], 0x5c
je 0x4019d4
mov edi, 0x40a14c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x40cd18
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x4019d4
mov word [0x40a034], bx
jmp 0x4019d4
mov dword [0x40a030], ebx
jmp 0x4019d4
or byte [0x40a035], 0x40
mov dword [0x40cda8], 1
jmp 0x4019d4
mov dword [0x40cdac], 1
mov al, byte [ebp + 1]
inc ebp
cmp al, bl
jne 0x401860
mov eax, dword [0x40a034]
and eax, 0xff
cmp ax, bx
jne 0x401a5e
cmp dword [0x40a030], ebx
jne 0x401a55
call fcn.00402090
push 2
call fcn.0040374c
push 0x104
push 0x40d120
push 0xc357
push ebx
call dword [0x409174]
push 0x40d120
push 0x40a0e0
push 0x40d000
call fcn.0040352a
add esp, 0xc
push ebx
push 0x40a0d4
push 0x40d000
push ebx
call dword [0x409160]
push 2
call fcn.0040374c
call fcn.00402090
push 2
call fcn.0040374c
cmp ax, bx
je 0x401b62
mov edi, 0x40cc98
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x401a7c
push 0x40cd18
call fcn.004028b0
add esp, 4
push 0x40cc98
push 0x40cd18
call fcn.00401bb0
add esp, 8
test eax, eax
jne 0x401b50
push 0x40cd18
call fcn.00402040
push 0x40cd18
call fcn.004028b0
push 0x40cc98
push 0x40cd18
call fcn.00401bb0
add esp, 0x10
test eax, eax
jne 0x401b50
push 0x40cd18
call fcn.00402040
push 0x40cd18
call fcn.004028b0
push 0x40cc98
push 0x40cd18
call fcn.00401bb0
add esp, 0x10
test eax, eax
jne 0x401b50
push 0x40cc98
push 0x40cd18
mov byte [0x40cd1b], bl
call fcn.00401bb0
add esp, 8
test eax, eax
jne 0x401b50
push 0x104
push 0x40d120
push 0xc358
push ebx
call dword [0x409174]
push 0x40d120
push 0x40a0e0
push 0x40d000
call fcn.0040352a
add esp, 0xc
push ebx
push 0x40a0d4
push 0x40d000
push ebx
call dword [0x409160]
push 1
call fcn.0040374c
push 0x40cc98
push 0x40cd18
call fcn.00401d30
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
ret