Function at 0x140019000
Capabilities:
Get common file path

Disassembly:
mov word [rsp + 8], cx
sub rsp, 0x2a8
mov rax, qword [0x14002f100]
xor rax, rsp
mov qword [rsp + 0x290], rax
mov qword [rsp + 0x60], 0
lea rax, [0x140003fe8]
mov qword [rsp + 0x30], rax
lea rax, [0x140018740]
mov qword [rsp + 0x38], rax
lea rax, [0x140003fd8]
mov qword [rsp + 0x40], rax
lea rax, [0x140018c20]
mov qword [rsp + 0x48], rax
lea rax, [0x140003fc8]
mov qword [rsp + 0x50], rax
lea rax, [fcn.1400186b0]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x68], 0
mov dword [rsp + 0x20], 0
cmp dword [0x140031f20], 0
je 0x1400190a6
movzx eax, word [rsp + 0x2b0]
imul rax, rax, 0x10
lea rcx, [0x140030068]
mov rax, qword [rcx + rax + 8]
jmp 0x1400192a4
mov edx, 0x104
lea rcx, [rsp + 0x180]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
test eax, eax
jne 0x1400190c2
jmp 0x1400191c3
lea r8, [rsp + 0x180]
mov edx, 0x10c
lea rcx, [rsp + 0x70]
call fcn.140029af8
lea r8, [0x140004010]
mov edx, 0x10c
lea rcx, [rsp + 0x70]
call fcn.140029a68
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [rsp + 0x60], rax
cmp qword [rsp + 0x60], 0
je 0x14001913a
lea rdx, [0x140003fe8]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x68], rax
cmp qword [rsp + 0x68], 0
jne 0x14001913a
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0x60], 0
cmp qword [rsp + 0x60], 0
je 0x140019144
jmp 0x1400191c3
lea r8, [rsp + 0x180]
mov edx, 0x10c
lea rcx, [rsp + 0x70]
call fcn.140029af8
lea r8, [0x140004018]
mov edx, 0x10c
lea rcx, [rsp + 0x70]
call fcn.140029a68
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [rsp + 0x60], rax
cmp qword [rsp + 0x60], 0
je 0x1400191bc
lea rdx, [0x140003fe8]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x68], rax
cmp qword [rsp + 0x68], 0
jne 0x1400191bc
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0x60], 0
jmp 0x1400191c3
cmp qword [rsp + 0x60], 0
je 0x140019282
mov dword [rsp + 0x20], 0
jmp 0x1400191e3
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 3
jge 0x14001923a
movsxd rax, dword [rsp + 0x20]
imul rax, rax, 0x10
mov rdx, qword [rsp + rax + 0x30]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
movsxd rcx, dword [rsp + 0x20]
imul rcx, rcx, 0x10
mov qword [rsp + rcx + 0x38], rax
movsxd rax, dword [rsp + 0x20]
imul rax, rax, 0x10
cmp qword [rsp + rax + 0x38], 0
jne 0x140019238
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rsp + 0x60], 0
jmp 0x14001923a
jmp 0x1400191d9
cmp qword [rsp + 0x60], 0
je 0x140019282
mov dword [rsp + 0x20], 0
jmp 0x140019256
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 3
jge 0x140019282
movsxd rax, dword [rsp + 0x20]
imul rax, rax, 0x10
movsxd rcx, dword [rsp + 0x20]
imul rcx, rcx, 0x10
lea rdx, [0x140030068]
mov rax, qword [rsp + rax + 0x38]
mov qword [rdx + rcx + 8], rax
jmp 0x14001924c
mov dword [0x140031f20], 1
movzx eax, word [rsp + 0x2b0]
imul rax, rax, 0x10
lea rcx, [0x140030068]
mov rax, qword [rcx + rax + 8]
mov rcx, qword [rsp + 0x290]
xor rcx, rsp
call fcn.140029820
add rsp, 0x2a8
ret