Function at 0x1800479b0
Capabilities:
Read .ini file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0x90
mov rax, qword [0x180147030]
xor rax, rsp
mov qword [rbp + 0x4f], rax
xor ecx, ecx
mov eax, 6
xor ebx, ebx
mov dword [rbp + 0x3f], eax
mov dword [rbp + 0x43], 0x4f32342d
mov r9b, 0xd1
mov dword [rbp + 0x47], 0xadb4936
mov r8b, 0xa
mov byte [rbp + 0x4b], r9b
mov edx, ebx
mov word [rbp + 0x4c], cx
mov byte [rbp + 0x4e], cl
test eax, eax
je 0x180047a39
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp + 0x43]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp + 0x3f]
cmp edx, eax
jae 0x180047a39
movzx r9d, byte [rbp + 0x4b]
movzx r8d, byte [rbp + 0x4a]
jmp 0x180047a10
mov rdi, qword [0x180148968]
mov byte [rbp + rax + 0x43], bl
lea rcx, [rdi + 0x4310]
call fcn.18008f520
mov ecx, eax
test eax, eax
je 0x180047a74
lea rax, [rdi + 0x4300]
cmp ecx, 0xf
jle 0x180047a6a
mov rcx, rax
call fcn.18008f510
mov rcx, rax
call fcn.18008f550
jmp 0x180047a7b
lea rax, str.null
lea rdx, [rbp + 0x43]
mov rcx, rax
call fcn.18008f420
test al, al
je 0x180047f77
mov edi, 7
mov dword [rbp + 0x43], 0x4f32342d
mov eax, edi
mov r8b, 0xa
mov dword [rbp + 0x3f], eax
mov r9b, 0xd1
mov dword [rbp + 0x47], 0xdb2c4936
mov edx, ebx
mov dword [rbp + 0x4b], 0xd10a
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp + 0x43]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp + 0x3f]
cmp edx, eax
jae 0x180047ae9
movzx r9d, byte [rbp + 0x4c]
movzx r8d, byte [rbp + 0x4b]
jmp 0x180047ac0
movdqa xmm0, xmmword [0x180133960]
mov r8b, 0xa
mov byte [rbp + rax + 0x43], bl
mov r9b, 0xd1
movdqu xmmword [rbp - 5], xmm0
mov dword [rbp - 9], 0x11
mov edx, ebx
mov dword [rbp + 0xb], 0xd10adb34
mov eax, edx
lea rcx, [rbp - 5]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 9]
cmp edx, eax
jae 0x180047b39
movzx r9d, byte [rbp + 0xe]
movzx r8d, byte [rbp + 0xd]
jmp 0x180047b10
mov rcx, qword [0x180148970]
lea r9, [rbp - 5]
xor r8d, r8d
mov byte [rbp + rax - 5], bl
lea rdx, [rbp + 0x43]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x15], 0x4f32342d
mov r8b, 0xa
test eax, eax
mov dword [rbp - 0x11], 0xdb2e4936
mov eax, edi
mov r9b, 0xd1
setne byte [0x180148692]
mov dword [rbp - 0x19], eax
mov dword [rbp - 0xd], 0xd10a
mov edx, ebx
mov eax, edx
lea rcx, [rbp - 0x15]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x19]
cmp edx, eax
jae 0x180047ba9
movzx r9d, byte [rbp - 0xc]
movzx r8d, byte [rbp - 0xd]
jmp 0x180047b80
movdqa xmm0, xmmword [0x180133960]
mov r8b, 0xa
mov byte [rbp + rax - 0x15], bl
mov r9b, 0xd1
movdqu xmmword [rbp + 0x13], xmm0
mov dword [rbp + 0xf], 0x11
mov edx, ebx
mov dword [rbp + 0x23], 0xd10adb34
mov eax, edx
lea rcx, [rbp + 0x13]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp + 0xf]
cmp edx, eax
jae 0x180047bf9
movzx r9d, byte [rbp + 0x26]
movzx r8d, byte [rbp + 0x25]
jmp 0x180047bd0
mov rcx, qword [0x180148970]
lea r9, [rbp + 0x13]
xor r8d, r8d
mov byte [rbp + rax + 0x13], bl
lea rdx, [rbp - 0x15]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp + 0x43], 0x4f32342d
mov r8b, 0xa
test eax, eax
mov dword [rbp + 0x47], 0xdb204936
mov eax, edi
mov r9b, 0xd1
setne byte [0x1801486a1]
mov dword [rbp + 0x3f], eax
mov dword [rbp + 0x4b], 0xd10a
mov edx, ebx
mov eax, edx
lea rcx, [rbp + 0x43]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp + 0x3f]
cmp edx, eax
jae 0x180047c69
movzx r9d, byte [rbp + 0x4c]
movzx r8d, byte [rbp + 0x4b]
jmp 0x180047c40
movdqa xmm0, xmmword [0x180133960]
mov r8b, 0xa
mov byte [rbp + rax + 0x43], bl
mov r9b, 0xd1
movdqu xmmword [rbp + 0x2b], xmm0
mov dword [rbp + 0x27], 0x11
mov edx, ebx
mov dword [rbp + 0x3b], 0xd10adb34
mov eax, edx
lea rcx, [rbp + 0x2b]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp + 0x27]
cmp edx, eax
jae 0x180047cb9
movzx r9d, byte [rbp + 0x3e]
movzx r8d, byte [rbp + 0x3d]
jmp 0x180047c90
mov rcx, qword [0x180148970]
lea r9, [rbp + 0x2b]
xor r8d, r8d
mov byte [rbp + rax + 0x2b], bl
lea rdx, [rbp + 0x43]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 5], 0x4f32342d
mov r8b, 0xa
test eax, eax
mov dword [rbp - 1], 0x37204936
mov eax, 0xb
mov r9b, 0xd1
setne byte [0x1801486a2]
mov dword [rbp - 9], eax
mov dword [rbp + 3], 0xdb403534
mov edx, ebx
mov dword [rbp + 7], 0xd10a
test eax, eax
je 0x180047d39
nop
mov eax, edx
lea rcx, [rbp - 5]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 9]
cmp edx, eax
jae 0x180047d39
movzx r9d, byte [rbp + 8]
movzx r8d, byte [rbp + 7]
jmp 0x180047d10
movdqa xmm0, xmmword [0x180133960]
mov r8b, 0xa
mov byte [rbp + rax - 5], bl
mov r9b, 0xd1
movdqu xmmword [rbp + 0x13], xmm0
mov dword [rbp + 0xf], 0x11
mov edx, ebx
mov dword [rbp + 0x23], 0xd10adb34
mov eax, edx
lea rcx, [rbp + 0x13]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp + 0xf]
cmp edx, eax
jae 0x180047d89
movzx r9d, byte [rbp + 0x26]
movzx r8d, byte [rbp + 0x25]
jmp 0x180047d60
mov rcx, qword [0x180148970]
lea r9, [rbp + 0x13]
xor r8d, r8d
mov byte [rbp + rax + 0x13], bl
lea rdx, [rbp - 5]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x19], edi
mov r8b, 0xa
test eax, eax
mov dword [rbp - 0x15], 0x4f32342d
mov dword [rbp - 0x11], 0xdb294936
mov r9b, 0xd1
setne byte [0x1801486a0]
mov dword [rbp - 0xd], 0xd10a
mov edx, ebx
nop
mov eax, edx
lea rcx, [rbp - 0x15]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov edi, dword [rbp - 0x19]
cmp edx, edi
jae 0x180047df9
movzx r9d, byte [rbp - 0xc]
movzx r8d, byte [rbp - 0xd]
jmp 0x180047dd0
movdqa xmm0, xmmword [0x180133960]
mov dl, 0xa
mov byte [rbp + rdi - 0x15], bl
mov r8b, 0xd1
movdqu xmmword [rbp + 0x2b], xmm0
mov dword [rbp + 0x27], 0x11
mov dword [rbp + 0x3b], 0xd10adb34
nop dword [rax]
mov eax, ebx
lea rcx, [rbp + 0x2b]
add rcx, rax
inc ebx
movzx eax, byte [rcx]
sub al, r8b
xor al, dl
mov byte [rcx], al
mov eax, dword [rbp + 0x27]
cmp ebx, eax
jae 0x180047e47
movzx r8d, byte [rbp + 0x3e]
movzx edx, byte [rbp + 0x3d]
jmp 0x180047e20
mov rcx, qword [0x180148970]
lea r9, [rbp + 0x2b]
xor r8d, r8d
mov byte [rbp + rax + 0x2b], 0
lea rdx, [rbp - 0x15]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov rdx, qword [0x180148cd8]
test eax, eax
lea rax, [0x180047250]
setne byte [0x180148693]
mov qword [rbp + 0x3f], rax
cmp rdx, qword [0x180148ce0]
je 0x180047e95
mov qword [rdx], rax
add qword [0x180148cd8], 8
jmp 0x180047ea5
lea r8, [rbp + 0x3f]
lea rcx, [0x180148cd0]
call fcn.180002710
mov rdx, qword [0x180148e88]
lea rbx, [0x180046000]
cmp rdx, qword [0x180148e90]
mov qword [rbp + 0x3f], rbx
je 0x180047ecd
mov qword [rdx], rbx
add qword [0x180148e88], 8
jmp 0x180047edd
lea r8, [rbp + 0x3f]
lea rcx, [0x180148e80]
call fcn.180002710
mov rdx, qword [0x180148ed0]
cmp rdx, qword [0x180148ed8]
mov qword [rbp + 0x3f], rbx
je 0x180047efe
mov qword [rdx], rbx
add qword [0x180148ed0], 8
jmp 0x180047f0e
lea r8, [rbp + 0x3f]
lea rcx, [0x180148ec8]
call fcn.180002710
mov rdx, qword [0x180148e40]
cmp rdx, qword [0x180148e48]
mov qword [rbp + 0x3f], rbx
je 0x180047f2f
mov qword [rdx], rbx
add qword [0x180148e40], 8
jmp 0x180047f3f
lea r8, [rbp + 0x3f]
lea rcx, [0x180148e38]
call fcn.180002710
mov rdx, qword [0x180148e28]
lea rax, [0x180046cc0]
cmp rdx, qword [0x180148e30]
mov qword [rbp + 0x3f], rax
je 0x180047f67
mov qword [rdx], rax
add qword [0x180148e28], 8
jmp 0x180047f77
lea r8, [rbp + 0x3f]
lea rcx, [0x180148e20]
call fcn.180002710
mov rcx, qword [rbp + 0x4f]
xor rcx, rsp
call fcn.180123e40
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret