Function at 0x4537bc
Capabilities:
Read .ini file

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x8a8
mov rax, qword [0x004bf230]
xor rax, rsp
mov qword [rsp + 0x890], rax
mov r14, qword [rsp + 0x918]
mov r13d, dword [rsp + 0x910]
mov rbx, r9
mov qword [rsp + 0x28], r14
mov rsi, r8
mov r12, rdx
mov dword [rsp + 0x20], r13d
mov rbp, rcx
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
xor edi, edi
mov r11d, eax
mov edx, edi
lea r9d, [rdi + 1]
cmp rsi, rdi
je 0x453845
mov rdi, rsi
mov rax, rbx
sub rdi, rbx
movzx r8d, word [rax]
movzx ecx, word [rax + rdi]
sub r8d, ecx
jne 0x45383c
add rax, 2
test ecx, ecx
jne 0x453827
xor edi, edi
cmp r8d, edi
cmove edx, r9d
cmp r11d, edi
je 0x453868
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rbx
repne scasw ax, word [rdi]
xor edi, edi
not rcx
cmp rcx, r9
je 0x453868
cmp edx, edi
je 0x453b0e
mov r15d, 0x208
lea rcx, [rsp + 0x262]
xor edx, edx
mov r8, r15
mov word [rsp + 0x260], di
call fcn.00449860
lea rcx, [rsp + 0x472]
mov r8, r15
xor edx, edx
mov word [rsp + 0x470], di
call fcn.00449860
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rdi
mov edi, 0x105
lea r9, [rsp + 0x470]
lea rdx, [rsp + 0x260]
mov rcx, r14
mov r8, rdi
mov qword [rsp + 0x20], rdi
call fcn.0044504c
lea r8, [rsp + 0x470]
lea rcx, [rsp + 0x260]
mov rdx, rdi
call fcn.00444f54
lea r8, str..LocData
lea rcx, [rsp + 0x260]
mov rdx, rdi
call fcn.00444f54
call fcn.00475244
lea rcx, [rsp + 0x52]
xor r14d, r14d
mov r8, r15
xor edx, edx
movzx edi, ax
mov word [rsp + 0x50], r14w
call fcn.00449860
lea rcx, [rsp + 0x682]
mov r8, r15
xor edx, edx
mov word [rsp + 0x680], r14w
call fcn.00449860
mov ecx, edi
mov edi, 0x105
lea r9d, [r14 + 0xa]
lea rdx, [rsp + 0x680]
mov r8, rdi
call fcn.00445bf0
lea r8, [rsp + 0x260]
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.004444bc
lea r8, [0x0049e5ac]
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.00444f54
lea r8, [rsp + 0x680]
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.00444f54
lea r8, str..ini
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.00444f54
lea rdx, [rsp + 0x50]
mov r9, rbx
mov qword [rsp + 0x28], rdx
mov r8, rsi
mov rcx, rbp
mov rdx, r12
mov dword [rsp + 0x20], r13d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov edx, r14d
mov r11d, eax
cmp rsi, r14
je 0x453a0b
mov rdi, rsi
mov rax, rbx
sub rdi, rbx
movzx r8d, word [rax]
movzx ecx, word [rax + rdi]
sub r8d, ecx
jne 0x4539fc
add rax, 2
test ecx, ecx
jne 0x4539e7
cmp r8d, r14d
mov r15d, 1
cmove edx, r15d
jmp 0x453a11
mov r15d, 1
cmp r11d, r14d
je 0x453a33
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
cmp rcx, r15
je 0x453a33
cmp edx, r14d
je 0x453b0e
mov edi, 0x105
lea r8, [rsp + 0x260]
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.004444bc
lea r8, str..1033.ini
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.00444f54
lea rdx, [rsp + 0x50]
mov r9, rbx
mov qword [rsp + 0x28], rdx
mov r8, rsi
mov rcx, rbp
mov rdx, r12
mov dword [rsp + 0x20], r13d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov r9d, r14d
mov r11d, eax
cmp rsi, r14
je 0x453ab0
mov rdx, rsi
mov rax, rbx
sub rdx, rbx
movzx edi, word [rax]
movzx ecx, word [rax + rdx]
sub edi, ecx
jne 0x453aa9
add rax, 2
test ecx, ecx
jne 0x453a96
cmp edi, r14d
cmove r9d, r15d
cmp r11d, r14d
je 0x453ace
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
cmp rcx, r15
je 0x453ace
cmp r9d, r14d
je 0x453b0e
lea r8, str..ini
lea rcx, [rsp + 0x260]
mov edx, 0x105
call fcn.00444f54
lea rcx, [rsp + 0x260]
mov r9, rbx
mov qword [rsp + 0x28], rcx
mov r8, rsi
mov rdx, r12
mov rcx, rbp
mov dword [rsp + 0x20], r13d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov r11d, eax
mov eax, r11d
mov rcx, qword [rsp + 0x890]
xor rcx, rsp
call fcn.00443d60
add rsp, 0x8a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret