Function at 0x140005900
Capabilities:
Read .ini file

Disassembly:
mov qword [rsp + 0x10], rdi
push rbp
lea rbp, [rsp - 0x680]
sub rsp, 0x780
mov rax, qword [0x140035040]
xor rax, rsp
mov qword [rbp + 0x670], rax
mov rax, qword gs:[0x58]
xor edi, edi
mov ecx, 4
mov rax, qword [rax]
mov eax, dword [rcx + rax]
cmp dword [0x14003878c], eax
jle 0x1400059b1
lea rcx, [0x14003878c]
call fcn.14000c250
cmp dword [0x14003878c], 0xffffffff
jne 0x1400059b1
xorps xmm0, xmm0
lea rax, vtable.critical_section.0
xorps xmm1, xmm1
mov qword [0x140038790], rax
lea rcx, [0x140038798]
movdqu xmmword [0x140038798], xmm0
movdqu xmmword [0x1400387a8], xmm1
movdqu xmmword [0x1400387b8], xmm0
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [0x140025d70]
mov qword [0x1400387c0], rdi
call fcn.14000c4f0
lea rcx, [0x14003878c]
call fcn.14000c1e4
lea rcx, [0x140038798]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp qword [0x1400387c0], rdi
jne 0x140005c01
mov r8d, 0x104
lea rdx, [rbp + 0x460]
call fcn.140001310
lea r8, str.ProgDVB.ini
mov edx, 0x104
lea rcx, [rbp + 0x460]
call fcn.140011e88
lea rax, [rbp + 0x390]
mov dword [rsp + 0x28], 0x64
lea r9, [0x14002ecf0]
mov qword [rsp + 0x20], rax
lea r8, [0x14002f618]
lea rdx, [0x14002f620]
lea rcx, [rbp + 0x460]
call fcn.140005de0
cmp word [rbp + 0x390], di
jne 0x140005a8d
mov r8d, 0x104
lea rdx, [rsp + 0x30]
call fcn.140001310
lea r8, str.ProgDVBEngine.ini
mov edx, 0x104
lea rcx, [rsp + 0x30]
call fcn.140011e88
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea r9, [rbp + 0x390]
lea r8, str.English
mov dword [rsp + 0x20], 0x64
lea rdx, str.DefLoc
lea rcx, [0x14002f620]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov r8d, 0x105
lea rdx, [rbp + 0x180]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov edx, 0x5c
lea rcx, [rbp + 0x180]
call fcn.14000d260
test rax, rax
je 0x140005abc
mov word [rax + 2], di
lea r8, str.Localization_
mov qword [rsp + 0x790], rbx
mov edx, 0x105
lea rcx, [rbp + 0x180]
call fcn.140011e88
lea r8, [rbp + 0x390]
mov edx, 0x105
lea rcx, [rbp + 0x180]
call fcn.140011e88
lea r8, str..txt
mov edx, 0x105
lea rcx, [rbp + 0x180]
call fcn.140011e88
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x180]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x140005b47
mov ebx, dword [rsp + 0x30]
mov rcx, rax
shr ebx, 4
not bl
call qword [sym.imp.KERNEL32.dll_FindClose]
test bl, 1
je 0x140005b47
lea rdx, [rbp + 0x180]
call fcn.140005f80
mov r8d, 0x105
lea rdx, [rbp + 0x180]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov edx, 0x5c
lea rcx, [rbp + 0x180]
call fcn.14000d260
test rax, rax
je 0x140005b76
mov word [rax + 2], di
lea r8, str.LocalizationProgDVB_
mov edx, 0x105
lea rcx, [rbp + 0x180]
call fcn.140011e88
lea r8, [rbp + 0x390]
mov edx, 0x105
lea rcx, [rbp + 0x180]
call fcn.140011e88
lea r8, str..txt
mov edx, 0x105
lea rcx, [rbp + 0x180]
call fcn.140011e88
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x180]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x140005bf9
mov ebx, dword [rsp + 0x30]
mov rcx, rax
shr ebx, 4
not bl
call qword [sym.imp.KERNEL32.dll_FindClose]
test bl, 1
je 0x140005bf9
lea rdx, [rbp + 0x180]
call fcn.140005f80
mov rbx, qword [rsp + 0x790]
lea rcx, [0x140038798]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rax, [0x140038790]
mov rcx, qword [rbp + 0x670]
xor rcx, rsp
call fcn.14000bfd0
mov rdi, qword [rsp + 0x798]
add rsp, 0x780
pop rbp
ret