Function at 0x46df00
Capabilities:
Get common file path

Disassembly:
push rbp
push rbx
sub rsp, 0x88
mov rbp, rsp
mov qword [rbp + 0x58], 0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x48], 0
nop
lea rax, [0x004a8258]
mov qword [0x004a8280], rax
lea rcx, [0x004a8258]
call sub.kernel32.dll_InitializeCriticalSection_1
call fcn.0046f200
lea rcx, [0x0046dec0]
or edx, 0xffffffff
call sub.kernel32.dll_SetConsoleCtrlHandler
call fcn.00472290
call fcn.0042c480
call fcn.0046e4f0
lea rcx, [rbp + 0x50]
call fcn.00429cc0
lea rcx, [rbp + 0x48]
mov rax, qword [0x0048a390]
mov rdx, qword [rax]
call fcn.0040b600
lea rcx, [rbp + 0x58]
mov edx, 3
mov r8, qword [rbp + 0x50]
lea r9, [0x0046e224]
mov rax, qword [rbp + 0x48]
mov qword [rsp + 0x20], rax
call fcn.0040ba20
mov rcx, qword [rbp + 0x58]
call fcn.0040b560
mov rcx, qword [0x0048a2c8]
mov rdx, rax
call fcn.00429e80
mov rcx, qword [0x0048a2c8]
call fcn.00429e60
mov rcx, qword [0x0048a2c8]
mov rdx, qword [0x0048a2c8]
mov r8d, eax
call fcn.00431340
lea rcx, [0x004a8000]
xor rdx, rdx
call fcn.0042eb80
call fcn.0046ee50
mov rcx, qword [0x0048a2c8]
call fcn.0046e850
mov rbx, rax
cmp word [0x004a8000], 0x5c
jne 0x46e063
cmp word [0x004a8002], 0x5c
jne 0x46e063
cmp byte [0x00489876], 0
jne 0x46e063
lea rax, [0x004a8000]
mov qword [rbp + 0x38], rax
mov byte [rbp + 0x40], 0xa
lea rcx, [0x0046e23c]
mov edx, 1
lea r8, [rbp + 0x38]
xor r9, r9
call fcn.00471010
lea rcx, [0x004a8000]
mov edx, 0x105
call sub.kernel32.dll_GetWindowsDirectoryW
lea rcx, [0x004a8000]
mov dl, 1
call fcn.0042f0a0
call sub.kernel32.dll_GetConsoleOutputCP_1
mov dword [0x004a8220], eax
mov ecx, dword [0x004a8220]
lea rdx, [0x004a820c]
call sub.kernel32.dll_GetCPInfo
call fcn.0042a620
mov ecx, 0x20c
call fcn.00405270
mov qword [0x004a8248], rax
mov ecx, 0x20c
call fcn.00405270
mov qword [0x004a8250], rax
cmp qword [0x004a8248], 0
je 0x46e0e2
cmp qword [0x004a8250], 0
je 0x46e0e2
mov rcx, qword [0x004a8250]
mov edx, 0x104
call sub.kernel32.dll_GetConsoleTitleW
mov rcx, qword [0x004a8248]
mov rdx, qword [0x004a8250]
call fcn.00429e80
cmp byte [0x00489875], 0
jne 0x46e142
mov ecx, 1
call fcn.0042eaf0
test eax, eax
je 0x46e142
cmp word [0x00489894], 0
je 0x46e12b
mov ecx, 0xfffffff5
call sub.kernel32.dll_GetStdHandle_1
mov rcx, rax
lea rdx, [rbp + 0x6a]
call sub.kernel32.dll_GetConsoleScreenBufferInfo
test eax, eax
je 0x46e12b
movzx rax, word [rbp + 0x72]
mov word [0x00489894], ax
cmp word [0x00489894], 0
je 0x46e142
movzx rcx, word [0x00489894]
call fcn.004358c0
test rbx, rbx
jne 0x46e1a0
lea rcx, [0x0046e324]
xor rdx, rdx
lea r8, [rbp + 0x38]
or r9d, 0xffffffff
call fcn.00470f50
cmp byte [0x0048988e], 0
je 0x46e180
lea rcx, [0x0046e3e4]
xor rdx, rdx
lea r8, [rbp + 0x38]
or r9d, 0xffffffff
call fcn.00470f50
jmp 0x46e1a0
cmp byte [0x0048988c], 0
je 0x46e1a0
lea rcx, [0x0046e458]
xor rdx, rdx
lea r8, [rbp + 0x38]
or r9d, 0xffffffff
call fcn.00470f50
lea rcx, [0x0046e4a6]
call sub.kernel32.dll_GetModuleHandleW_2
mov rcx, rax
lea rdx, [0x0046e4c0]
call fcn.00410880
mov rcx, qword [0x0048a4b0]
mov qword [rcx], rax
mov qword [rbp + 0x30], rbx
nop
lea rcx, [rbp + 0x48]
mov edx, 3
call fcn.0040a350
mov rax, qword [rbp + 0x30]
lea rsp, [rbp + 0x88]
pop rbx
pop rbp
ret