Function at 0x180004530
Capabilities:
Check if file exists
Read .ini file

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
lea rbp, [rax - 0x418]
sub rsp, 0x500
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov rax, qword [0x18003c0b0]
xor rax, rsp
mov qword [rbp + 0x3f0], rax
mov rbx, rcx
call fcn.1800048c0
lea rsi, [rbx + 0x20]
lea rdi, [rbx + 0x60]
cmp rdi, rsi
je 0x18000458e
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rsi
mov rcx, rdi
call fcn.180001420
mov r8d, 0xc
lea rdx, str.Trumpete.exe
mov rcx, rdi
call fcn.1800027a0
mov qword [rsp + 0x60], 7
xor r14d, r14d
mov qword [rsp + 0x58], r14
mov word [rsp + 0x48], r14w
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.180001420
nop
lea r8d, [r14 + 0x10]
lea rdx, str.ConchPicInfo.ini
lea rcx, [rsp + 0x48]
call fcn.1800027a0
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x30]
call fcn.18000d130
lea rcx, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae rcx, qword [rsp + 0x48]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x18000467c
lea rax, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae rax, qword [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x104
lea r9, [rbp - 0x30]
lea r8, [0x1800275a0]
lea rdx, str.CfgPath
lea rcx, str.AppInfo
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
cmp word [rbp - 0x30], r14w
jne 0x180004659
mov r8d, r14d
jmp 0x18000466c
lea rax, [rbp - 0x30]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], 0
jne 0x180004661
lea rcx, [rbx + 0xa0]
lea rdx, [rbp - 0x30]
call fcn.180001560
cmp qword [rbx + 0xb0], 0
jne 0x180004810
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1e0]
call fcn.18000d130
lea rdx, [rbp - 0x78]
mov rcx, rbx
call fcn.180003cf0
nop
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
lea rax, [rbp + 0x1e0]
mov qword [rsp + 0x30], rax
lea rax, str.97b842
mov qword [rsp + 0x28], rax
lea rax, str.XKSetting
mov qword [rsp + 0x20], rax
lea r8, str.ConchPicture
lea rdx, [rsp + 0x68]
mov rcx, rbx
call fcn.1800041f0
lea rdi, [rbx + 0xa0]
mov rdx, rax
mov rcx, rdi
call fcn.1800037a0
mov r8, qword [rbp - 0x80]
cmp r8, 8
jb 0x18000471f
inc r8
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x68]
call fcn.1800016b0
cmp qword [rdi + 0x10], 0
je 0x1800047f4
mov qword [rbp - 0x80], 7
mov qword [rsp + 0x78], r14
mov word [rsp + 0x68], r14w
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rdi
lea rcx, [rsp + 0x68]
call fcn.180001420
nop
mov edx, 0x5c
or r8, 0xffffffffffffffff
lea rcx, [rsp + 0x68]
call fcn.180005330
cmp eax, 0xffffffff
jle 0x1800047d7
inc eax
movsxd r9, eax
xor r8d, r8d
lea rdx, [rbp - 0x58]
mov rcx, rdi
call fcn.1800034a0
mov rdx, rax
mov rcx, rdi
call fcn.1800037a0
mov r8, qword [rbp - 0x40]
cmp r8, 8
jb 0x1800047a3
inc r8
mov rdx, qword [rbp - 0x58]
lea rcx, [rbp - 0x58]
call fcn.1800016b0
add rbx, 0xc0
cmp rbx, rdi
je 0x1800047c1
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call fcn.180001420
mov r8d, 0xb
lea rdx, str.Calleuo.ini
mov rcx, rbx
call fcn.1800027a0
nop
mov r8, qword [rbp - 0x80]
cmp r8, 8
jb 0x1800047f4
inc r8
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x68]
call fcn.1800016b0
nop
mov r8, qword [rbp - 0x60]
cmp r8, 8
jb 0x180004875
inc r8
mov rdx, qword [rbp - 0x78]
lea rcx, [rbp - 0x78]
call fcn.1800016b0
jmp 0x180004875
lea rdi, [rbx + 0xa0]
mov r8d, 6
lea rdx, str.Config
mov rcx, rdi
call fcn.1800027a0
mov r8d, 1
lea rdx, [0x1800276f0]
mov rcx, rdi
call fcn.1800027a0
add rbx, 0xc0
cmp rbx, rdi
je 0x18000485f
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call fcn.180001420
mov r8d, 0xe
lea rdx, str.UseVestige.ini
mov rcx, rbx
call fcn.1800027a0
nop
mov r8, qword [rsp + 0x60]
cmp r8, 8
jb 0x180004892
inc r8
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x48]
call fcn.1800016b0
mov rcx, qword [rbp + 0x3f0]
xor rcx, rsp
call fcn.18000b3b0
lea r11, [rsp + 0x500]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret