Function at 0x43c410
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, [0x0046b078]
mov qword [0x0046b0a0], rax
lea rcx, [0x0046b078]
call sub.kernel32.dll_InitializeCriticalSection_1
call fcn.0043d430
lea rcx, [0x0043c3d0]
or edx, 0xffffffff
call sub.kernel32.dll_SetConsoleCtrlHandler
call fcn.004400a0
call fcn.004294b0
call fcn.0043c810
lea rcx, [rbp + 0x70]
call fcn.00426b30
lea rcx, [rbp + 0x68]
mov rax, qword [0x0044d088]
mov rdx, qword [rax]
call fcn.0040b5a0
lea rcx, [rbp + 0x78]
mov edx, 3
mov r8, qword [rbp + 0x70]
lea r9, [0x0043c7c4]
mov rax, qword [rbp + 0x68]
mov qword [rsp + 0x20], rax
call fcn.0040b990
mov rcx, qword [rbp + 0x78]
call fcn.0040b520
mov rcx, qword [0x0044cfa8]
mov rdx, rax
call fcn.00426cf0
mov rcx, qword [0x0044cfa8]
call fcn.00426cd0
mov rcx, qword [0x0044cfa8]
mov rdx, qword [0x0044cfa8]
mov r8d, eax
call fcn.0042e240
lea rcx, [0x0046ae24]
xor rdx, rdx
call fcn.0042bc30
call fcn.0043d0f0
mov rcx, qword [0x0044cfa8]
call fcn.0043cb70
mov rbx, rax
cmp word [0x0046ae24], 0x5c
jne 0x43c5a0
cmp word [0x0046ae26], 0x5c
jne 0x43c5a0
cmp byte [0x0044c036], 0
jne 0x43c5a0
lea rcx, [rbp + 0x60]
mov rdx, qword [0x0044d3b8]
call fcn.0040eb30
lea rax, [0x0046ae24]
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.0043ee20
lea rcx, [0x0046ae24]
mov edx, 0x105
call sub.kernel32.dll_GetWindowsDirectoryW
lea rcx, [0x0046ae24]
mov dl, 1
call fcn.0042c150
call sub.kernel32.dll_GetConsoleOutputCP_1
mov dword [0x0046b044], eax
mov ecx, dword [0x0046b044]
lea rdx, [0x0046b030]
call sub.kernel32.dll_GetCPInfo
call fcn.00427770
mov ecx, 0x20c
call fcn.00405280
mov qword [0x0046b068], rax
mov ecx, 0x20c
call fcn.00405280
mov qword [0x0046b070], rax
cmp qword [0x0046b068], 0
je 0x43c61f
cmp qword [0x0046b070], 0
je 0x43c61f
mov rcx, qword [0x0046b070]
mov edx, 0x104
call sub.kernel32.dll_GetConsoleTitleW
mov rcx, qword [0x0046b068]
mov rdx, qword [0x0046b070]
call fcn.00426cf0
cmp byte [0x0044c035], 0
jne 0x43c685
mov ecx, 1
call fcn.0042bba0
test eax, eax
je 0x43c685
cmp word [0x0044c054], 0
je 0x43c66e
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 0x43c66e
movzx rax, word [rbp + 0x92]
mov word [0x0044c054], ax
cmp word [0x0044c054], 0
je 0x43c685
movzx rcx, word [0x0044c054]
call fcn.00432640
test rbx, rbx
jne 0x43c70e
lea rcx, [rbp + 0x48]
mov rdx, qword [0x0044cc88]
call fcn.0040eb30
mov rcx, qword [rbp + 0x48]
xor rdx, rdx
lea r8, [rbp + 0x48]
or r9d, 0xffffffff
call fcn.0043ed60
cmp byte [0x0044c04e], 0
je 0x43c6e1
lea rcx, [rbp + 0x40]
mov rdx, qword [0x0044cfb8]
call fcn.0040eb30
mov rcx, qword [rbp + 0x40]
xor rdx, rdx
lea r8, [rbp + 0x48]
or r9d, 0xffffffff
call fcn.0043ed60
jmp 0x43c70e
cmp byte [0x0044c04c], 0
je 0x43c70e
lea rcx, [rbp + 0x38]
mov rdx, qword [0x0044cc90]
call fcn.0040eb30
mov rcx, qword [rbp + 0x38]
xor rdx, rdx
lea r8, [rbp + 0x48]
or r9d, 0xffffffff
call fcn.0043ed60
lea rcx, [0x0043c7ce]
call sub.kernel32.dll_GetModuleHandleW_2
mov rcx, rax
lea rdx, [0x0043c7e8]
call fcn.004105f0
mov rcx, qword [0x0044d200]
mov qword [rcx], rax
mov qword [rbp + 0x30], rbx
nop
lea rcx, [rbp + 0x38]
mov edx, 3
call fcn.0040a940
lea rcx, [rbp + 0x60]
mov edx, 4
call fcn.0040a940
mov rax, qword [rbp + 0x30]
lea rsp, [rbp + 0xa8]
pop rbx
pop rbp
ret