Function at 0x180051810
Capabilities:
Read .ini file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x180147030]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov esi, 7
mov dword [rbp - 0x24], 0x322d2a10
mov eax, esi
xor ebx, ebx
mov dword [rbp - 0x28], eax
mov r8b, 0x16
mov dword [rbp - 0x20], 0xc92a1518
mov r9b, 0xb3
mov dword [rbp - 0x1c], 0xb316
mov edx, ebx
nop
mov eax, edx
lea rcx, [rbp - 0x24]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x28]
cmp edx, eax
jae 0x180051889
movzx r9d, byte [rbp - 0x1b]
movzx r8d, byte [rbp - 0x1c]
jmp 0x180051860
mov rdi, qword [0x180148968]
mov byte [rbp + rax - 0x24], bl
lea rcx, [rdi + 0x4310]
call fcn.18008f520
mov ecx, eax
test eax, eax
je 0x1800518c4
lea rax, [rdi + 0x4300]
cmp ecx, 0xf
jle 0x1800518ba
mov rcx, rax
call fcn.18008f510
mov rcx, rax
call fcn.18008f550
jmp 0x1800518cb
lea rax, str.null
lea rdx, [rbp - 0x24]
mov rcx, rax
call fcn.18008f420
test al, al
je 0x180051e6b
mov edi, 8
mov dword [rbp - 0x24], 0x322d2a10
mov eax, edi
mov r8b, 0x16
mov dword [rbp - 0x28], eax
mov r9b, 0xb3
mov dword [rbp - 0x20], 0xfa2a1518
mov edx, ebx
mov dword [rbp - 0x1c], 0xb316c9
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x24]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x28]
cmp edx, eax
jae 0x180051939
movzx r9d, byte [rbp - 0x1a]
movzx r8d, byte [rbp - 0x1b]
jmp 0x180051910
mov byte [rbp + rax - 0x24], bl
mov r8b, 0x16
mov eax, esi
mov r9b, 0xb3
mov dword [rbp - 0x50], eax
mov edx, ebx
mov dword [rbp - 0x4c], 0x322d2a10
mov dword [rbp - 0x48], 0xc92a1518
mov dword [rbp - 0x44], 0xb316
nop
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 0x180051989
movzx r9d, byte [rbp - 0x43]
movzx r8d, byte [rbp - 0x44]
jmp 0x180051960
movdqa xmm0, xmmword [0x180133880]
mov r8b, 0x16
mov byte [rbp + rax - 0x4c], bl
mov r9b, 0xb3
movdqu xmmword [rbp - 0x3c], xmm0
mov dword [rbp - 0x40], 0x11
mov edx, ebx
mov dword [rbp - 0x2c], 0xb316c932
mov eax, edx
lea rcx, [rbp - 0x3c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x40]
cmp edx, eax
jae 0x1800519d9
movzx r9d, byte [rbp - 0x29]
movzx r8d, byte [rbp - 0x2a]
jmp 0x1800519b0
lea r9, [rbp - 0x3c]
mov byte [rbp + rax - 0x3c], bl
xor r8d, r8d
lea rdx, [rbp - 0x24]
lea rcx, [rbp - 0x4c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x28], edi
mov r8b, 0x16
test eax, eax
mov dword [rbp - 0x24], 0x322d2a10
mov dword [rbp - 0x20], 0x62a1518
mov r9b, 0xb3
setne byte [0x1801486e6]
mov dword [rbp - 0x1c], 0xb316c9
mov edx, ebx
nop dword [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x24]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov edi, dword [rbp - 0x28]
cmp edx, edi
jae 0x180051a49
movzx r9d, byte [rbp - 0x1a]
movzx r8d, byte [rbp - 0x1b]
jmp 0x180051a20
mov byte [rbp + rdi - 0x24], bl
mov r8b, 0x16
mov eax, esi
mov r9b, 0xb3
mov dword [rbp - 0x50], eax
mov edx, ebx
mov dword [rbp - 0x4c], 0x322d2a10
mov dword [rbp - 0x48], 0xc92a1518
mov dword [rbp - 0x44], 0xb316
nop
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 0x180051a99
movzx r9d, byte [rbp - 0x43]
movzx r8d, byte [rbp - 0x44]
jmp 0x180051a70
movdqa xmm0, xmmword [0x180133880]
mov r8b, 0x16
mov byte [rbp + rax - 0x4c], bl
mov r9b, 0xb3
movdqu xmmword [rbp - 0x3c], xmm0
mov dword [rbp - 0x40], 0x11
mov edx, ebx
mov dword [rbp - 0x2c], 0xb316c932
mov eax, edx
lea rcx, [rbp - 0x3c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x40]
cmp edx, eax
jae 0x180051ae9
movzx r9d, byte [rbp - 0x29]
movzx r8d, byte [rbp - 0x2a]
jmp 0x180051ac0
lea r9, [rbp - 0x3c]
mov byte [rbp + rax - 0x3c], bl
xor r8d, r8d
lea rdx, [rbp - 0x24]
lea rcx, [rbp - 0x4c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x24], 0x322d2a10
mov r8b, 0x16
test eax, eax
mov dword [rbp - 0x20], 0x62a1518
mov eax, 0xc
mov r9b, 0xb3
setne byte [0x1801486f0]
mov dword [rbp - 0x28], eax
mov dword [rbp - 0x1c], 0x262b322d
mov edx, ebx
mov dword [rbp - 0x18], 0xb316c9
test eax, eax
je 0x180051b69
nop dword [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x24]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x28]
cmp edx, eax
jae 0x180051b69
movzx r9d, byte [rbp - 0x16]
movzx r8d, byte [rbp - 0x17]
jmp 0x180051b40
mov byte [rbp + rax - 0x24], bl
mov r8b, 0x16
mov eax, esi
mov r9b, 0xb3
mov dword [rbp - 0x50], eax
mov edx, ebx
mov dword [rbp - 0x4c], 0x322d2a10
mov dword [rbp - 0x48], 0xc92a1518
mov dword [rbp - 0x44], 0xb316
nop
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 0x180051bb9
movzx r9d, byte [rbp - 0x43]
movzx r8d, byte [rbp - 0x44]
jmp 0x180051b90
movdqa xmm0, xmmword [0x180133880]
mov r8b, 0x16
mov byte [rbp + rax - 0x4c], bl
mov r9b, 0xb3
movdqu xmmword [rbp - 0x3c], xmm0
mov dword [rbp - 0x40], 0x11
mov edx, ebx
mov dword [rbp - 0x2c], 0xb316c932
mov eax, edx
lea rcx, [rbp - 0x3c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x40]
cmp edx, eax
jae 0x180051c09
movzx r9d, byte [rbp - 0x29]
movzx r8d, byte [rbp - 0x2a]
jmp 0x180051be0
lea r9, [rbp - 0x3c]
mov byte [rbp + rax - 0x3c], bl
xor r8d, r8d
lea rdx, [rbp - 0x24]
lea rcx, [rbp - 0x4c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov r9b, 0xb3
mov dword [rbp - 0x24], 0x322d2a10
test eax, eax
mov dword [rbp - 0x20], 0x62a1518
mov eax, 0xe
mov r8b, 0x16
setne byte [0x1801486e7]
mov dword [rbp - 0x28], eax
xor ecx, ecx
mov dword [rbp - 0x1c], 0x2a2e2a25
mov dword [rbp - 0x18], 0x16c92624
mov edx, ebx
mov byte [rbp - 0x14], r9b
mov word [rbp - 0x13], cx
mov byte [rbp - 0x11], cl
test eax, eax
je 0x180051c99
nop dword [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x24]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x28]
cmp edx, eax
jae 0x180051c99
movzx r9d, byte [rbp - 0x14]
movzx r8d, byte [rbp - 0x15]
jmp 0x180051c70
mov byte [rbp + rax - 0x24], bl
mov r8b, 0x16
mov dword [rbp - 0x50], esi
mov r9b, 0xb3
mov dword [rbp - 0x4c], 0x322d2a10
mov edx, ebx
mov dword [rbp - 0x48], 0xc92a1518
mov dword [rbp - 0x44], 0xb316
nop dword [rax]
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 esi, dword [rbp - 0x50]
cmp edx, esi
jae 0x180051ce9
movzx r9d, byte [rbp - 0x43]
movzx r8d, byte [rbp - 0x44]
jmp 0x180051cc0
movdqa xmm0, xmmword [0x180133880]
mov dl, 0x16
mov byte [rbp + rsi - 0x4c], bl
mov r8b, 0xb3
movdqu xmmword [rbp - 0x3c], xmm0
mov dword [rbp - 0x40], 0x11
mov dword [rbp - 0x2c], 0xb316c932
nop dword [rax]
mov eax, ebx
lea rcx, [rbp - 0x3c]
add rcx, rax
inc ebx
movzx eax, byte [rcx]
sub al, r8b
xor al, dl
mov byte [rcx], al
mov eax, dword [rbp - 0x40]
cmp ebx, eax
jae 0x180051d37
movzx r8d, byte [rbp - 0x29]
movzx edx, byte [rbp - 0x2a]
jmp 0x180051d10
lea r9, [rbp - 0x3c]
mov byte [rbp + rax - 0x3c], 0
xor r8d, r8d
lea rdx, [rbp - 0x24]
lea rcx, [rbp - 0x4c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov rdx, qword [0x180148e88]
lea rbx, [0x180050100]
test eax, eax
mov qword [rbp - 0x28], rbx
setne byte [0x1801486e5]
cmp rdx, qword [0x180148e90]
je 0x180051d82
mov qword [rdx], rbx
add qword [0x180148e88], 8
jmp 0x180051d92
lea r8, [rbp - 0x28]
lea rcx, [0x180148e80]
call fcn.180002710
mov rdx, qword [0x180148ed0]
cmp rdx, qword [0x180148ed8]
mov qword [rbp - 0x28], rbx
je 0x180051db3
mov qword [rdx], rbx
add qword [0x180148ed0], 8
jmp 0x180051dc3
lea r8, [rbp - 0x28]
lea rcx, [0x180148ec8]
call fcn.180002710
mov rdx, qword [0x180148cd8]
lea rax, [0x1800510a0]
cmp rdx, qword [0x180148ce0]
mov qword [rbp - 0x28], rax
je 0x180051deb
mov qword [rdx], rax
add qword [0x180148cd8], 8
jmp 0x180051dfb
lea r8, [rbp - 0x28]
lea rcx, [0x180148cd0]
call fcn.180002710
mov rdx, qword [0x180148e28]
lea rax, [0x180050d30]
cmp rdx, qword [0x180148e30]
mov qword [rbp - 0x28], rax
je 0x180051e23
mov qword [rdx], rax
add qword [0x180148e28], 8
jmp 0x180051e33
lea r8, [rbp - 0x28]
lea rcx, [0x180148e20]
call fcn.180002710
mov rdx, qword [0x180148d50]
lea rax, [0x180050e60]
cmp rdx, qword [0x180148d58]
mov qword [rbp - 0x28], rax
je 0x180051e5b
mov qword [rdx], rax
add qword [0x180148d50], 8
jmp 0x180051e6b
lea r8, [rbp - 0x28]
lea rcx, [0x180148d48]
call fcn.180002710
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.180123e40
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret