Function at 0x140020070
Capabilities:
Get common file path

Disassembly:
sub rsp, 0xa18
mov rax, rdx
mov r9, rdx
mov qword [rsp + 0xa10], r9
mov qword [rsp + 0xa08], r8
mov qword [rsp + 0xa00], rcx
lea rcx, [rsp + 0x9e0]
lea r8, [0x14011d248]
mov qword [rsp + 0x150], rdx
mov rdx, r8
mov r8d, 0x21
mov qword [rsp + 0x148], rax
call fcn.14002f4b0
mov byte [rsp + 0x9df], 0
mov rcx, qword [rsp + 0x150]
call fcn.1400016c0
mov qword [rsp + 0x9d0], 0xa
lea rcx, [rsp + 0x9b0]
mov qword [rsp + 0x140], rax
call fcn.1400016c0
mov dword [rsp + 0x9ac], 0
cmp dword [rsp + 0x9ac], 8
jge 0x140020143
movsxd rax, dword [rsp + 0x9ac]
mov dl, byte [rsp + rax + 0x9d0]
lea rcx, [rsp + 0x9b0]
call fcn.140001d00
mov eax, dword [rsp + 0x9ac]
add eax, 1
mov dword [rsp + 0x9ac], eax
jmp 0x140020103
lea rcx, [rsp + 0x948]
lea rdx, [0x14011d26a]
mov r8d, 0x33
call fcn.14002f4b0
lea rcx, [rsp + 0x928]
mov edx, 1
lea r8, [rsp + 0x9b0]
call fcn.140023690
lea rcx, [rsp + 0x968]
lea rdx, [rsp + 0x928]
lea r8, [rsp + 0x948]
call fcn.140013d00
lea rcx, [rsp + 0x9d8]
lea rdx, [rsp + 0x988]
lea r8, [rsp + 0x968]
call fcn.140022c90
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x988]
call fcn.140023780
lea rcx, [rsp + 0x988]
mov qword [rsp + 0x138], rax
call fcn.140001770
lea rcx, [rsp + 0x968]
call fcn.140001770
lea rcx, [rsp + 0x928]
call fcn.140001770
lea rcx, [rsp + 0x948]
call fcn.140001770
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x9e0]
call fcn.140023780
lea rcx, [rsp + 0x8c8]
lea rdx, [0x14011d29e]
mov r8d, 0x28
mov qword [rsp + 0x130], rax
call fcn.14002f4b0
lea rcx, [rsp + 0x8a8]
mov edx, 1
lea r8, [rsp + 0x9b0]
call fcn.140023690
lea rcx, [rsp + 0x8e8]
lea rdx, [rsp + 0x8a8]
lea r8, [rsp + 0x8c8]
call fcn.140013d00
lea rcx, [rsp + 0x9d8]
lea rdx, [rsp + 0x908]
lea r8, [rsp + 0x8e8]
call fcn.140022c90
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x908]
call fcn.140023780
lea rcx, [rsp + 0x908]
mov qword [rsp + 0x128], rax
call fcn.140001770
lea rcx, [rsp + 0x8e8]
call fcn.140001770
lea rcx, [rsp + 0x8a8]
call fcn.140001770
lea rcx, [rsp + 0x8c8]
call fcn.140001770
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x9e0]
call fcn.140023780
lea rcx, [rsp + 0x848]
lea rdx, [0x14011d2c7]
mov r8d, 0x4c
mov qword [rsp + 0x120], rax
call fcn.14002f4b0
lea rcx, [rsp + 0x828]
mov edx, 1
lea r8, [rsp + 0x9b0]
call fcn.140023690
lea rcx, [rsp + 0x868]
lea rdx, [rsp + 0x828]
lea r8, [rsp + 0x848]
call fcn.140013d00
lea rcx, [rsp + 0x9d8]
lea rdx, [rsp + 0x888]
lea r8, [rsp + 0x868]
call fcn.140022c90
lea rcx, [rsp + 0x868]
call fcn.140001770
lea rcx, [rsp + 0x828]
call fcn.140001770
lea rcx, [rsp + 0x848]
call fcn.140001770
lea rcx, [rsp + 0x808]
lea rdx, [0x14011d314]
mov r8d, 0x21
call fcn.14002f4b0
lea rcx, [rsp + 0x7e8]
lea rdx, [0x14011d336]
mov r8d, 0x22
call fcn.14002f4b0
xor r9d, r9d
mov r8d, r9d
mov qword [rsp + 0x7e0], 0
mov qword [rsp + 0x7d8], 0
lea rcx, [rsp + 0x888]
lea rdx, [rsp + 0x808]
call fcn.1400237b0
xor r9d, r9d
mov r8d, r9d
mov qword [rsp + 0x7e0], rax
lea rcx, [rsp + 0x888]
lea rdx, [rsp + 0x7e8]
call fcn.1400237b0
mov qword [rsp + 0x7d8], rax
lea rcx, [rsp + 0x7b8]
lea rdx, [0x14011d359]
mov r8d, 0x26
call fcn.14002f4b0
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x7b8]
call fcn.140023780
lea rcx, [rsp + 0x7b8]
mov qword [rsp + 0x118], rax
call fcn.140001770
lea rcx, [rsp + 0x888]
call fcn.1400017a0
lea rcx, [rsp + 0x888]
mov qword [rsp + 0x110], rax
call fcn.1400017a0
sub rax, qword [rsp + 0x7d8]
mov rcx, qword [rsp + 0x110]
sub rcx, rax
mov rax, qword [rsp + 0x7e0]
add rax, 1
sub rcx, rax
mov rax, qword [rsp + 0x7e0]
add rax, 1
lea rdx, [rsp + 0x888]
mov qword [rsp + 0x108], rcx
mov rcx, rdx
lea rdx, [rsp + 0x798]
mov r8, rax
mov r9, qword [rsp + 0x108]
call fcn.140023840
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x798]
call fcn.140023780
lea rcx, [rsp + 0x798]
mov qword [rsp + 0x100], rax
call fcn.140001770
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x9e0]
call fcn.140023780
lea rcx, [rsp + 0x778]
lea rdx, [0x14011d380]
mov r8d, 0x28
mov qword [rsp + 0xf8], rax
call fcn.14002f4b0
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x778]
call fcn.140023780
lea rcx, [rsp + 0x778]
mov qword [rsp + 0xf0], rax
call fcn.140001770
xor r10d, r10d
mov r8d, r10d
mov r9, qword [rsp + 0x7e0]
lea rcx, [rsp + 0x888]
lea rdx, [rsp + 0x758]
call fcn.140023840
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x758]
call fcn.140023780
lea rcx, [rsp + 0x758]
mov qword [rsp + 0xe8], rax
call fcn.140001770
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x9e0]
call fcn.140023780
lea rcx, [rsp + 0x738]
lea rdx, [0x14011d3a9]
mov r8d, 0x26
mov qword [rsp + 0xe0], rax
call fcn.14002f4b0
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x738]
call fcn.140023780
lea rcx, [rsp + 0x738]
mov qword [rsp + 0xd8], rax
call fcn.140001770
lea rcx, [rsp + 0x888]
call fcn.1400017a0
sub rax, qword [rsp + 0x7d8]
sub rax, 2
mov rcx, qword [rsp + 0x7d8]
add rcx, 2
lea rdx, [rsp + 0x888]
mov qword [rsp + 0xd0], rcx
mov rcx, rdx
lea rdx, [rsp + 0x718]
mov r8, qword [rsp + 0xd0]
mov r9, rax
call fcn.140023840
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x718]
call fcn.140023780
lea rcx, [rsp + 0x718]
mov qword [rsp + 0xc8], rax
call fcn.140001770
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x9e0]
call fcn.140023780
lea rcx, [rsp + 0x6f8]
lea rdx, str._x.Pl
mov r8d, 0x21
mov qword [rsp + 0xc0], rax
call fcn.14002f4b0
lea rcx, [rsp + 0x6d8]
lea rdx, str.__n_
mov r8d, 0x2a
call fcn.14002f4b0
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x6d8]
call fcn.140023780
lea rcx, [rsp + 0x6d8]
mov qword [rsp + 0xb8], rax
call fcn.140001770
lea rcx, [rsp + 0x5d0]
mov edx, 0x104
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea rcx, [rsp + 0x590]
lea rdx, [0x14011d41d]
mov r8d, 0x3a
mov dword [rsp + 0xb4], eax
call fcn.14002f4b0
lea r8, [rsp + 0x5d0]
lea rcx, [rsp + 0x550]
lea rdx, [0x14011d458]
mov r9d, 0x3a
mov qword [rsp + 0xa8], r8
mov r8, r9
call fcn.14002f4b0
lea rcx, [rsp + 0x570]
lea rdx, [rsp + 0x550]
mov r8, qword [rsp + 0xa8]
call fcn.1400238c0
lea rcx, [rsp + 0x5b0]
lea rdx, [rsp + 0x570]
lea r8, [rsp + 0x590]
call fcn.140013d00
lea rcx, [rsp + 0x570]
call fcn.140001770
lea rcx, [rsp + 0x550]
call fcn.140001770
lea rcx, [rsp + 0x590]
call fcn.140001770
mov qword [rsp + 0x548], 0
mov qword [rsp + 0x540], 0
jmp 0x1400207f7
mov r8, qword [rsp + 0x548]
lea rcx, [rsp + 0x5b0]
lea rdx, [rsp + 0x6f8]
call fcn.1400237b0
mov qword [rsp + 0x548], rax
cmp qword [rsp + 0x548], 0xffffffffffffffff
jne 0x140020830
jmp 0x14002089d
lea rcx, [rsp + 0x520]
lea rdx, [0x14011d493]
mov r8d, 0x22
call fcn.14002f4b0
mov rdx, qword [rsp + 0x548]
lea rcx, [rsp + 0x5b0]
mov r8d, 1
lea r9, [rsp + 0x520]
call fcn.140023920
lea rcx, [rsp + 0x520]
mov qword [rsp + 0xa0], rax
call fcn.140001770
mov rax, qword [rsp + 0x548]
add rax, 2
mov qword [rsp + 0x548], rax
jmp 0x1400207f2
lea rcx, [rsp + 0x4c0]
mov edx, 1
lea r8, [rsp + 0x9b0]
call fcn.140023690
lea rcx, [rsp + 0x4e0]
lea rdx, [rsp + 0x4c0]
lea r8, [rsp + 0x5b0]
call fcn.140013d50
lea rcx, [rsp + 0x9d8]
lea rdx, [rsp + 0x500]
lea r8, [rsp + 0x4e0]
call fcn.140022c90
lea rcx, [rsp + 0x888]
lea rdx, [rsp + 0x500]
call fcn.140015f40
lea rcx, [rsp + 0x500]
mov qword [rsp + 0x98], rax
call fcn.140001770
lea rcx, [rsp + 0x4e0]
call fcn.140001770
lea rcx, [rsp + 0x4c0]
call fcn.140001770
lea rcx, [rsp + 0x4a0]
lea rdx, [0x14011d4b6]
mov r8d, 0x22
call fcn.14002f4b0
xor r9d, r9d
mov r8d, r9d
lea rcx, [rsp + 0x888]
lea rdx, [rsp + 0x4a0]
call fcn.1400237b0
mov qword [rsp + 0x548], rax
lea rcx, [rsp + 0x4a0]
call fcn.140001770
mov r8, qword [rsp + 0x548]
lea rcx, [rsp + 0x480]
lea rdx, [0x14011d4d9]
mov eax, 0x21
mov qword [rsp + 0x90], r8
mov r8, rax
call fcn.14002f4b0
lea rcx, [rsp + 0x888]
lea rdx, [rsp + 0x480]
mov r8, qword [rsp + 0x90]
call fcn.1400237b0
mov qword [rsp + 0x540], rax
lea rcx, [rsp + 0x480]
call fcn.140001770
mov rax, qword [rsp + 0x540]
sub rax, qword [rsp + 0x548]
sub rax, 2
mov rcx, qword [rsp + 0x548]
add rcx, 2
lea rdx, [rsp + 0x888]
mov qword [rsp + 0x88], rcx
mov rcx, rdx
lea rdx, [rsp + 0x460]
mov r8, qword [rsp + 0x88]
mov r9, rax
call fcn.140023840
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x460]
call fcn.140023780
lea rcx, [rsp + 0x460]
mov qword [rsp + 0x80], rax
call fcn.140001770
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x9e0]
call fcn.140023780
mov qword [rsp + 0x78], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
lea rcx, [rsp + 0x420]
mov edx, eax
call fcn.140023990
lea rcx, [rsp + 0x400]
lea rdx, [0x14011d4fb]
mov r8d, 0x25
call fcn.14002f4b0
lea rcx, [rsp + 0x440]
lea rdx, [rsp + 0x400]
lea r8, [rsp + 0x420]
call fcn.140013d00
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x440]
call fcn.140023780
lea rcx, [rsp + 0x440]
mov qword [rsp + 0x70], rax
call fcn.140001770
lea rcx, [rsp + 0x400]
call fcn.140001770
lea rcx, [rsp + 0x420]
call fcn.140001770
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x9e0]
call fcn.140023780
xor r10d, r10d
mov edx, r10d
lea rcx, [rsp + 0x1f0]
xor r10d, r10d
mov r8, rcx
mov qword [rsp + 0x68], rcx
mov rcx, r8
mov qword [rsp + 0x60], rdx
mov edx, r10d
mov r8d, 0x208
mov qword [rsp + 0x58], rax
call fcn.1400a9170
mov rcx, 0xffffffffffffffff
mov rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
mov r9d, 0x104
call sub.KERNEL32.dll_K32GetModuleBaseNameW
lea rdx, [rsp + 0x1f0]
lea rcx, [rsp + 0x1d0]
mov dword [rsp + 0x54], eax
call fcn.140005ed0
lea rcx, [rsp + 0x188]
mov qword [rsp + 0x48], rax
call fcn.140001ca0
lea rcx, [rsp + 0x1d0]
lea rdx, [rsp + 0x180]
mov qword [rsp + 0x40], rax
call fcn.1400239c0
lea rcx, [rsp + 0x1d0]
lea rdx, [rsp + 0x178]
call fcn.140023a40
mov rdx, qword [rsp + 0x178]
mov r8, qword [rsp + 0x180]
lea rcx, [rsp + 0x190]
lea r9, [rsp + 0x188]
call fcn.140023ab0
lea rcx, [rsp + 0x158]
lea rdx, [0x14011d521]
mov r8d, 0x27
mov qword [rsp + 0x38], rax
call fcn.14002f4b0
lea rcx, [rsp + 0x1b0]
lea rdx, [rsp + 0x158]
lea r8, [rsp + 0x190]
call fcn.140013d00
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x1b0]
call fcn.140023780
lea rcx, [rsp + 0x1b0]
mov qword [rsp + 0x30], rax
call fcn.140001770
lea rcx, [rsp + 0x158]
call fcn.140001770
lea rcx, [rsp + 0x190]
call fcn.140001770
mov rcx, qword [rsp + 0x150]
lea rdx, [rsp + 0x9e0]
call fcn.140023780
mov byte [rsp + 0x9df], 1
lea rcx, [rsp + 0x1d0]
mov qword [rsp + 0x28], rax
call fcn.140005c80
lea rcx, [rsp + 0x5b0]
call fcn.140001770
lea rcx, [rsp + 0x6f8]
call fcn.140001770
lea rcx, [rsp + 0x7e8]
call fcn.140001770
lea rcx, [rsp + 0x808]
call fcn.140001770
lea rcx, [rsp + 0x888]
call fcn.140001770
lea rcx, [rsp + 0x9b0]
call fcn.140001770
test byte [rsp + 0x9df], 1
jne 0x140020cf7
mov rcx, qword [rsp + 0x150]
call fcn.140001770
lea rcx, [rsp + 0x9e0]
call fcn.140001770
mov rax, qword [rsp + 0x148]
add rsp, 0xa18
ret