Function at 0x14004dc10
Capabilities:
Read .ini file

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0x50
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x80], rbx
mov r12, rcx
xor r8d, r8d
lea rdx, str.CBaseFuncMgr::FN_InitializeForShowReadme
lea rcx, [rsp + 0x38]
call fcn.1400075a0
nop
call fcn.140102a14
mov rcx, rax
xor r13d, r13d
mov edx, r13d
test rax, rax
setne dl
test edx, edx
jne 0x14004dc68
mov ecx, 0x80004005
call fcn.140005210
int3
mov rax, qword [rax]
call qword [rax + 0x18]
lea rdi, [rax + 0x18]
mov qword [rsp + 0x88], rdi
call fcn.140102a14
mov r11, rax
mov ecx, r13d
test rax, rax
setne cl
test ecx, ecx
jne 0x14004dc9a
mov ecx, 0x80004005
call fcn.140005210
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x90], rbx
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x48]
mov rsi, rax
mov ebp, 1
mov edx, ebp
sub edx, dword [rdi - 8]
mov ecx, dword [rdi - 0xc]
sub ecx, 0x400
or ecx, edx
jge 0x14004dcf0
mov edx, 0x400
lea rcx, [rsp + 0x88]
call fcn.140005e40
mov rdi, qword [rsp + 0x88]
mov rax, qword [rsi]
mov r8, rdi
lea rdx, str.SOURCEDIR
mov rcx, rsi
call qword [rax + 0x18]
movsxd rdx, dword [rdi - 0xc]
mov rcx, rdi
call fcn.14024718c
test eax, eax
js 0x14004df99
cmp eax, dword [rdi - 0xc]
jg 0x14004df99
mov dword [rdi - 0x10], eax
cdqe
mov word [rdi + rax*2], r13w
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x48]
mov r9, qword [rax]
mov r8, rdi
lea rdx, str.TEMPPATH
mov rcx, rax
call qword [r9 + 0x20]
mov r8d, 0xa
lea rdx, str.InsDrv.ini
lea rcx, [rsp + 0x88]
call fcn.140005f90
mov ecx, ebp
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, 0x400
or eax, ecx
jge 0x14004dd90
mov edx, 0x400
lea rcx, [rsp + 0x90]
call fcn.140005e40
mov rbx, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x88]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x400
mov r9, rbx
lea r8, [0x1402dc4e0]
lea rdx, str.PDL_TYPE
lea rcx, str.Installer_Info
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
movsxd rdx, dword [rbx - 0xc]
mov rcx, rbx
call fcn.14024718c
test eax, eax
js 0x14004df8e
cmp eax, dword [rbx - 0xc]
jg 0x14004df8e
mov dword [rbx - 0x10], eax
cdqe
mov word [rbx + rax*2], r13w
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x48]
mov r9, qword [rax]
mov r8, rbx
lea rdx, str.PDL_TYPE
mov rcx, rax
call qword [r9 + 0x20]
mov ecx, ebp
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, 0x400
or eax, ecx
jge 0x14004de36
mov edx, 0x400
lea rcx, [rsp + 0x90]
call fcn.140005e40
mov rbx, qword [rsp + 0x90]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0x400
mov r9, rbx
lea r8, [0x1402dc4e0]
lea rdx, str.SupportPDL
lea rcx, str.SupportPDL
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
movsxd rdx, dword [rbx - 0xc]
mov rcx, rbx
call fcn.14024718c
test eax, eax
js 0x14004df83
cmp eax, dword [rbx - 0xc]
jg 0x14004df83
mov dword [rbx - 0x10], eax
cdqe
mov word [rbx + rax*2], r13w
mov rcx, qword [0x1403b9750]
mov rax, qword [rcx]
call qword [rax + 0x48]
mov r9, qword [rax]
mov r8, rbx
lea rdx, str.SupportPDL
mov rcx, rax
call qword [r9 + 0x20]
mov r11, qword [r12]
mov rcx, r12
call qword [r11 + 0x20]
mov rsi, rax
sub ebp, dword [rdi - 8]
mov ecx, dword [rdi - 0xc]
sub ecx, 0x400
or ecx, ebp
jge 0x14004dee1
mov edx, 0x400
lea rcx, [rsp + 0x88]
call fcn.140005e40
mov rdi, qword [rsp + 0x88]
mov rax, qword [rsi]
mov rdx, rdi
mov rcx, rsi
call qword [rax + 0x198]
mov esi, eax
movsxd rdx, dword [rdi - 0xc]
mov rcx, rdi
call fcn.14024718c
test eax, eax
js 0x14004df78
cmp eax, dword [rdi - 0xc]
jg 0x14004df78
mov dword [rdi - 0x10], eax
cdqe
mov word [rdi + rax*2], r13w
mov r9d, esi
lea r8, str.return__08x
mov edx, 2
lea rcx, [rsp + 0x38]
call fcn.140007780
nop
lea rdx, [rbx - 0x18]
or ebx, 0xffffffff
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x14004df49
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x88]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebx
dec ebx
test ebx, ebx
jg 0x14004df6a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x38]
call fcn.140007730
mov eax, esi
jmp 0x14004dfa4
mov ecx, 0x80070057
call fcn.140005210
int3
mov ecx, 0x80070057
call fcn.140005210
int3
mov ecx, 0x80070057
call fcn.140005210
int3
mov ecx, 0x80070057
call fcn.140005210
nop
mov rbx, qword [rsp + 0x80]
add rsp, 0x50
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret