Function at 0x140031310
Capabilities:
Check if file exists
Create directory
Get common file path
Get disk information
Initialize winsock library

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rax - 0x358]
sub rsp, 0x440
mov qword [rsp + 0x68], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x330], rax
lea r12, [0x140184780]
mov qword [rsp + 0x70], r12
lea rax, vtable.micro::qapp::QApp.0
mov qword [0x140184780], rax
lea r15, vtable.micro::utils::QString.0
mov qword [0x140184788], r15
xor r14d, r14d
mov qword [0x140184790], r14
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
mov qword [0x1401847a0], rax
lea rax, vtable.mc::MyApp.0
mov qword [0x140184780], rax
xor ecx, ecx
call qword [sym.imp.ole32.dll_OleInitialize]
test eax, eax
jns 0x1400313ed
or r8d, 0xffffffff
lea rdx, str.OLE_init_err
lea rcx, [rsp + 0x40]
call fcn.1400e6fc8
nop
mov qword [rsp + 0x20], r15
mov qword [rsp + 0x28], r14
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x20]
call fcn.1400e7b9c
nop
lea rdx, [0x14016bc48]
lea rcx, [rsp + 0x20]
call sub.msvcrt.dll__CxxThrowException
nop
mov word [rbp - 0x80], r14w
xor edx, edx
mov r8d, SetWindowSubclass
lea rcx, [rbp - 0x7e]
call sub.msvcrt.dll_memset
mov ecx, 0x202
lea rdx, [rbp - 0x80]
call qword [sym.imp.WS2_32.dll_WSAStartup]
nop
mov edx, 1
mov ecx, 0x20070
call qword [sym.imp.MFPlat.DLL_MFStartup]
test eax, eax
jns 0x140031456
mov qword [rsp + 0x20], r15
mov qword [rsp + 0x28], r14
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov edx, eax
lea rcx, [rsp + 0x20]
call fcn.1400e7960
nop
lea rdx, [0x14016bc48]
lea rcx, [rsp + 0x20]
call sub.msvcrt.dll__CxxThrowException
nop
lea rax, vtable.mc::MyTheme.0
mov qword [0x1401847c0], rax
lea rax, vtable.mc::MyTheme7.0
mov qword [0x1401847c8], rax
lea rax, vtable.mc::MyTheme8.0
mov qword [0x1401847d0], rax
lea rax, vtable.mc::MyTheme10.0
mov qword [0x1401847d8], rax
lea rax, vtable.mc::MyThemeBlack.0
mov qword [0x1401847e0], rax
mov byte [0x1401847f0], r14b
mov eax, 2
mov qword [0x1401847f8], r14
mov qword [0x140184848], r14
dec rax
jne 0x1400314a8
xor edx, edx
lea r8d, [rax + 0x48]
lea rcx, [0x140184800]
call sub.msvcrt.dll_memset
lea rax, vtable.mc::MyJobManager.0
mov qword [0x1401847e8], rax
mov qword [0x140184858], r14
mov qword [0x140184860], r14
mov qword [0x140184868], 8
mov qword [0x140184870], r14
lea rax, vtable.micro::utils::QArray_void____ptr64_.0
mov qword [0x140184850], rax
mov qword [0x140184878], r14
lea rcx, [0x1401848b0]
call fcn.140040974
nop
xorps xmm0, xmm0
movdqa xmmword [0x1401847b0], xmm0
call fcn.140031a78
xor ecx, ecx
call qword [sym.imp.KERNEL32.DLL_GetModuleHandleW]
mov rcx, rax
mov r8d, 0x105
lea rdx, [rbp + 0x120]
call qword [sym.imp.KERNEL32.DLL_GetModuleFileNameW]
lea rcx, [rbp + 0x120]
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea rdx, str.myco.config
lea rcx, [rbp + 0x120]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
or r8d, 0xffffffff
lea rdx, [rbp + 0x120]
lea rcx, [rsp + 0x20]
call fcn.1400e6fc8
nop
lea rsi, [0x14012da68]
mov rcx, rsi
mov rax, qword [rsp + 0x28]
test rax, rax
cmovne rcx, rax
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14003174c
lea ecx, [rax + 1]
call qword [sym.imp.KERNEL32.DLL_SetErrorMode]
mov edi, eax
mov r8d, 3
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x20]
call fcn.1400e7308
mov rcx, rsi
cmp qword [rax + 8], r14
cmovne rcx, qword [rax + 8]
call qword [sym.imp.KERNEL32.DLL_GetDriveTypeW]
mov ebx, eax
mov qword [rsp + 0x30], r15
lea rcx, [rsp + 0x30]
call fcn.1400e712c
mov ecx, edi
call qword [sym.imp.KERNEL32.DLL_SetErrorMode]
cmp ebx, 2
je 0x14003174c
mov qword [rsp + 0x50], r14
lea r9, [rsp + 0x50]
xor r8d, r8d
xor edx, edx
lea rcx, [0x140105710]
call qword [sym.imp.SHELL32.dll_SHGetKnownFolderPath]
test eax, eax
jne 0x14003174c
or r8d, 0xffffffff
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x30]
call fcn.1400e6fc8
nop
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov ebx, 0x5c
mov r8d, ebx
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x58]
call fcn.140031e3c
lea r8, [0x14010f610]
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140008a10
nop
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400e7b9c
nop
mov qword [rsp + 0x40], r15
lea rcx, [rsp + 0x40]
call fcn.1400e712c
mov rcx, rsi
mov rax, qword [rsp + 0x38]
test rax, rax
cmovne rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.DLL_CreateDirectoryW]
mov r8d, ebx
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x58]
call fcn.140031e3c
lea r8, [0x14010f630]
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140008a10
nop
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400e7b9c
nop
mov qword [rsp + 0x40], r15
lea rcx, [rsp + 0x40]
call fcn.1400e712c
mov rax, qword [rsp + 0x38]
test rax, rax
cmovne rsi, rax
xor edx, edx
mov rcx, rsi
call qword [sym.imp.KERNEL32.DLL_CreateDirectoryW]
mov r8d, ebx
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x58]
call fcn.140031e3c
lea r8, str.myco.config
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140008a10
nop
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.1400e7b9c
nop
mov qword [rsp + 0x40], r15
lea rcx, [rsp + 0x40]
call fcn.1400e712c
nop
mov qword [rsp + 0x30], r15
lea rcx, [rsp + 0x30]
call fcn.1400e712c
lea rdx, [rsp + 0x20]
lea rcx, [0x1401848b0]
call fcn.1400412f4
nop
mov qword [rsp + 0x20], r15
lea rcx, [rsp + 0x20]
call fcn.1400e712c
nop
mov rax, r12
mov rcx, qword [rbp + 0x330]
xor rcx, rsp
call fcn.140001010
lea r11, [rsp + 0x440]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret