Function at 0x14002ef20
Capabilities:
Read .ini file

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xa30]
sub rsp, 0xb30
mov rax, qword [0x1401f7280]
xor rax, rsp
mov qword [rbp + 0xa20], rax
mov r14, rcx
mov rcx, qword [0x1401fbba0]
mov rsi, r8
mov r15d, r9d
mov r12, rdx
lea r8, [rbp - 0x30]
mov r9d, 0x20
mov edx, 0x52a
call qword [sym.imp.USER32.dll_LoadStringW]
lea r9, [rbp - 0x30]
lea rdx, str._s__s
lea rcx, [rbp + 0x3f0]
mov r8, rsi
call qword [sym.imp.USER32.dll_wsprintfW]
movzx eax, word [rsi]
cmp ax, word [0x14018399c]
jne 0x14002efcb
movzx eax, word [rsi + 2]
cmp ax, word [0x14018399e]
jne 0x14002efcb
mov rcx, qword [0x1401fbba0]
lea r8, [rbp + 0x3f0]
mov r9d, 0x104
mov edx, 0x4e9
call qword [sym.imp.USER32.dll_LoadStringW]
or rdi, 0xffffffffffffffff
lea rax, [rbp + 0x3f0]
mov rbx, rdi
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x14002efe0
lea rdx, str.._s
lea rcx, [rbp - 0x30]
mov r8, rsi
inc ebx
call fcn.1400f98c8
lea rdx, [0x140185d48]
mov rcx, rsi
call fcn.1400f92fc
test eax, eax
jne 0x14002f025
lea rdx, str.._s_.LST
lea rcx, [rbp - 0x30]
mov r8, rsi
call fcn.1400f98c8
movsxd rax, ebx
lea rcx, [rbp + 0x3f0]
lea r8, [rbp - 0x30]
lea rcx, [rcx + rax*2]
lea rdx, [0x1401833b8]
call qword [sym.imp.USER32.dll_wsprintfW]
lea rax, [rbp - 0x30]
nop dword [rax + rax]
cmp word [rax + rdi*2 + 2], 0
lea rdi, [rdi + 1]
jne 0x14002f050
lea eax, [rdi + 1]
lea rdx, [rbp + 0x3f0]
add eax, ebx
movsxd rcx, eax
lea rcx, [rdx + rcx*2]
lea rdx, [0x140181e34]
call qword [sym.imp.USER32.dll_wsprintfW]
mov rcx, qword [0x1401fbba0]
lea r8, [rbp + 0x600]
mov r9d, 0x104
mov edx, 0x466
call qword [sym.imp.USER32.dll_LoadStringW]
lea rcx, [rbp - 0x30]
mov edx, 5
call fcn.140094e80
xor r13d, r13d
lea rdi, [0x140208860]
mov word [rbp + 0x1e0], r13w
test r15d, r15d
je 0x14002f13b
mov rcx, qword [0x1401fbba0]
lea r8, [rbp + 0x600]
mov r9d, 0x104
mov edx, 0x47d
call qword [sym.imp.USER32.dll_LoadStringW]
lea r9, [rbp + 0x1e0]
lea r8, [rbp - 0x30]
lea rdx, str.SaveDir
lea rcx, [0x140185d68]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov ebx, dword [rbp + 0xa90]
cmp ebx, 4
jne 0x14002f126
lea rdx, str.SaveTxt
lea rcx, [0x140185d88]
jmp 0x14002f169
cmp ebx, 5
jne 0x14002f187
lea rdx, str.CustomINI
lea rcx, str.Batch
jmp 0x14002f169
mov ebx, dword [rbp + 0xa90]
cmp ebx, 5
jne 0x14002f156
lea rdx, str.CustomINI
lea rcx, str.Batch
jmp 0x14002f169
cmp ebx, 0xd
jne 0x14002f187
lea rdx, str.AddFileFolder
lea rcx, str.AddWatermark
lea r9, [rbp + 0x1e0]
lea r8, [rbp - 0x30]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, 0x98
mov word [rbp + 0x810], r13w
call fcn.1400f9ab0
mov rax, qword [0x1401fbad8]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0x3f0]
mov dword [rsp + 0x30], 0x98
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x810]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x60], rax
lea rax, [rbp + 0x1e0]
mov qword [rsp + 0x50], r13
mov qword [rbp - 0x80], rax
lea rax, [rbp + 0x600]
mov dword [rsp + 0x58], r13d
mov dword [rsp + 0x5c], 1
mov dword [rsp + 0x68], 0x104
mov qword [rsp + 0x70], r13
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x70], 0x88000c
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x58], r13
mov qword [rbp - 0x50], r13
lea rcx, [rsp + 0x30]
test r15d, r15d
jne 0x14002f29c
call qword [sym.imp.COMDLG32.dll_GetOpenFileNameW]
test eax, eax
je 0x14002f3b0
mov r8, qword [rsp + 0x60]
mov r10, r14
sub r10, r8
nop
movzx eax, word [r8]
lea r8, [r8 + 2]
mov word [r10 + r8 - 2], ax
test ax, ax
jne 0x14002f240
cmp ebx, 5
je 0x14002f388
cmp ebx, 0xd
jne 0x14002f292
lea r8d, [rbx - 0xa]
lea rdx, [rbp + 0x1e0]
mov rcx, r14
call fcn.1400ed200
lea rdx, str.AddFileFolder
lea rcx, str.AddWatermark
lea r8, [rbp + 0x1e0]
mov r9, rdi
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov eax, 1
jmp 0x14002f3b2
call qword [sym.imp.COMDLG32.dll_GetSaveFileNameW]
test eax, eax
je 0x14002f3b0
mov rcx, qword [rsp + 0x60]
mov rdx, r14
sub rdx, rcx
nop word [rax + rax]
movzx eax, word [rcx]
lea rcx, [rcx + 2]
mov word [rdx + rcx - 2], ax
test ax, ax
jne 0x14002f2c0
lea rdx, [0x140185df8]
lea rcx, [rbp - 0x30]
mov r8, rsi
call fcn.1400f98c8
mov rcx, qword [rsp + 0x60]
call fcn.1400f9670
lea rcx, [rbp - 0x30]
call fcn.1400f9670
mov rcx, qword [rsp + 0x60]
lea rdx, [rbp - 0x30]
call fcn.1400f9d68
test rax, rax
jne 0x14002f354
lea rcx, [rbp - 0x30]
call fcn.1400fa1a4
lea rcx, [r14 - 2]
nop word [rax + rax]
cmp word [rcx + 2], r13w
lea rcx, [rcx + 2]
jne 0x14002f320
lea r9, [rbp - 0x30]
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
movzx eax, word [r9 + r8*2]
lea r8, [r8 + 1]
mov word [rcx + r8*2 - 2], ax
test ax, ax
jne 0x14002f340
cmp ebx, 4
jne 0x14002f37f
lea r8d, [rbx - 1]
lea rdx, [rbp + 0x1e0]
mov rcx, r14
call fcn.1400ed200
lea rdx, str.SaveTxt
lea rcx, [0x140185d88]
jmp 0x14002f282
cmp ebx, 5
jne 0x14002f292
lea rdx, [rbp + 0x1e0]
mov r8d, 3
mov rcx, r14
call fcn.1400ed200
lea rdx, str.CustomINI
lea rcx, str.Batch
jmp 0x14002f282
xor eax, eax
mov rcx, qword [rbp + 0xa20]
xor rcx, rsp
call fcn.1400f9a80
mov rbx, qword [rsp + 0xb88]
add rsp, 0xb30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret