Function at 0x438390
Capabilities:
Get common file path

Disassembly:
push rbp
push rbx
sub rsp, 0xa8
mov rbp, rsp
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x78], 0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x68], 0
nop
lea rax, [0x00466068]
mov qword [0x00466090], rax
lea rcx, [0x00466068]
call sub.kernel32.dll_InitializeCriticalSection_1
call fcn.004393b0
lea rcx, [0x00438350]
or edx, 0xffffffff
call sub.kernel32.dll_SetConsoleCtrlHandler
call fcn.0043c020
call fcn.00425410
call fcn.00438790
lea rcx, [rbp + 0x70]
call fcn.004229d0
lea rcx, [rbp + 0x68]
mov rax, qword [0x00448768]
mov rdx, qword [rax]
call fcn.0040a760
lea rcx, [rbp + 0x78]
mov edx, 3
mov r8, qword [rbp + 0x70]
lea r9, [0x00438744]
mov rax, qword [rbp + 0x68]
mov qword [rsp + 0x20], rax
call fcn.0040ab50
mov rcx, qword [rbp + 0x78]
call fcn.0040a6e0
mov rcx, qword [0x00448690]
mov rdx, rax
call fcn.00422b90
mov rcx, qword [0x00448690]
call fcn.00422b70
mov rcx, qword [0x00448690]
mov rdx, qword [0x00448690]
mov r8d, eax
call fcn.0042a1a0
lea rcx, [0x00465e14]
xor rdx, rdx
call fcn.00427b90
call fcn.00439070
mov rcx, qword [0x00448690]
call fcn.00438af0
mov rbx, rax
cmp word [0x00465e14], 0x5c
jne 0x438520
cmp word [0x00465e16], 0x5c
jne 0x438520
cmp byte [0x00447bbe], 0
jne 0x438520
lea rcx, [rbp + 0x60]
mov rdx, qword [0x00448aa0]
call fcn.0040d960
lea rax, [0x00465e14]
mov qword [rbp + 0x50], rax
mov byte [rbp + 0x58], 0xa
mov rcx, qword [rbp + 0x60]
mov edx, 1
lea r8, [rbp + 0x50]
xor r9, r9
call fcn.0043ada0
lea rcx, [0x00465e14]
mov edx, 0x105
call sub.kernel32.dll_GetWindowsDirectoryW
lea rcx, [0x00465e14]
mov dl, 1
call fcn.004280b0
call sub.kernel32.dll_GetConsoleOutputCP_1
mov dword [0x00466034], eax
mov ecx, dword [0x00466034]
lea rdx, [0x00466020]
call sub.kernel32.dll_GetCPInfo
call fcn.004236d0
mov ecx, 0x20c
call fcn.00404ae0
mov qword [0x00466058], rax
mov ecx, 0x20c
call fcn.00404ae0
mov qword [0x00466060], rax
cmp qword [0x00466058], 0
je 0x43859f
cmp qword [0x00466060], 0
je 0x43859f
mov rcx, qword [0x00466060]
mov edx, 0x104
call sub.kernel32.dll_GetConsoleTitleW
mov rcx, qword [0x00466058]
mov rdx, qword [0x00466060]
call fcn.00422b90
cmp byte [0x00447bbd], 0
jne 0x438605
mov ecx, 1
call fcn.00427b00
test eax, eax
je 0x438605
cmp word [0x00447bdc], 0
je 0x4385ee
mov ecx, 0xfffffff5
call sub.kernel32.dll_GetStdHandle_1
mov rcx, rax
lea rdx, [rbp + 0x8a]
call sub.kernel32.dll_GetConsoleScreenBufferInfo
test eax, eax
je 0x4385ee
movzx rax, word [rbp + 0x92]
mov word [0x00447bdc], ax
cmp word [0x00447bdc], 0
je 0x438605
movzx rcx, word [0x00447bdc]
call fcn.0042e5a0
test rbx, rbx
jne 0x43868e
lea rcx, [rbp + 0x48]
mov rdx, qword [0x00448380]
call fcn.0040d960
mov rcx, qword [rbp + 0x48]
xor rdx, rdx
lea r8, [rbp + 0x48]
or r9d, 0xffffffff
call fcn.0043ace0
cmp byte [0x00447bd6], 0
je 0x438661
lea rcx, [rbp + 0x40]
mov rdx, qword [0x004486a0]
call fcn.0040d960
mov rcx, qword [rbp + 0x40]
xor rdx, rdx
lea r8, [rbp + 0x48]
or r9d, 0xffffffff
call fcn.0043ace0
jmp 0x43868e
cmp byte [0x00447bd4], 0
je 0x43868e
lea rcx, [rbp + 0x38]
mov rdx, qword [0x00448388]
call fcn.0040d960
mov rcx, qword [rbp + 0x38]
xor rdx, rdx
lea r8, [rbp + 0x48]
or r9d, 0xffffffff
call fcn.0043ace0
lea rcx, [0x0043874e]
call sub.kernel32.dll_GetModuleHandleW_2
mov rcx, rax
lea rdx, [0x00438768]
call fcn.0040f410
mov rcx, qword [0x004488e8]
mov qword [rcx], rax
mov qword [rbp + 0x30], rbx
nop
lea rcx, [rbp + 0x38]
mov edx, 3
call fcn.00409980
lea rcx, [rbp + 0x60]
mov edx, 4
call fcn.00409980
mov rax, qword [rbp + 0x30]
lea rsp, [rbp + 0xa8]
pop rbx
pop rbp
ret