Function at 0x180015920
Capabilities:
Read .ini file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x180141030]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov eax, 8
xor ebx, ebx
mov dword [rbp - 0x20], eax
mov r8b, 0x97
mov dword [rbp - 0x1c], 0xead7ead0
mov r9b, 0xf4
mov dword [rbp - 0x18], 0xeaedf2d9
mov edx, ebx
mov dword [rbp - 0x14], 0xf4978b
test eax, eax
je 0x180015999
nop
mov eax, edx
lea rcx, [rbp - 0x1c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x180015999
movzx r9d, byte [rbp - 0x12]
movzx r8d, byte [rbp - 0x13]
jmp 0x180015970
mov rdi, qword [0x180142948]
mov byte [rbp + rax - 0x1c], bl
lea rcx, [rdi + 0x4570]
call fcn.18008bbd0
mov ecx, eax
test eax, eax
je 0x1800159d4
lea rax, [rdi + 0x4560]
cmp ecx, 0xf
jle 0x1800159ca
mov rcx, rax
call fcn.18008bbc0
mov rcx, rax
call fcn.18008bc00
jmp 0x1800159db
lea rax, str.null
lea rdx, [rbp - 0x1c]
mov rcx, rax
call fcn.18008bad0
test al, al
je 0x180015e28
mov dword [rbp - 0x20], 9
mov r8b, 0x97
mov dword [rbp - 0x1c], 0xead7ead0
mov r9b, 0xf4
mov dword [rbp - 0x18], 0xeaedf2d9
mov edx, ebx
mov dword [rbp - 0x14], 0xf4978bba
nop dword [rax]
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x1c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x180015a49
movzx r9d, byte [rbp - 0x11]
movzx r8d, byte [rbp - 0x12]
jmp 0x180015a20
movdqa xmm0, xmmword [0x18012e3f0]
mov r8b, 0x97
mov byte [rbp + rax - 0x1c], bl
mov r9b, 0xf4
movdqu xmmword [rbp - 0x4c], xmm0
mov dword [rbp - 0x50], 0x11
mov edx, ebx
mov dword [rbp - 0x3c], 0xf4978bf2
mov eax, edx
lea rcx, [rbp - 0x4c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x50]
cmp edx, eax
jae 0x180015a99
movzx r9d, byte [rbp - 0x39]
movzx r8d, byte [rbp - 0x3a]
jmp 0x180015a70
mov rcx, qword [0x180142950]
lea r9, [rbp - 0x4c]
xor r8d, r8d
mov byte [rbp + rax - 0x4c], bl
lea rdx, [rbp - 0x1c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x60], 9
mov r8b, 0x97
test eax, eax
mov dword [rbp - 0x5c], 0xead7ead0
mov dword [rbp - 0x58], 0xeaedf2d9
mov r9b, 0xf4
setne byte [0x1801424c4]
mov dword [rbp - 0x54], 0xf4978bb4
mov edx, ebx
mov eax, edx
lea rcx, [rbp - 0x5c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x60]
cmp edx, eax
jae 0x180015b0b
movzx r9d, byte [rbp - 0x51]
movzx r8d, byte [rbp - 0x52]
jmp 0x180015ae2
movdqa xmm0, xmmword [0x18012e3f0]
mov r8b, 0x97
mov byte [rbp + rax - 0x5c], bl
mov r9b, 0xf4
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov edx, ebx
mov dword [rbp - 0x24], 0xf4978bf2
mov eax, edx
lea rcx, [rbp - 0x34]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x38]
cmp edx, eax
jae 0x180015b5b
movzx r9d, byte [rbp - 0x21]
movzx r8d, byte [rbp - 0x22]
jmp 0x180015b32
mov rcx, qword [0x180142950]
lea r9, [rbp - 0x34]
xor r8d, r8d
mov byte [rbp + rax - 0x34], bl
lea rdx, [rbp - 0x5c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x20], 9
mov r8b, 0x97
test eax, eax
mov dword [rbp - 0x1c], 0xead7ead0
mov dword [rbp - 0x18], 0xeaedf2d9
mov r9b, 0xf4
setne byte [0x1801424c7]
mov dword [rbp - 0x14], 0xf4978bc6
mov edx, ebx
nop dword [rax]
nop dword [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x1c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x180015bd9
movzx r9d, byte [rbp - 0x11]
movzx r8d, byte [rbp - 0x12]
jmp 0x180015bb0
movdqa xmm0, xmmword [0x18012e3f0]
mov r8b, 0x97
mov byte [rbp + rax - 0x1c], bl
mov r9b, 0xf4
movdqu xmmword [rbp - 0x4c], xmm0
mov dword [rbp - 0x50], 0x11
mov edx, ebx
mov dword [rbp - 0x3c], 0xf4978bf2
mov eax, edx
lea rcx, [rbp - 0x4c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x50]
cmp edx, eax
jae 0x180015c29
movzx r9d, byte [rbp - 0x39]
movzx r8d, byte [rbp - 0x3a]
jmp 0x180015c00
mov rcx, qword [0x180142950]
lea r9, [rbp - 0x4c]
xor r8d, r8d
mov byte [rbp + rax - 0x4c], bl
lea rdx, [rbp - 0x1c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x60], 9
mov r8b, 0x97
test eax, eax
mov dword [rbp - 0x5c], 0xead7ead0
mov dword [rbp - 0x58], 0xeaedf2d9
mov r9b, 0xf4
setne byte [0x1801424c5]
mov dword [rbp - 0x54], 0xf4978bb9
mov edx, ebx
mov eax, edx
lea rcx, [rbp - 0x5c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x60]
cmp edx, eax
jae 0x180015c9b
movzx r9d, byte [rbp - 0x51]
movzx r8d, byte [rbp - 0x52]
jmp 0x180015c72
movdqa xmm0, xmmword [0x18012e3f0]
mov dl, 0x97
mov byte [rbp + rax - 0x5c], bl
mov r8b, 0xf4
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov dword [rbp - 0x24], 0xf4978bf2
nop
mov eax, ebx
lea rcx, [rbp - 0x34]
add rcx, rax
inc ebx
movzx eax, byte [rcx]
sub al, r8b
xor al, dl
mov byte [rcx], al
mov eax, dword [rbp - 0x38]
cmp ebx, eax
jae 0x180015ce7
movzx r8d, byte [rbp - 0x21]
movzx edx, byte [rbp - 0x22]
jmp 0x180015cc0
mov rcx, qword [0x180142950]
lea r9, [rbp - 0x34]
xor r8d, r8d
mov byte [rbp + rax - 0x34], 0
lea rdx, [rbp - 0x5c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov rdx, qword [0x180142c78]
test eax, eax
lea rax, [0x180015350]
setne byte [0x1801424c6]
mov qword [rbp - 0x20], rax
cmp rdx, qword [0x180142c80]
je 0x180015d35
mov qword [rdx], rax
add qword [0x180142c78], 8
jmp 0x180015d45
lea r8, [rbp - 0x20]
lea rcx, [0x180142c70]
call fcn.180002720
mov rdx, qword [0x180142e28]
lea rbx, [fcn.180014130]
cmp rdx, qword [0x180142e30]
mov qword [rbp - 0x20], rbx
je 0x180015d6d
mov qword [rdx], rbx
add qword [0x180142e28], 8
jmp 0x180015d7d
lea r8, [rbp - 0x20]
lea rcx, [0x180142e20]
call fcn.180002720
mov rdx, qword [0x180142e70]
cmp rdx, qword [0x180142e78]
mov qword [rbp - 0x20], rbx
je 0x180015d9e
mov qword [rdx], rbx
add qword [0x180142e70], 8
jmp 0x180015dae
lea r8, [rbp - 0x20]
lea rcx, [0x180142e68]
call fcn.180002720
mov rdx, qword [0x180142dc8]
lea rax, [0x180014230]
cmp rdx, qword [0x180142dd0]
mov qword [rbp - 0x20], rax
je 0x180015de0
mov qword [rdx], rax
mov rdx, qword [0x180142dc8]
add rdx, 8
mov qword [0x180142dc8], rdx
jmp 0x180015df7
lea r8, [rbp - 0x20]
lea rcx, [0x180142dc0]
call fcn.180002720
mov rdx, qword [0x180142dc8]
cmp rdx, qword [0x180142dd0]
lea rax, [0x180014b60]
mov qword [rbp - 0x20], rax
je 0x180015e18
mov qword [rdx], rax
add qword [0x180142dc8], 8
jmp 0x180015e28
lea r8, [rbp - 0x20]
lea rcx, [0x180142dc0]
call fcn.180002720
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.18011e040
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret