Function at 0x140018200
Capabilities:
Create directory
Query environment variable
Read .ini file
Set environment variable

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x6b0
mov rax, qword [0x140055b28]
xor rax, rsp
mov qword [rsp + 0x6a0], rax
mov rdi, rcx
xor edx, edx
add rcx, 8
call fcn.1400102d0
mov ecx, 0xc
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 0xb
mov ebx, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov rcx, qword [0x140057ad8]
xor ebp, ebp
mov edx, 0x80
mov r9d, eax
lea r8d, [rbp + 1]
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], ebx
call qword [sym.imp.USER32.dll_LoadImageW]
mov rcx, qword [rdi + 8]
lea r8d, [rbp + 1]
mov r9, rax
mov edx, 0x80
call qword [sym.imp.USER32.dll_SendMessageW]
lea ecx, [rbp + 0x32]
call qword [sym.imp.USER32.dll_GetSystemMetrics]
lea ecx, [rbp + 0x31]
mov ebx, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov rcx, qword [0x140057ad8]
lea r8d, [rbp + 1]
mov edx, 0x80
mov r9d, eax
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], ebx
call qword [sym.imp.USER32.dll_LoadImageW]
mov rcx, qword [rdi + 8]
xor r8d, r8d
mov edx, 0x80
mov r9, rax
call qword [sym.imp.USER32.dll_SendMessageW]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
lea rcx, [0x140057a60]
mov edx, eax
call fcn.140014a10
lea rcx, [rdi + 0x40]
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x50], rcx
lea rcx, [rax + 8]
mov rbx, rax
call fcn.140013980
lea r11, [rdi + 0x48]
lea rcx, [rbx + 0x18]
lea rdx, [rsp + 0x48]
mov qword [rsp + 0x48], r11
call fcn.140013980
mov r11, qword [rdi + 8]
test r11, r11
je 0x14001833d
mov eax, 4
lea rcx, [rdi + 0x58]
lea rdx, [rsp + 0x58]
mov qword [rsp + 0x58], r11
mov word [rsp + 0x60], ax
call fcn.140013a30
mov dword [rdi + 0x1c0], ebp
mov qword [rdi + 0xa8], rbp
mov dword [rdi + 0xb0], 1
lea rcx, str.TaskbarCreated
mov byte [rdi + 0x84], bpl
mov dword [rdi + 0x88], ebp
call qword [sym.imp.USER32.dll_RegisterWindowMessageW]
call fcn.14001ecb0
mov rcx, qword [rdi + 0x90]
mov rbx, rax
test rcx, rcx
je 0x14001838f
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rdi + 0x90], rbp
mov qword [rdi + 0x90], rbx
mov rcx, rbx
test rbx, rbx
je 0x1400183e3
lea rdx, str.CreateInstance
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
je 0x140018404
lea r8, [rdi + 0x98]
lea rdx, [0x140043a70]
lea rcx, [0x140043a60]
call rbx
lea r8, [rdi + 0xa0]
lea rdx, [0x140043a80]
lea rcx, [0x140043a60]
call rbx
jmp 0x140018404
mov ecx, 0xbb8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [rdi + 8]
xor r9d, r9d
lea r8d, [r9 + 1]
mov edx, VarUI4FromDisp
call qword [sym.imp.USER32.dll_PostMessageW]
mov rcx, rdi
call fcn.140013390
mov rcx, rdi
call fcn.1400127f0
lea rcx, [rsp + 0x72]
xor edx, edx
mov r8d, 0x206
mov word [rsp + 0x70], bp
call fcn.140024690
lea rdx, [rsp + 0x70]
lea rcx, str._APPDATA_KZMount
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
lea rcx, [rsp + 0x70]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea rcx, [rsp + 0x282]
xor edx, edx
mov r8d, 0x206
mov word [rsp + 0x280], bp
call fcn.140024690
lea r8, [rsp + 0x70]
lea rcx, [rsp + 0x280]
mov edx, 0x104
call fcn.140025470
lea r8, str.KZMount.ini
lea rcx, [rsp + 0x280]
mov edx, 0x104
call fcn.14002477c
lea rcx, [rsp + 0x492]
xor edx, edx
mov r8d, 0x206
mov word [rsp + 0x490], bp
call fcn.140024690
lea r11, [rsp + 0x280]
lea r9, [rsp + 0x490]
mov qword [rsp + 0x28], r11
lea r8, [rsp + 0x70]
lea rdx, str.IndexPath
lea rcx, str.KZMount
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x490]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea rdx, [rsp + 0x490]
lea rcx, str.KZMOUNT_INDEXPATH
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov rcx, qword [rdi + 0x98]
test rcx, rcx
je 0x14001863f
mov byte [rsp + 0x30], bpl
mov rax, qword [rcx]
lea rdx, [rsp + 0x30]
call qword [rax + 0x18]
test eax, eax
jne 0x14001861e
cmp byte [rsp + 0x30], bpl
je 0x14001854c
mov r9d, 0x27e7
jmp 0x1400185b2
lea rcx, [rsp + 0x38]
call fcn.140022870
lea rcx, [rsp + 0x38]
call fcn.140022af0
test al, al
je 0x1400185f8
mov edx, 0xd5
mov rcx, rdi
call fcn.1400128c0
mov rcx, qword [rdi + 0x98]
mov qword [rsp + 0x40], rcx
test rcx, rcx
je 0x14001858c
mov rax, qword [rcx]
call qword [rax + 8]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x38]
call fcn.140023140
test al, al
je 0x1400185f8
mov edx, 0x80
mov rcx, rdi
call fcn.1400128c0
mov r9d, 0x2816
mov edx, 0x27dd
mov rcx, rdi
mov r8d, edx
call fcn.1400130e0
mov rcx, qword [rdi + 0xa0]
test rcx, rcx
je 0x14001863f
mov rax, qword [rcx]
call qword [rax + 0x18]
mov rcx, rdi
test eax, eax
jne 0x1400185e2
call fcn.140017ed0
jmp 0x14001863f
mov edx, 0x27dd
mov r8d, 0xd5
lea r9d, [rdx + 0x36]
call fcn.1400130e0
jmp 0x14001863f
mov edx, 0xd4
mov rcx, rdi
call fcn.1400128c0
mov edx, 0x27dd
mov r8d, 0xbd
lea r9d, [rdx + 0x38]
mov rcx, rdi
call fcn.1400130e0
jmp 0x14001863f
mov ecx, 0xbb8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [rdi + 8]
xor r9d, r9d
lea r8d, [r9 + 1]
mov edx, VarUI4FromDisp
call qword [sym.imp.USER32.dll_PostMessageW]
movabs rax, 1
mov rcx, qword [rsp + 0x6a0]
xor rcx, rsp
call fcn.1400253c0
lea r11, [rsp + 0x6b0]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret