Function at 0x18000a418
Capabilities:
Check if file exists
Create directory
Read .ini file
Write file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov rax, qword [0x180052d00]
xor rax, rsp
mov qword [rbp + 0x47], rax
lea rsi, [0x180055270]
mov r9, rsi
mov edx, 0x816
mov r8d, 0x104
mov rcx, qword [0x180055898]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, rsi
call qword [sym.imp.SHLWAPI.dll_PathRemoveBackslashW]
mov rcx, rsi
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
xor edi, edi
test eax, eax
jne 0x18000a569
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xf], xmm0
mov qword [rbp + 0x1f], rdi
lea edx, [rdi + 0x5c]
mov rcx, rsi
call fcn.180021aa4
mov word [rax], di
xorps xmm0, xmm0
movups xmmword [rbp + 0x27], xmm0
mov qword [rbp + 0x37], rdi
mov qword [rbp + 0x3f], rdi
mov rcx, rsi
call fcn.18002c7bc
mov r8, rax
mov rdx, rsi
lea rcx, [rbp + 0x27]
call fcn.1800064f8
nop
lea rdx, [rbp + 0x27]
lea rcx, [rbp + 0xf]
call fcn.180006728
nop
mov rdx, qword [rbp + 0x3f]
cmp rdx, 7
jbe 0x18000a50e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x27]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000a509
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000a938
call fcn.180020640
xor edx, edx
mov rcx, rsi
call fcn.180021aa4
mov word [rax], di
mov rcx, rsi
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x18000a499
mov rbx, qword [rbp + 0x17]
sub rbx, qword [rbp + 0xf]
sar rbx, 5
dec rbx
shl rbx, 5
add rbx, qword [rbp + 0xf]
mov rdx, rbx
cmp qword [rbx + 0x18], 7
jbe 0x18000a550
mov rdx, qword [rbx]
mov rcx, rsi
call fcn.18002e5f8
xor edx, edx
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
sub rbx, 0x20
jmp 0x18000a543
mov rdx, rsi
lea rbx, [0x180055690]
mov rcx, rbx
call fcn.18002e5f8
mov edx, 0x5c
mov rcx, rbx
call fcn.180021aa4
mov word [rax], di
lea rdx, str.Compare
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x18000a5b3
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov rdx, rsi
lea rsi, [0x180055480]
mov rcx, rsi
call fcn.18002e5f8
lea rdx, str.HexEditor.ini
mov rcx, rsi
call fcn.18002e614
mov rcx, rsi
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x18000a63c
mov word [rbp + 7], 0xfeff
mov dword [rbp + 0xb], edi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
xor r9d, r9d
mov edx, 0xc0000000
lea r8d, [rax + 3]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
mov qword [rsp + 0x20], rdi
lea r9, [rbp + 0xb]
mov r8d, 2
lea rdx, [rbp + 7]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r9, rsi
mov r8d, 8
lea rdx, [0x180040680]
lea rdi, [0x180040668]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x180056f78], eax
mov r9, rsi
mov r8d, 0x10
lea rdx, str.Columns
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov word [0x180056f7c], ax
mov r9, rsi
mov r8d, 1
lea rdx, str.Bits
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov word [0x180056f7e], ax
mov r9, rsi
xor r8d, r8d
lea rdx, [0x1800406c0]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x180056f80], eax
mov r9, rsi
xor r8d, r8d
lea rdx, str.Little
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x180056f84], eax
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x104
lea r9, [0x180056fd0]
lea r8, [0x1800411c0]
lea rdx, str.Extensions
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 4
lea r9, [0x1800571d8]
lea r8, [0x1800411c0]
lea rdx, str.Autostart_Percent
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov r9, rsi
xor r8d, r8d
lea rdx, str.RGB_Regular_Text
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x1800571e0], eax
mov r9, rsi
mov ebx, 0xffffff
mov r8d, ebx
lea rdx, str.RGB_Regular_Background
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x1800571e4], eax
mov r9, rsi
mov r8d, ebx
lea rdx, str.RGB_Selection_Text
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x1800571e8], eax
mov r9, rsi
mov r8d, 0xff8888
lea rdx, str.RGB_Selection_Background
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x1800571ec], eax
mov r9, rsi
mov r8d, ebx
lea rdx, str.RGB_Difference_Text
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x1800571f0], eax
mov r9, rsi
mov r8d, 0x8888ff
lea rdx, str.RGB_Difference_Background
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x1800571f4], eax
mov r9, rsi
mov r8d, ebx
lea rdx, str.RGB_Bookmark_Text
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x1800571f8], eax
mov r9, rsi
mov r8d, 0xff
lea rdx, str.RGB_Bookmark_Background
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x1800571fc], eax
mov r9, rsi
mov r8d, 0xdfdfdf
lea rdx, str.RGB_Current_Line
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x180057200], eax
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x100
lea r9, [0x180057208]
lea r8, [0x180041370]
lea rdx, str.Font_Name
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov r9, rsi
mov r8d, 6
lea rdx, str.Font_Size
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x180057308], eax
mov r9, rsi
xor r8d, r8d
lea rdx, str.Capitel
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x180057204], eax
mov r9, rsi
xor r8d, r8d
lea rdx, [0x180040710]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x18005730c], eax
mov r9, rsi
xor r8d, r8d
lea rdx, [0x180040720]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x180057310], eax
mov r9, rsi
xor r8d, r8d
lea rdx, [0x180040730]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x180057314], eax
mov r9, rsi
xor r8d, r8d
lea rdx, str.Focus_Rect
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [0x180057318], eax
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.180020620
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret
call fcn.18002de64
nop
int3