Function at 0x180013d00
Capabilities:
Read .ini file

Disassembly:
push r15
sub rsp, 0x220
mov rax, qword [0x180037020]
xor rax, rsp
mov qword [rsp + 0x1f0], rax
movabs rax, 0x140eda810
mov r15, rcx
cmp dword [rax], 2
jne 0x180014099
movabs eax, dword [0x140eda82c]
sub eax, 0xc
test eax, 0xfffffffd
jne 0x180014099
cmp byte [0x180038426], 0
jne 0x180013df6
cmp byte [0x180038425], 0
je 0x180014099
mov rax, qword [0x180038f70]
movabs qword [0x1411a8e20], rax
mov rax, qword [0x180038f78]
movabs qword [0x1411a8e28], rax
mov rax, qword [0x180038f88]
movabs qword [0x1411a8e38], rax
mov rax, qword [0x180038f90]
movabs qword [0x1411a8e40], rax
mov rax, qword [0x180038fa0]
movabs qword [0x1411a8e50], rax
mov rax, qword [0x180038fa8]
movabs qword [0x1411a8e58], rax
mov rax, qword [0x180038fb8]
movabs qword [0x1411a8e68], rax
mov rax, qword [0x180038fc0]
movabs qword [0x1411a8e70], rax
mov byte [0x180038426], 1
jmp 0x180014099
movabs eax, dword [0x14cc12438]
mov qword [rsp + 0x238], rbx
mov qword [rsp + 0x240], rbp
mov qword [rsp + 0x248], rsi
mov esi, eax
movabs eax, dword [0x141197e00]
mov qword [rsp + 0x218], rdi
mov qword [rsp + 0x210], r12
mov qword [rsp + 0x208], r13
lea r13, [0x180038f70]
mov qword [rsp + 0x200], r14
movsxd r14, eax
movabs eax, dword [0x141197e04]
mov ebp, eax
movabs al, byte [0x141197e14]
movzx r12d, al
cmp esi, dword [rcx + 0x10]
jne 0x180013e7d
cmp r14d, dword [rcx + 0x14]
jne 0x180013e7d
cmp ebp, dword [rcx + 0x18]
jne 0x180013e7d
cmp al, byte [rcx + 0x1c]
je 0x180013f2c
test esi, esi
js 0x180013ec4
test r14d, r14d
js 0x180013ec4
test ebp, ebp
js 0x180013ec4
cmp esi, 0x3e7
jg 0x180013ec4
cmp r14d, 3
jg 0x180013ec4
cmp ebp, 1
jg 0x180013ec4
lea rcx, [r14 + r14*2]
mov rax, qword [r13 + rcx*8]
mov rdx, qword [r13 + rcx*8 + 8]
cmp rax, rdx
je 0x180013ec4
cmp dword [rax], esi
jne 0x180013eb9
cmp dword [rax + 4], ebp
je 0x180013f1c
add rax, 0xe4
cmp rax, rdx
jne 0x180013eb0
lea rcx, [r14 + r14*2]
mov r8d, ebp
lea rdi, [rcx*8]
mov edx, esi
lea rcx, [rsp + 0x30]
lea rbx, [rdi + r13]
call fcn.180012380
mov rdx, rax
mov rcx, rbx
call fcn.180015140
mov rax, qword [rbx]
lea ecx, [r14 + r14*2]
shl ecx, 3
movsxd rdx, ecx
movabs rcx, 0x1411a8e20
mov qword [rdx + rcx], rax
movabs rcx, 0x1411a8e28
mov rax, qword [rdi + r13 + 8]
mov qword [rdx + rcx], rax
mov dword [r15 + 0x10], esi
mov dword [r15 + 0x14], r14d
mov dword [r15 + 0x18], ebp
mov byte [r15 + 0x1c], r12b
mov r12, qword [rsp + 0x210]
test esi, esi
js 0x180014069
test r14d, r14d
js 0x180014069
test ebp, ebp
js 0x180014069
cmp esi, 0x3e7
jg 0x180014069
cmp r14d, 3
jg 0x180014069
cmp ebp, 1
jg 0x180014069
movups xmm0, xmmword [str.modules]
mov r9d, esi
lea r8, str.pv._03d
mov edx, 0x20
lea rcx, [rsp + 0x170]
movups xmmword [rsp + 0x120], xmm0
call fcn.18000f120
lea rcx, [r14 + r14*2]
xor ebx, ebx
mov rax, qword [r13 + rcx*8]
mov rdx, qword [r13 + rcx*8 + 8]
cmp rax, rdx
je 0x180013fc4
nop dword [rax]
cmp dword [rax], esi
jne 0x180013fb9
cmp dword [rax + 4], ebp
je 0x180013fc7
add rax, 0xe4
cmp rax, rdx
jne 0x180013fb0
mov rax, rbx
lea rdi, [rax + 8]
nop dword [rax + rax]
lea r9, [rsp + 0x170]
mov dword [rsp + 0x20], ebx
lea r8, str._ls.module_d
mov edx, 0x20
lea rcx, [rsp + 0x130]
call fcn.18000f120
lea r9, [0x180038670]
xor r8d, r8d
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x120]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov r9d, dword [rdi]
cmp eax, r9d
je 0x18001405a
lea r8, [0x18002ae8c]
mov edx, 0x20
lea rcx, [rsp + 0x1b0]
call fcn.18000f120
lea r9, [0x180038670]
lea r8, [rsp + 0x1b0]
lea rdx, [rsp + 0x130]
lea rcx, str.modules
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
inc ebx
add rdi, 4
cmp ebx, 6
jl 0x180013fd0
mov r13, qword [rsp + 0x208]
mov rdi, qword [rsp + 0x218]
mov rsi, qword [rsp + 0x248]
mov rbp, qword [rsp + 0x240]
mov rbx, qword [rsp + 0x238]
mov r14, qword [rsp + 0x200]
mov rcx, qword [rsp + 0x1f0]
xor rcx, rsp
call fcn.180021d70
add rsp, 0x220
pop r15
ret