Function at 0x180012730
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 [0x180146030]
xor rax, rsp
mov qword [rbp - 8], rax
mov eax, 8
xor ebx, ebx
mov dword [rbp - 0x18], eax
mov r8b, 0x94
mov dword [rbp - 0x14], 0xd9e0eed2
mov r9b, 0xf9
mov dword [rbp - 0x10], 0xf6c6dfea
mov edx, ebx
mov dword [rbp - 0xc], 0xf9948d
test eax, eax
je 0x1800127a9
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 0x1800127a9
movzx r9d, byte [rbp - 0xa]
movzx r8d, byte [rbp - 0xb]
jmp 0x180012780
mov rdi, qword [0x180147960]
mov byte [rbp + rax - 0x14], bl
lea rcx, [rdi + 0x42e8]
call fcn.18008eb70
mov ecx, eax
test eax, eax
je 0x1800127e4
lea rax, [rdi + 0x42d8]
cmp ecx, 0xf
jle 0x1800127da
mov rcx, rax
call fcn.18008eb60
mov rcx, rax
call fcn.18008eba0
jmp 0x1800127eb
lea rax, str.null
lea rdx, [rbp - 0x14]
mov rcx, rax
call fcn.18008ea70
test al, al
je 0x180012d36
mov dword [rbp - 0x18], 9
mov r8b, 0x94
mov dword [rbp - 0x14], 0xd9e0eed2
mov r9b, 0xf9
mov dword [rbp - 0x10], 0xf6c6dfea
mov edx, ebx
mov dword [rbp - 0xc], 0xf9948dbe
nop dword [rax]
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 0x180012859
movzx r9d, byte [rbp - 9]
movzx r8d, byte [rbp - 0xa]
jmp 0x180012830
movdqa xmm0, xmmword [0x180133530]
mov r8b, 0x94
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], 0xf9948df6
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 0x1800128a9
movzx r9d, byte [rbp - 0x31]
movzx r8d, byte [rbp - 0x32]
jmp 0x180012880
mov rcx, qword [0x180147968]
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 dword [rbp - 0x60], 0xd
mov r8b, 0x94
test eax, eax
mov dword [rbp - 0x5c], 0xd9e0eed2
mov dword [rbp - 0x58], 0xf6c6dfea
mov r9b, 0xf9
setne byte [0x18014749e]
mov dword [rbp - 0x54], 0x565c28be
mov dword [rbp - 0x50], 0xf9948d1e
mov edx, ebx
nop dword [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 0x180012929
movzx r9d, byte [rbp - 0x4d]
movzx r8d, byte [rbp - 0x4e]
jmp 0x180012900
movdqa xmm0, xmmword [0x180133530]
mov r8b, 0x94
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], 0xf9948df6
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 0x180012979
movzx r9d, byte [rbp - 0x19]
movzx r8d, byte [rbp - 0x1a]
jmp 0x180012950
mov rcx, qword [0x180147968]
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 dword [rbp - 0x18], 9
mov r8b, 0x94
test eax, eax
mov dword [rbp - 0x14], 0xd9e0eed2
mov dword [rbp - 0x10], 0xf6c6dfea
mov r9b, 0xf9
setne byte [0x18014749f]
mov dword [rbp - 0xc], 0xf9948dbc
mov edx, ebx
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 0x1800129eb
movzx r9d, byte [rbp - 9]
movzx r8d, byte [rbp - 0xa]
jmp 0x1800129c2
movdqa xmm0, xmmword [0x180133530]
mov r8b, 0x94
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], 0xf9948df6
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 0x180012a3b
movzx r9d, byte [rbp - 0x31]
movzx r8d, byte [rbp - 0x32]
jmp 0x180012a12
mov rcx, qword [0x180147968]
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 dword [rbp - 0x60], 9
mov r8b, 0x94
test eax, eax
mov dword [rbp - 0x5c], 0xd9e0eed2
mov dword [rbp - 0x58], 0xf6c6dfea
mov r9b, 0xf9
setne byte [0x1801474a9]
mov dword [rbp - 0x54], 0xf9948dca
mov edx, ebx
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 0x180012ab9
movzx r9d, byte [rbp - 0x51]
movzx r8d, byte [rbp - 0x52]
jmp 0x180012a90
movdqa xmm0, xmmword [0x180133530]
mov r8b, 0x94
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], 0xf9948df6
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 0x180012b09
movzx r9d, byte [rbp - 0x19]
movzx r8d, byte [rbp - 0x1a]
jmp 0x180012ae0
mov rcx, qword [0x180147968]
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 dword [rbp - 0x18], 9
mov r8b, 0x94
test eax, eax
mov dword [rbp - 0x14], 0xd9e0eed2
mov dword [rbp - 0x10], 0xf6c6dfea
mov r9b, 0xf9
setne byte [0x1801474aa]
mov dword [rbp - 0xc], 0xf9948dbf
mov edx, ebx
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 0x180012b7b
movzx r9d, byte [rbp - 9]
movzx r8d, byte [rbp - 0xa]
jmp 0x180012b52
movdqa xmm0, xmmword [0x180133530]
mov dl, 0x94
mov byte [rbp + rax - 0x14], bl
mov r8b, 0xf9
movdqu xmmword [rbp - 0x44], xmm0
mov dword [rbp - 0x48], 0x11
mov dword [rbp - 0x34], 0xf9948df6
nop
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 0x180012bc7
movzx r8d, byte [rbp - 0x31]
movzx edx, byte [rbp - 0x32]
jmp 0x180012ba0
mov rcx, qword [0x180147968]
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 [0x180147cd0]
test eax, eax
lea rax, [0x180011ff0]
setne byte [0x1801474a8]
mov qword [rbp - 0x18], rax
cmp rdx, qword [0x180147cd8]
je 0x180012c15
mov qword [rdx], rax
add qword [0x180147cd0], 8
jmp 0x180012c25
lea r8, [rbp - 0x18]
lea rcx, [0x180147cc8]
call fcn.180002710
mov rdx, qword [0x180147e80]
lea rbx, [0x180011c30]
cmp rdx, qword [0x180147e88]
mov qword [rbp - 0x18], rbx
je 0x180012c4d
mov qword [rdx], rbx
add qword [0x180147e80], 8
jmp 0x180012c5d
lea r8, [rbp - 0x18]
lea rcx, [0x180147e78]
call fcn.180002710
mov rdx, qword [0x180147ec8]
cmp rdx, qword [0x180147ed0]
mov qword [rbp - 0x18], rbx
je 0x180012c7e
mov qword [rdx], rbx
add qword [0x180147ec8], 8
jmp 0x180012c8e
lea r8, [rbp - 0x18]
lea rcx, [0x180147ec0]
call fcn.180002710
mov rdx, qword [0x180147ca0]
lea rax, [0x180011cb0]
cmp rdx, qword [0x180147ca8]
mov qword [rbp - 0x18], rax
je 0x180012cb6
mov qword [rdx], rax
add qword [0x180147ca0], 8
jmp 0x180012cc6
lea r8, [rbp - 0x18]
lea rcx, [0x180147c98]
call fcn.180002710
mov rdx, qword [0x180147ba8]
lea rax, [0x180011cd0]
cmp rdx, qword [0x180147bb0]
mov qword [rbp - 0x18], rax
je 0x180012cee
mov qword [rdx], rax
add qword [0x180147ba8], 8
jmp 0x180012cfe
lea r8, [rbp - 0x18]
lea rcx, [0x180147ba0]
call fcn.180002710
mov rdx, qword [0x180147e20]
lea rax, [0x180011cf0]
cmp rdx, qword [0x180147e28]
mov qword [rbp - 0x18], rax
je 0x180012d26
mov qword [rdx], rax
add qword [0x180147e20], 8
jmp 0x180012d36
lea r8, [rbp - 0x18]
lea rcx, [0x180147e18]
call fcn.180002710
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.180122d60
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret