Function at 0x1401e5f90
Capabilities:
Read .ini file

Disassembly:
test rdx, rdx
je 0x1401e64dd
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x90
mov qword [rsp + 0x80], 0xfffffffffffffffe
mov qword [rsp + 0xe0], rbx
mov r12, rdx
mov rbp, rcx
call fcn.1401fa4b0
mov rcx, rax
xor esi, esi
mov edx, esi
test rax, rax
setne dl
test edx, edx
jne 0x1401e5fe6
mov ecx, 0x80004005
call fcn.140003d20
int3
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x30], rax
call fcn.1401fa4b0
mov rdx, rax
mov ecx, esi
test rax, rax
setne cl
test ecx, ecx
jne 0x1401e6014
mov ecx, 0x80004005
call fcn.140003d20
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
mov word [rsp + 0x28], 0
mov word [rsp + 0x2a], 0
xor eax, eax
or rbx, 0xffffffffffffffff
mov rcx, rbx
lea rdi, [0x140273028]
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, [0x140273028]
lea rcx, [rsp + 0x30]
call fcn.140007880
xor eax, eax
mov rcx, rbx
lea rdi, [0x140273028]
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, [0x140273028]
lea rcx, [rsp + 0x38]
call fcn.140007880
mov dword [rsp + 0x40], esi
mov qword [rsp + 0x50], rsi
lea rdx, [rsp + 0x28]
mov rcx, r12
call fcn.1401e65a0
test eax, eax
jne 0x1401e60e6
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, ebx
test eax, eax
jg 0x1401e60bf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebx
add ebx, 0xffffffff
test ebx, ebx
jg 0x1401e64c3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x1401e64c3
movzx eax, word [rsp + 0x2a]
movzx ecx, word [rsp + 0x28]
test cx, cx
jne 0x1401e60fa
test ax, ax
je 0x1401e6118
mov rdx, qword [rbp + 8]
cmp cx, word [rdx + 0x40a]
jne 0x1401e6485
cmp ax, word [rdx + 0x408]
jne 0x1401e6485
cmp dword [rbp + 0x10], 0
jle 0x1401e6189
xor r9d, r9d
mov r8, qword [rsp + 0x30]
lea rdx, str.DefLevel
lea rcx, [0x14032a360]
call fcn.1401ffa54
test eax, eax
jle 0x1401e6189
cmp eax, dword [rbp + 0x10]
jg 0x1401e6189
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401e6162
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebx
add ebx, 0xffffffff
test ebx, ebx
jg 0x1401e64c3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x1401e64c3
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x28]
mov rcx, rbp
call fcn.1401e6930
test eax, eax
jne 0x1401e61e6
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401e61bf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebx
add ebx, 0xffffffff
test ebx, ebx
jg 0x1401e64c3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x1401e64c3
mov r9, qword [0x14032ded8]
mov r8d, ebx
lea rdx, str.Volume
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov r13d, eax
mov r9, qword [0x14032ded8]
mov r8d, 0xffffd8f0
lea rdx, str.VolumeDB
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rsp + 0x48], eax
mov r9, qword [0x14032ded8]
mov r8d, ebx
lea rdx, str.Mute
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov r15d, eax
mov r9, qword [0x14032ded8]
mov r8d, ebx
lea rdx, str.Boost
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rsp + 0x4c], eax
mov r9, qword [0x14032ded8]
mov r8d, ebx
lea rdx, str.BoostVol
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov r14d, eax
mov rdi, qword [rsp + 0x50]
cmp r13d, 0xffffffff
je 0x1401e6358
cmp dword [rdi + 0x3c], 0
je 0x1401e6358
mov dword [rsp + 0x20], esi
mov rax, qword [rdi]
lea rdx, [rsp + 0x20]
mov rcx, rdi
call qword [rax + 0x40]
test eax, eax
je 0x1401e6358
mov ecx, dword [rsp + 0x20]
mov eax, 4
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.1401ebdc8
mov r12, rax
test rax, rax
jne 0x1401e6316
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401e62ef
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebx
add ebx, 0xffffffff
test ebx, ebx
jg 0x1401e64c3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x1401e64c3
mov ecx, esi
mov r8d, dword [rsp + 0x20]
test r8d, r8d
je 0x1401e6344
nop
nop
nop
nop
mov dword [rax], r13d
add ecx, 1
add rax, 4
mov r8d, dword [rsp + 0x20]
cmp ecx, r8d
jb 0x1401e6330
mov rax, qword [rdi]
mov rdx, r12
mov rcx, rdi
call qword [rax + 0x58]
mov rcx, r12
call fcn.1401ebdc0
lea r12, [0x140000000]
mov eax, dword [rsp + 0x48]
cmp eax, 0xffffd8f0
je 0x1401e63a6
cmp dword [rdi + 0x3c], 0
je 0x1401e63a6
cvtsi2ss xmm1, eax
divss xmm1, dword [0x1402a7e6c]
lea rcx, [rsp + 0x70]
mov rax, qword [r12 + 0x26de98]
mov qword [rcx], rax
mov rax, qword [r12 + 0x26dea0]
mov qword [rcx + 8], rax
mov rax, qword [rdi]
lea r8, [rsp + 0x70]
mov rcx, rdi
call qword [rax + 0x60]
cmp r15d, 0xffffffff
je 0x1401e63c4
cmp dword [rdi + 0x34], 0
je 0x1401e63c4
mov rax, qword [rdi]
mov edx, esi
cmp r15d, 1
sete dl
mov rcx, rdi
call qword [rax + 0x38]
mov ecx, dword [rsp + 0x4c]
cmp ecx, 0xffffffff
je 0x1401e6405
cmp dword [rdi + 0x44], 0
je 0x1401e6405
lea r8, [rsp + 0x60]
mov rax, qword [r12 + 0x26ddf8]
mov qword [r8], rax
mov rax, qword [r12 + 0x26de00]
mov qword [r8 + 8], rax
cmp ecx, 1
sete sil
lea r8, [rsp + 0x60]
mov edx, esi
mov rcx, rdi
call fcn.1401453a0
cmp r14d, 0xffffffff
je 0x1401e641e
cmp dword [rdi + 0x4c], 0
je 0x1401e641e
cvtsi2ss xmm1, r14d
mov rcx, rdi
call fcn.1401464a0
mov r9d, dword [rbp + 0x10]
add r9d, 1
mov r8, qword [rsp + 0x30]
lea rdx, str.DefLevel
lea rcx, [0x14032a360]
call fcn.1401ffaf4
mov dword [rbp + 0x18], 1
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401e6465
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebx
add ebx, 0xffffffff
test ebx, ebx
jg 0x1401e64c3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x1401e64c3
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401e64a5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebx
add ebx, 0xffffffff
test ebx, ebx
jg 0x1401e64c3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0xe0]
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret 0