Function at 0x1400ac950
Capabilities:
Get common file path

Disassembly:
sub rsp, 0x2a8
lea rcx, [rsp + 0x8e]
call fcn.140082080
mov qword [rsp + 0x70], rcx
mov dword [rsp + 0x68], eax
and dl, 1
mov byte [rsp + 0x6c], dl
mov eax, dword [rsp + 0x68]
mov cl, byte [rsp + 0x6c]
mov rdx, qword [rsp + 0x70]
mov qword [rsp + 0x2a0], rdx
mov byte [rsp + 0x29c], cl
mov dword [rsp + 0x298], eax
mov byte [rsp + 0x297], 1
mov ecx, dword [rsp + 0x298]
mov rdx, qword [rsp + 0x2a0]
call sub.KERNEL32.dll_GetCurrentDirectoryW
mov dword [rsp + 0x290], eax
xor eax, eax
cmp eax, dword [rsp + 0x290]
setb al
or al, 0
mov cl, al
and cl, 1
mov byte [rsp + 0x28f], cl
test al, 1
jne 0x1400aca28
jmp 0x1400aca49
mov r8d, dword [rsp + 0x290]
lea rcx, [rsp + 0x298]
xor edx, edx
call fcn.1400818b0
mov qword [rsp + 0x60], rcx
mov dword [rsp + 0x58], eax
and dl, 1
mov byte [rsp + 0x5c], dl
mov r8, qword [rsp + 0x60]
mov dl, byte [rsp + 0x5c]
mov ecx, dword [rsp + 0x58]
call fcn.140021f50
nop
add rsp, 0x2a8
ret
test byte [rsp + 0x297], 1
jne 0x1400aca8a
jmp 0x1400aca9d
mov ecx, dword [rsp + 0x290]
mov edx, dword [rsp + 0x298]
cmp edx, 0
setge al
cmp ecx, edx
setb cl
and al, cl
mov byte [rsp + 0x37], al
jmp 0x1400aca54
mov al, byte [rsp + 0x28f]
mov byte [rsp + 0x37], al
mov al, byte [rsp + 0x37]
test al, 1
jne 0x1400ac9da
jmp 0x1400aca1c
mov eax, dword [rsp + 0x290]
mov dword [rsp + 0x30], eax
jmp 0x1400acab2
lea rcx, [0x1401b2360]
lea rdx, [0x1401b2390]
call fcn.14009d870
mov rcx, rax
call fcn.140001ea0
cmp dword [rsp + 0x290], 0
seta al
or al, 0
mov byte [rsp + 0x2f], al
jmp 0x1400acaa8
mov al, byte [rsp + 0x297]
mov byte [rsp + 0x2f], al
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x1400aca62
jmp 0x1400aca6f
mov eax, dword [rsp + 0x30]
mov dword [rsp + 0x88], eax
mov edx, dword [rsp + 0x88]
mov ecx, 0x4f8
call fcn.140081c40
mov qword [rsp + 0x50], rcx
mov dword [rsp + 0x48], eax
and dl, 1
mov byte [rsp + 0x4c], dl
mov eax, dword [rsp + 0x48]
mov cl, byte [rsp + 0x4c]
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x80], rdx
mov byte [rsp + 0x7c], cl
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x78]
mov cl, byte [rsp + 0x7c]
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x2a0], rdx
mov byte [rsp + 0x29c], cl
mov dword [rsp + 0x298], eax
mov byte [rsp + 0x297], 0
mov ecx, dword [rsp + 0x298]
mov rdx, qword [rsp + 0x2a0]
call sub.KERNEL32.dll_GetCurrentDirectoryW
mov dword [rsp + 0x290], eax
xor eax, eax
cmp eax, dword [rsp + 0x290]
setb al
or al, 0
mov cl, al
and cl, 1
mov byte [rsp + 0x28f], cl
test al, 1
jne 0x1400acbb2
jmp 0x1400acbd3
mov r8d, dword [rsp + 0x290]
lea rcx, [rsp + 0x298]
xor edx, edx
call fcn.1400818b0
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x38], eax
and dl, 1
mov byte [rsp + 0x3c], dl
mov r8, qword [rsp + 0x40]
mov dl, byte [rsp + 0x3c]
mov ecx, dword [rsp + 0x38]
call fcn.140021f50
nop
add rsp, 0x2a8
ret
test byte [rsp + 0x297], 1
jne 0x1400acc09
jmp 0x1400acc1c
mov ecx, dword [rsp + 0x290]
mov edx, dword [rsp + 0x298]
cmp edx, 0
setge al
cmp ecx, edx
setb cl
and al, cl
mov byte [rsp + 0x2e], al
jmp 0x1400acbde
mov al, byte [rsp + 0x28f]
mov byte [rsp + 0x2e], al
mov al, byte [rsp + 0x2e]
test al, 1
jne 0x1400acb64
jmp 0x1400acba6
jmp 0x1400acc31
lea rcx, [0x1401b2360]
lea rdx, [0x1401b2390]
call fcn.14009d870
mov rcx, rax
call fcn.140001ea0
cmp dword [rsp + 0x290], 0
seta al
or al, 0
mov byte [rsp + 0x2d], al
jmp 0x1400acc27
mov al, byte [rsp + 0x297]
mov byte [rsp + 0x2d], al
mov al, byte [rsp + 0x2d]
test al, 1
jne 0x1400acbec
jmp 0x1400acbee
lea rcx, [0x1401b23a0]
call fcn.140001b50
int3