Function at 0x44f9d0
Capabilities:
Read .ini file

Disassembly:
mov qword [rsp + 0x20], r9
sub rsp, 0x7d8
mov qword [rsp + 0x7d0], rbx
mov qword [rsp + 0x7c8], rbp
mov qword [rsp + 0x7c0], rsi
mov qword [rsp + 0x7b8], rdi
mov qword [rsp + 0x7b0], r12
mov qword [rsp + 0x7a8], r13
mov qword [rsp + 0x7a0], r14
mov qword [rsp + 0x798], r15
mov rcx, r8
mov qword [rsp + 0x98], 0xfffffffffffffffe
xor esi, esi
mov r14d, esi
mov r9, rdx
mov r8d, 0x3e8
lea rdx, [rsp + 0x3a0]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionA]
mov dword [rsp + 0x88], eax
test eax, eax
jle 0x4502bb
mov rbp, rsi
mov qword [rsp + 0x70], rsi
mov rbx, rsi
mov qword [rsp + 0x80], rsi
mov r12, rsi
mov qword [rsp + 0x58], rsi
mov r15, rsi
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x50], rsi
cdqe
mov byte [rsp + rax + 0x3a0], sil
mov dword [rsp + 0x24], esi
mov rcx, rsi
mov qword [rsp + 0x90], rsi
mov rsi, qword [rsp + 0x78]
nop
nop
movzx eax, byte [rsp + rcx + 0x3a0]
test al, al
je 0x44fbbe
mov byte [rsp + 0x20], al
mov byte [rsp + 0x21], 0
lea rcx, [rbx + 5]
call fcn.00486ab0
mov r13, rax
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.00499630
mov r8, rbx
mov rdx, rbp
mov rcx, r13
call fcn.00487090
mov byte [rbx + r13], 0
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x20]
repne scasb al, byte [rdi]
not rcx
lea r12, [rbx + rcx - 1]
cmp r12, rbx
jbe 0x44fb69
test rbp, rbp
je 0x44fb27
mov rcx, rbp
call fcn.0049bb84
mov rcx, rsi
call fcn.0049bb84
lea rcx, [r12 + 5]
call fcn.00486ab0
mov rbp, rax
mov qword [rsp + 0x70], rax
lea r8, [r12 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [r12 + 5]
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x78], rax
lea r8, [r12 + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
mov rbx, r12
mov qword [rsp + 0x80], r12
mov rcx, r13
mov rdx, rbp
sub rdx, r13
nop
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
inc rcx
test al, al
jne 0x44fb80
mov rdi, rbp
xor eax, eax
mov rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x20]
xor ecx, ecx
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
inc rcx
test al, al
jne 0x44fba2
mov rcx, r13
call fcn.0049bb84
jmp 0x450214
lea rdx, [0x004b3a10]
mov rcx, rbp
call fcn.00486ac0
mov r13, rax
test rax, rax
je 0x4501fe
sub r13d, ebp
cmp r13d, 0xffffffff
je 0x4501fe
movsxd rdi, r13d
cmp rdi, rbx
jae 0x44fc10
lea r8, [rbx + 5]
xor edx, edx
mov rcx, rsi
call fcn.00499630
mov r8, rdi
mov rdx, rbp
mov rcx, rsi
call fcn.00487090
mov byte [rsi + rdi], 0
jmp 0x44fc13
mov rsi, rbp
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasb al, byte [rdi]
not rcx
dec rcx
mov rbp, rcx
je 0x44fca6
cmp rcx, r15
jbe 0x44fc8c
test r12, r12
je 0x44fc4c
mov rcx, r12
call fcn.0049bb84
mov rcx, qword [rsp + 0x60]
call fcn.0049bb84
lea rcx, [rbp + 5]
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x58], rax
lea r8, [rbp + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [rbp + 5]
call fcn.00486ab0
mov rbx, rax
mov qword [rsp + 0x60], rax
lea r8, [rbp + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
jmp 0x44fc91
mov rbx, qword [rsp + 0x60]
mov rcx, r12
sub rcx, rsi
movzx eax, byte [rsi]
mov byte [rsi + rcx], al
inc rsi
test al, al
jne 0x44fc97
jmp 0x44fd0c
cmp r15, 1
jae 0x44fcfd
test r12, r12
je 0x44fcc3
mov rcx, r12
call fcn.0049bb84
mov rcx, qword [rsp + 0x60]
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov r12, rax
mov qword [rsp + 0x58], rax
xor eax, eax
mov dword [r12], eax
mov word [r12 + 4], ax
mov ecx, 6
call fcn.00486ab0
mov rbx, rax
mov qword [rsp + 0x60], rax
xor eax, eax
mov dword [rbx], eax
mov word [rbx + 4], ax
jmp 0x44fd02
mov rbx, qword [rsp + 0x60]
mov ebp, 1
mov byte [r12], 0
xor r15d, r15d
mov rsi, r15
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, r12
repne scasb al, byte [rdi]
not rcx
dec rcx
je 0x44fd45
nop
nop
movzx eax, byte [rsi + r12]
cmp al, 0x20
je 0x44fd3d
cmp al, 9
jne 0x44fd45
inc rsi
cmp rsi, rcx
jb 0x44fd30
lea r8, [rbp + 5]
xor edx, edx
mov rcx, rbx
call fcn.00499630
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, r12
repne scasb al, byte [rdi]
not rcx
dec rcx
sub rcx, rsi
lea rdx, [rsi + r12]
mov r8, rcx
mov rcx, rbx
call fcn.00487090
mov rcx, r12
sub rcx, rbx
nop
movzx eax, byte [rbx]
mov byte [rbx + rcx], al
inc rbx
test al, al
jne 0x44fd80
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, r12
repne scasb al, byte [rdi]
not rcx
dec rcx
mov qword [rsp + 0x68], rcx
lea rcx, [rsp + 0x58]
call fcn.00424400
mov r12, qword [rsp + 0x58]
mov rcx, r12
lea rdx, [rsp + 0x1a0]
sub rdx, r12
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
inc rcx
test al, al
jne 0x44fdc3
lea rcx, [rsp + 0x1a0]
call fcn.0044a080
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x1a0]
repne scasb al, byte [rdi]
not rcx
dec rcx
mov rbx, rcx
je 0x44fe8f
cmp rcx, qword [rsp + 0x38]
jbe 0x44fe5f
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x44fe22
mov rcx, rax
call fcn.0049bb84
mov rcx, qword [rsp + 0x30]
call fcn.0049bb84
lea rcx, [rbx + 5]
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x28], rax
lea r8, [rbx + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [rbx + 5]
call fcn.00486ab0
mov qword [rsp + 0x30], rax
lea r8, [rbx + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
jmp 0x44fe64
mov r14, qword [rsp + 0x28]
mov qword [rsp + 0x38], rbx
lea rcx, [rsp + 0x1a0]
lea rax, [rsp + 0x1a0]
mov rdx, r14
sub rdx, rax
nop
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
inc rcx
test al, al
jne 0x44fe80
jmp 0x44fef9
cmp qword [rsp + 0x38], 1
jae 0x44fee8
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x44feb3
mov rcx, rax
call fcn.0049bb84
mov rcx, qword [rsp + 0x30]
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov r14, rax
mov qword [rsp + 0x28], rax
xor eax, eax
mov dword [r14], eax
mov word [r14 + 4], ax
mov ecx, 6
call fcn.00486ab0
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov dword [rax], ecx
mov word [rax + 4], cx
jmp 0x44feed
mov r14, qword [rsp + 0x28]
mov qword [rsp + 0x38], 1
mov byte [r14], r15b
lea r8d, [r13 + 1]
xor edx, edx
lea rcx, [rsp + 0x70]
call fcn.00424510
mov rbx, r15
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rbp, qword [rsp + 0x70]
mov rdi, rbp
repne scasb al, byte [rdi]
not rcx
dec rcx
je 0x44ff3b
movzx eax, byte [rbx + rbp]
cmp al, 0x20
je 0x44ff33
cmp al, 9
jne 0x44ff3b
inc rbx
cmp rbx, rcx
jb 0x44ff27
mov r8, qword [rsp + 0x80]
add r8, 5
xor edx, edx
mov rsi, qword [rsp + 0x78]
mov rcx, rsi
call fcn.00499630
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbp
repne scasb al, byte [rdi]
not rcx
dec rcx
sub rcx, rbx
lea rdx, [rbx + rbp]
mov r8, rcx
mov rcx, rsi
call fcn.00487090
mov rcx, rbp
sub rcx, rsi
movzx eax, byte [rsi]
mov byte [rsi + rcx], al
inc rsi
test al, al
jne 0x44ff82
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rbp
repne scasb al, byte [rdi]
not rcx
dec rcx
mov qword [rsp + 0x80], rcx
lea rcx, [rsp + 0x70]
call fcn.00424400
mov rbp, qword [rsp + 0x70]
mov rcx, rbp
lea rdx, [rsp + 0x1a0]
sub rdx, rbp
nop
nop
movzx eax, byte [rcx]
mov byte [rdx + rcx], al
inc rcx
test al, al
jne 0x44ffd0
lea rcx, [rsp + 0x1a0]
call fcn.0044a080
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x1a0]
repne scasb al, byte [rdi]
not rcx
dec rcx
mov rbx, rcx
je 0x45009f
cmp rcx, qword [rsp + 0x50]
jbe 0x45006c
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x45002f
mov rcx, rax
call fcn.0049bb84
mov rcx, qword [rsp + 0x48]
call fcn.0049bb84
lea rcx, [rbx + 5]
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x40], rax
lea r8, [rbx + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
lea rcx, [rbx + 5]
call fcn.00486ab0
mov qword [rsp + 0x48], rax
lea r8, [rbx + 5]
xor edx, edx
mov rcx, rax
call fcn.00499630
jmp 0x450071
mov rsi, qword [rsp + 0x40]
mov qword [rsp + 0x50], rbx
lea rcx, [rsp + 0x1a0]
lea rax, [rsp + 0x1a0]
mov rdx, rsi
sub rdx, rax
nop
movzx eax, byte [rcx]
mov byte [rcx + rdx], al
inc rcx
test al, al
jne 0x450090
jmp 0x450107
cmp qword [rsp + 0x50], 1
jae 0x4500f6
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x4500c3
mov rcx, rax
call fcn.0049bb84
mov rcx, qword [rsp + 0x48]
call fcn.0049bb84
mov ecx, 6
call fcn.00486ab0
mov rsi, rax
mov qword [rsp + 0x40], rax
xor eax, eax
mov dword [rsi], eax
mov word [rsi + 4], ax
mov ecx, 6
call fcn.00486ab0
mov qword [rsp + 0x48], rax
xor ecx, ecx
mov dword [rax], ecx
mov word [rax + 4], cx
jmp 0x4500fb
mov rsi, qword [rsp + 0x40]
mov qword [rsp + 0x50], 1
mov byte [rsi], r15b
mov rbx, qword [rsp + 0x7f8]
mov rdi, qword [rbx]
cmp rdi, 0x1f4
jae 0x45017c
lea rax, [rdi + 1]
mov qword [rbx], rax
cmp rdi, 0xffffffffffffffff
je 0x45017c
mov ecx, 0x30
call fcn.0049bb48
test rax, rax
je 0x450148
mov qword [rax], r15
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r15
mov qword [rax + 0x28], r15
jmp 0x45014b
mov rax, r15
mov qword [rbx + rdi*8 + 0x200], rax
test r14, r14
je 0x450163
mov rdx, r14
mov rcx, rax
call fcn.00402030
test rsi, rsi
je 0x45017c
mov rcx, qword [rbx + rdi*8 + 0x200]
add rcx, 0x18
mov rdx, rsi
call fcn.00402030
call fcn.004545a0
test eax, eax
je 0x4501b1
mov r8, r12
lea rdx, str.INIData.ksParm0___s_n
lea rcx, [rsp + 0xa0]
call fcn.00486850
call fcn.004546e0
mov rcx, rax
lea rdx, [rsp + 0xa0]
call fcn.004548a0
call fcn.004545a0
test eax, eax
je 0x4501e6
mov r8, rbp
lea rdx, str.INIData.ksParm1___s_n
lea rcx, [rsp + 0xa0]
call fcn.00486850
call fcn.004546e0
mov rcx, rax
lea rdx, [rsp + 0xa0]
call fcn.004548a0
mov r14d, 1
mov rbx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
mov r15, qword [rsp + 0x68]
test rbp, rbp
je 0x450214
mov byte [rbp], 0
mov ebx, 1
mov qword [rsp + 0x80], rbx
mov edx, dword [rsp + 0x24]
mov eax, edx
inc edx
mov dword [rsp + 0x24], edx
mov rcx, qword [rsp + 0x90]
inc rcx
mov qword [rsp + 0x90], rcx
cmp eax, dword [rsp + 0x88]
mov r12, qword [rsp + 0x58]
jl 0x44fab0
mov rdi, qword [rsp + 0x40]
test rdi, rdi
je 0x450262
mov rcx, qword [rsp + 0x48]
call fcn.0049bb84
mov rcx, rdi
call fcn.0049bb84
nop
mov rdi, qword [rsp + 0x28]
test rdi, rdi
je 0x45027f
mov rcx, qword [rsp + 0x30]
call fcn.0049bb84
mov rcx, rdi
call fcn.0049bb84
nop
mov rdi, qword [rsp + 0x58]
test rdi, rdi
je 0x45029c
mov rcx, qword [rsp + 0x60]
call fcn.0049bb84
mov rcx, rdi
call fcn.0049bb84
nop
test rbp, rbp
je 0x4502b6
mov rcx, rsi
call fcn.0049bb84
mov rcx, rbp
call fcn.0049bb84
mov eax, r14d
jmp 0x4502be
mov eax, r14d
jmp 0x4502be
mov eax, r14d
mov rbx, qword [rsp + 0x7d0]
mov rbp, qword [rsp + 0x7c8]
mov rsi, qword [rsp + 0x7c0]
mov rdi, qword [rsp + 0x7b8]
mov r12, qword [rsp + 0x7b0]
mov r13, qword [rsp + 0x7a8]
mov r14, qword [rsp + 0x7a0]
mov r15, qword [rsp + 0x798]
add rsp, 0x7d8
ret