Function at 0x180056eb0
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 - 8], rax
xor ebx, ebx
mov dword [rbp - 0x18], 5
mov edx, ebx
mov dword [rbp - 0x14], 0xf9ff0d34
mov dword [rbp - 0x10], 0xf9756eff
mov r8b, 0x75
mov r9b, 0xf9
mov eax, edx
lea rcx, [rbp - 0x14]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x18]
cmp edx, eax
jae 0x180056f1b
movzx r9d, byte [rbp - 0xd]
movzx r8d, byte [rbp - 0xe]
jmp 0x180056ef2
mov rdi, qword [0x180142948]
mov byte [rbp + rax - 0x14], bl
lea rcx, [rdi + 0x4570]
call fcn.18008bbd0
mov ecx, eax
test eax, eax
je 0x180056f56
lea rax, [rdi + 0x4560]
cmp ecx, 0xf
jle 0x180056f4c
mov rcx, rax
call fcn.18008bbc0
mov rcx, rax
call fcn.18008bc00
jmp 0x180056f5d
lea rax, str.null
lea rdx, [rbp - 0x14]
mov rcx, rax
call fcn.18008bad0
test al, al
je 0x18005746d
xor ecx, ecx
mov dword [rbp - 0x14], 0xf9ff0d34
mov edi, 6
mov dword [rbp - 0x10], 0x756e1dff
mov eax, edi
mov r9b, 0xf9
mov dword [rbp - 0x18], eax
mov r8b, 0x75
mov byte [rbp - 0xc], r9b
mov edx, ebx
mov word [rbp - 0xb], cx
mov byte [rbp - 9], cl
nop
mov eax, edx
lea rcx, [rbp - 0x14]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x18]
cmp edx, eax
jae 0x180056fc9
movzx r9d, byte [rbp - 0xc]
movzx r8d, byte [rbp - 0xd]
jmp 0x180056fa0
movdqa xmm0, xmmword [0x18012d5a0]
mov r8b, 0x75
mov byte [rbp + rax - 0x14], bl
mov r9b, 0xf9
movdqu xmmword [rbp - 0x44], xmm0
mov dword [rbp - 0x48], 0x11
mov edx, ebx
mov dword [rbp - 0x34], 0xf9756e15
mov eax, edx
lea rcx, [rbp - 0x44]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x48]
cmp edx, eax
jae 0x180057019
movzx r9d, byte [rbp - 0x31]
movzx r8d, byte [rbp - 0x32]
jmp 0x180056ff0
mov rcx, qword [0x180142950]
lea r9, [rbp - 0x44]
xor r8d, r8d
mov byte [rbp + rax - 0x44], bl
lea rdx, [rbp - 0x14]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov r9b, 0xf9
mov dword [rbp - 0x5c], 0xf9ff0d34
test eax, eax
mov dword [rbp - 0x58], 0x15121dff
mov eax, 0xa
mov r8b, 0x75
setne byte [0x18014272e]
mov dword [rbp - 0x60], eax
xor ecx, ecx
mov dword [rbp - 0x54], 0x756e0914
mov byte [rbp - 0x50], r9b
mov edx, ebx
mov word [rbp - 0x4f], cx
mov byte [rbp - 0x4d], cl
test eax, eax
je 0x1800570a9
nop dword [rax]
nop dword [rax + rax]
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 0x1800570a9
movzx r9d, byte [rbp - 0x50]
movzx r8d, byte [rbp - 0x51]
jmp 0x180057080
movdqa xmm0, xmmword [0x18012d5a0]
mov r8b, 0x75
mov byte [rbp + rax - 0x5c], bl
mov r9b, 0xf9
movdqu xmmword [rbp - 0x2c], xmm0
mov dword [rbp - 0x30], 0x11
mov edx, ebx
mov dword [rbp - 0x1c], 0xf9756e15
mov eax, edx
lea rcx, [rbp - 0x2c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x30]
cmp edx, eax
jae 0x1800570f9
movzx r9d, byte [rbp - 0x19]
movzx r8d, byte [rbp - 0x1a]
jmp 0x1800570d0
mov rcx, qword [0x180142950]
lea r9, [rbp - 0x2c]
xor r8d, r8d
mov byte [rbp + rax - 0x2c], bl
lea rdx, [rbp - 0x5c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov r9b, 0xf9
mov dword [rbp - 0x14], 0xf9ff0d34
test eax, eax
mov dword [rbp - 0x10], 0x756e1bff
mov eax, edi
mov r8b, 0x75
setne byte [0x18014272d]
mov dword [rbp - 0x18], eax
xor ecx, ecx
mov byte [rbp - 0xc], r9b
mov word [rbp - 0xb], cx
mov edx, ebx
mov byte [rbp - 9], cl
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x14]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x18]
cmp edx, eax
jae 0x180057179
movzx r9d, byte [rbp - 0xc]
movzx r8d, byte [rbp - 0xd]
jmp 0x180057150
movdqa xmm0, xmmword [0x18012d5a0]
mov r8b, 0x75
mov byte [rbp + rax - 0x14], bl
mov r9b, 0xf9
movdqu xmmword [rbp - 0x44], xmm0
mov dword [rbp - 0x48], 0x11
mov edx, ebx
mov dword [rbp - 0x34], 0xf9756e15
mov eax, edx
lea rcx, [rbp - 0x44]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x48]
cmp edx, eax
jae 0x1800571c9
movzx r9d, byte [rbp - 0x31]
movzx r8d, byte [rbp - 0x32]
jmp 0x1800571a0
mov rcx, qword [0x180142950]
lea r9, [rbp - 0x44]
xor r8d, r8d
mov byte [rbp + rax - 0x44], bl
lea rdx, [rbp - 0x14]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov r9b, 0xf9
mov dword [rbp - 0x5c], 0xf9ff0d34
test eax, eax
mov dword [rbp - 0x58], 0x756e29ff
mov eax, edi
mov r8b, 0x75
setne byte [0x18014272c]
mov dword [rbp - 0x60], eax
xor ecx, ecx
mov byte [rbp - 0x54], r9b
mov word [rbp - 0x53], cx
mov edx, ebx
mov byte [rbp - 0x51], cl
nop word [rax + rax]
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 0x180057249
movzx r9d, byte [rbp - 0x54]
movzx r8d, byte [rbp - 0x55]
jmp 0x180057220
movdqa xmm0, xmmword [0x18012d5a0]
mov r8b, 0x75
mov byte [rbp + rax - 0x5c], bl
mov r9b, 0xf9
movdqu xmmword [rbp - 0x2c], xmm0
mov dword [rbp - 0x30], 0x11
mov edx, ebx
mov dword [rbp - 0x1c], 0xf9756e15
mov eax, edx
lea rcx, [rbp - 0x2c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x30]
cmp edx, eax
jae 0x180057299
movzx r9d, byte [rbp - 0x19]
movzx r8d, byte [rbp - 0x1a]
jmp 0x180057270
mov rcx, qword [0x180142950]
lea r9, [rbp - 0x2c]
xor r8d, r8d
mov byte [rbp + rax - 0x2c], bl
lea rdx, [rbp - 0x5c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov r9b, 0xf9
mov dword [rbp - 0x18], edi
test eax, eax
mov dword [rbp - 0x14], 0xf9ff0d34
mov dword [rbp - 0x10], 0x756e20ff
mov r8b, 0x75
setne byte [0x180142723]
mov byte [rbp - 0xc], r9b
xor eax, eax
mov edx, ebx
mov word [rbp - 0xb], ax
mov byte [rbp - 9], al
nop dword [rax]
nop dword [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x14]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov edi, dword [rbp - 0x18]
cmp edx, edi
jae 0x180057319
movzx r9d, byte [rbp - 0xc]
movzx r8d, byte [rbp - 0xd]
jmp 0x1800572f0
movdqa xmm0, xmmword [0x18012d5a0]
mov dl, 0x75
mov byte [rbp + rdi - 0x14], bl
mov r8b, 0xf9
movdqu xmmword [rbp - 0x44], xmm0
mov dword [rbp - 0x48], 0x11
mov dword [rbp - 0x34], 0xf9756e15
nop dword [rax]
mov eax, ebx
lea rcx, [rbp - 0x44]
add rcx, rax
inc ebx
movzx eax, byte [rcx]
sub al, r8b
xor al, dl
mov byte [rcx], al
mov eax, dword [rbp - 0x48]
cmp ebx, eax
jae 0x180057367
movzx r8d, byte [rbp - 0x31]
movzx edx, byte [rbp - 0x32]
jmp 0x180057340
mov rcx, qword [0x180142950]
lea r9, [rbp - 0x44]
xor r8d, r8d
mov byte [rbp + rax - 0x44], 0
lea rdx, [rbp - 0x14]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov rdx, qword [0x180142c78]
test eax, eax
lea rax, [0x180056700]
setne byte [0x18014272f]
mov qword [rbp - 0x18], rax
cmp rdx, qword [0x180142c80]
je 0x1800573b5
mov qword [rdx], rax
add qword [0x180142c78], 8
jmp 0x1800573c5
lea r8, [rbp - 0x18]
lea rcx, [0x180142c70]
call fcn.180002720
mov rdx, qword [0x180142c48]
lea rax, [0x18002c980]
cmp rdx, qword [0x180142c50]
mov qword [rbp - 0x18], rax
je 0x1800573ed
mov qword [rdx], rax
add qword [0x180142c48], 8
jmp 0x1800573fd
lea r8, [rbp - 0x18]
lea rcx, [0x180142c40]
call fcn.180002720
mov rdx, qword [0x180142b50]
lea rax, [0x18002c990]
cmp rdx, qword [0x180142b58]
mov qword [rbp - 0x18], rax
je 0x180057425
mov qword [rdx], rax
add qword [0x180142b50], 8
jmp 0x180057435
lea r8, [rbp - 0x18]
lea rcx, [0x180142b48]
call fcn.180002720
mov rdx, qword [0x180142dc8]
lea rax, [0x180056170]
cmp rdx, qword [0x180142dd0]
mov qword [rbp - 0x18], rax
je 0x18005745d
mov qword [rdx], rax
add qword [0x180142dc8], 8
jmp 0x18005746d
lea r8, [rbp - 0x18]
lea rcx, [0x180142dc0]
call fcn.180002720
mov rcx, qword [rbp - 8]
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