Function at 0x1400755a0
Capabilities:
Get common file path

Disassembly:
push r14
push r13
mov r13, rcx
mov rcx, rdx
push r12
push rbx
sub rsp, 0x38
test rdx, rdx
je 0x1400757f4
movzx eax, byte [rdx]
cmp al, 0x5c
je 0x1400755f6
cmp al, 0x2f
je 0x1400755f6
lea rdx, [0x1403e4c60]
xor r12d, r12d
test byte [rdx + rax*2], 2
je 0x1400755e7
cmp byte [rcx + 1], 0x3a
jne 0x1400755e7
movzx eax, byte [rcx + 2]
cmp al, 0x5c
je 0x1400755f6
cmp al, 0x2f
je 0x1400755f6
add rsp, 0x38
mov rax, r12
pop rbx
pop r12
pop r13
pop r14
ret
test r13, r13
je 0x1400758a7
movzx eax, byte [r13]
cmp al, 0x5c
je 0x140075866
cmp al, 0x2f
je 0x140075866
lea rdx, [0x1403e4c60]
test byte [rdx + rax*2], 2
je 0x14007562c
cmp byte [r13 + 1], 0x3a
je 0x140075855
xor r14d, r14d
test rcx, rcx
je 0x1400757fd
xor r8d, r8d
mov rdx, r13
call fcn.1400753b0
mov rcx, r14
mov r12, rax
call sub.msvcrt.dll_free
mov rcx, r12
call fcn.1400fa020
mov rdx, rax
test rax, rax
je 0x140075882
lea rcx, [rax - 1]
lea r8, [r12 - 1]
cmp r12, rcx
jbe 0x140075688
jmp 0x1400758c1
mov byte [rcx], 0x5c
sub rcx, 1
cmp rcx, r8
je 0x1400757e8
movzx eax, byte [rcx]
cmp al, 0x5c
je 0x140075678
cmp al, 0x2f
je 0x140075678
cmp byte [rcx + 1], 0x5c
movzx eax, byte [rdx]
lea r9, [rcx + 1]
je 0x1400757eb
mov rcx, rdx
sub rcx, r9
cmp rcx, 1
sete cl
movzx ecx, cl
add r9, rcx
mov rcx, r9
test al, al
je 0x140075736
nop
cmp al, 0x2f
je 0x1400756d0
cmp al, 0x5c
jne 0x1400756f0
nop dword [rax + rax]
movzx eax, byte [rdx + 1]
add rdx, 1
cmp al, 0x5c
je 0x1400756d0
cmp al, 0x2f
je 0x1400756d0
cmp al, 0x25
jne 0x1400756f4
nop dword [rax]
movzx eax, byte [rdx + 1]
add rdx, 1
cmp al, 0x25
je 0x1400756e8
cmp al, 0x2e
jne 0x140075719
jmp 0x140075768
mov r8, rcx
add rdx, 1
add rcx, 1
cmp al, 0x5c
je 0x140075750
cmp al, 0x2f
je 0x140075750
mov byte [rcx - 1], al
movzx eax, byte [rdx]
test al, al
jne 0x140075700
cmp r9, rcx
jae 0x140075736
movzx eax, byte [rcx - 1]
cmp al, 0x5c
je 0x140075876
cmp al, 0x2f
je 0x140075876
mov byte [rcx], 0
add rsp, 0x38
mov rax, r12
pop rbx
pop r12
pop r13
pop r14
ret
mov byte [r8], 0x5c
movzx eax, byte [rdx]
test al, al
jne 0x1400756c0
jmp 0x14007571d
movzx r8d, byte [rdx + 1]
test r8b, r8b
je 0x14007571d
cmp r8b, 0x5c
je 0x1400757df
cmp r8b, 0x2f
je 0x1400757df
cmp r8b, 0x2e
jne 0x140075700
movzx r10d, byte [rdx + 2]
test r10b, r10b
je 0x1400757a2
cmp r10b, 0x5c
je 0x1400757a2
cmp r10b, 0x2f
jne 0x140075700
cmp r9, rcx
jb 0x1400757c5
test r10b, r10b
je 0x14007571d
add rdx, 3
jmp 0x140075754
cmp r9, rcx
jae 0x1400757a7
movzx eax, byte [rcx - 2]
sub rcx, 1
cmp al, 0x5c
setne r8b
cmp al, 0x2f
setne al
test r8b, al
jne 0x1400757c0
jmp 0x1400757a7
add rdx, 2
jmp 0x140075754
movzx eax, byte [rdx]
lea r9, [rcx + 2]
jmp 0x1400756a4
test r13, r13
jne 0x1400755ff
lea rdx, [rsp + 0x2c]
mov rbx, qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov ecx, 2
xor r12d, r12d
call rbx
mov edx, eax
mov r14, rdx
test rdx, rdx
jne 0x1400758af
mov ecx, r14d
mov rdx, r12
sub r14d, 1
call rbx
cmp eax, r14d
je 0x1400758d4
mov rcx, r12
call sub.msvcrt.dll_free
lea rcx, [0x1403e4b62]
call fcn.140100eb0
mov r14, rax
mov rcx, r14
jmp 0x140075638
movzx eax, byte [r13 + 2]
cmp al, 0x5c
je 0x140075866
cmp al, 0x2f
jne 0x14007562c
mov rcx, r13
call fcn.140100eb0
mov r12, rax
jmp 0x14007564e
sub rcx, 1
mov byte [rcx], 0
jmp 0x140075739
mov rcx, r12
call sub.msvcrt.dll_free
add rsp, 0x38
mov rdx, r13
xor r8d, r8d
pop rbx
lea rcx, [0x1403e4b62]
pop r12
pop r13
pop r14
jmp fcn.1400753b0
xor r14d, r14d
jmp 0x140075638
mov ecx, 1
call sub.msvcrt.dll_calloc
mov r12, rax
jmp 0x140075821
movzx eax, byte [rax]
cmp al, 0x5c
je 0x1400757eb
mov r9, rdx
jmp 0x1400756b7
xor r9d, r9d
xor r8d, r8d
mov rcx, r12
mov edx, 0xffffffff
call fcn.140108d00
mov rcx, r12
mov r14, rax
call sub.msvcrt.dll_free
test r14, r14
jne 0x14007584d
jmp 0x14007583e