Function at 0x1400776a0
Capabilities:
Read .ini file

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x5b0]
sub rsp, 0x6b0
mov rax, qword [0x1401f7280]
xor rax, rsp
mov qword [rbp + 0x5a0], rax
xor ebx, ebx
lea eax, [rdx - 0x12]
mov r14d, edx
mov r15, rcx
mov esi, 1
mov word [rbp + 0x30], bx
cmp eax, 0x5c
ja case.0x14007770c.19
lea rdi, [0x140000000]
cdqe
movzx eax, byte [rdi + rax + 0x77b28]
mov ecx, dword [rdi + rax*4 + 0x77afc]
add rcx, rdi
jmp rcx
mov rcx, rbx
movzx eax, word [rcx + rdi + 0x1892f8]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x140077711
movzx eax, word [0x140189560]
movsd xmm0, qword [0x140189558]
mov word [rsp + 0x28], ax
jmp 0x140077965
mov rcx, rbx
movzx eax, word [rcx + rdi + 0x1892f8]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x140077743
movzx eax, byte [0x140189570]
movsd xmm0, qword [0x140189568]
mov esi, ebx
mov byte [rsp + 0x28], al
jmp 0x140077965
mov rcx, rbx
nop word [rax + rax]
movzx eax, word [rcx + rdi + 0x189490]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x140077780
movabs rax, 0x5343496e616353
mov esi, ebx
mov qword [rsp + 0x20], rax
jmp case.0x14007770c.19
mov rcx, rbx
nop
movzx eax, word [rcx + rdi + 0x189460]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x1400777b0
movzx eax, word [0x140189580]
movsd xmm0, qword [0x140189578]
mov word [rsp + 0x28], ax
jmp 0x140077965
mov rcx, rbx
movzx eax, word [rcx + rdi + 0x1891e0]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x1400777e2
movabs rax, 0x4342576e616353
mov esi, ebx
mov qword [rsp + 0x20], rax
jmp case.0x14007770c.19
mov rcx, rbx
movzx eax, word [rcx + rdi + 0x1894a8]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x140077811
lea r9, [0x140208860]
lea rdx, str.YqE_
lea rcx, [0x140183078]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
test eax, eax
je 0x140077866
mov rcx, rbx
nop dword [rax]
movzx eax, word [rcx + rdi + 0x189500]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x140077850
movzx eax, word [0x140189590]
movsd xmm0, qword [0x140189588]
mov word [rsp + 0x28], ax
jmp 0x140077965
mov rcx, rbx
movzx eax, word [rcx + rdi + 0x1892f8]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x140077882
movzx eax, word [0x1401895a0]
movsd xmm0, qword [0x140189598]
mov word [rsp + 0x28], ax
movzx eax, byte [0x1401895a2]
jmp 0x140077961
mov rcx, rbx
nop dword [rax + rax]
movzx eax, word [rcx + rdi + 0x1892f8]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x1400778c0
movzx eax, word [0x1401895b0]
movsd xmm0, qword [0x1401895a8]
mov word [rsp + 0x28], ax
jmp 0x140077965
mov rcx, rbx
nop
movzx eax, word [rcx + rdi + 0x189350]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x1400778f0
mov eax, dword [str.Yq3p]
movups xmm0, xmmword [0x1401895b8]
mov dword [rsp + 0x30], eax
movzx eax, byte [0x1401895cc]
mov byte [rsp + 0x34], al
movaps xmmword [rsp + 0x20], xmm0
jmp case.0x14007770c.19
mov rcx, rbx
nop dword [rax]
movzx eax, word [rcx + rdi + 0x1893e0]
lea rcx, [rcx + 2]
mov word [rbp + rcx + 0x2e], ax
test ax, ax
jne 0x140077930
movzx eax, word [0x1401895d8]
movsd xmm0, qword [0x1401895d0]
mov word [rsp + 0x28], ax
movzx eax, byte [0x1401895da]
mov byte [rsp + 0x2a], al
movsd qword [rsp + 0x20], xmm0
lea rcx, [rbp + 0x350]
mov edx, 1
call fcn.1400ebbc0
lea r9, [0x140208860]
lea rdx, [rbp + 0x30]
lea rcx, [0x140189138]
mov r8d, 0x63
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
cmp eax, 0x63
jne 0x1400779cd
lea rcx, [rbp + 0x30]
call fcn.140074b30
test eax, eax
je 0x140077a0e
lea r9, [0x140208860]
lea r8, [0x140185e18]
lea rdx, [rbp + 0x30]
lea rcx, [0x140189138]
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
jmp 0x1400779d2
cmp eax, 1
jne 0x140077a0e
lea rcx, [rbp + 0x350]
sub rcx, 2
nop dword [rax]
cmp word [rcx + 2], bx
lea rcx, [rcx + 2]
jne 0x1400779e0
movups xmm0, xmmword [str.0ZQ]
movsd xmm1, qword [0x140189170]
movzx eax, word [0x140189178]
movups xmmword [rcx], xmm0
movsd qword [rcx + 0x10], xmm1
mov word [rcx + 0x18], ax
jmp 0x140077a43
lea rcx, [rbp + 0x350]
sub rcx, 2
nop dword [rax]
cmp word [rcx + 2], bx
lea rcx, [rcx + 2]
jne 0x140077a20
lea r8, [rbp + 0x30]
xor edx, edx
movzx eax, word [r8 + rdx*2]
lea rdx, [rdx + 1]
mov word [rcx + rdx*2 - 2], ax
test ax, ax
jne 0x140077a30
lea rcx, [rbp + 0x350]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rdi, rax
test rax, rax
jne 0x140077a61
cmp r14d, 0x19
setne bl
jmp 0x140077acb
lea rdx, [rsp + 0x20]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, 1
jne 0x140077a80
test rax, rax
je 0x140077a88
mov rcx, r15
call rax
jmp 0x140077aba
mov rbx, rax
test rax, rax
jne 0x140077aa2
cmp r14d, 0x19
jne 0x140077a92
xor eax, eax
jmp 0x140077acd
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, 1
jmp 0x140077acd
lea rdx, [rbp + 0x240]
mov rcx, r15
call fcn.140074980
lea rcx, [rbp + 0x240]
call rbx
mov ebx, eax
cmp r14d, 0x19
je 0x140077acb
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, ebx
mov rcx, qword [rbp + 0x5a0]
xor rcx, rsp
call fcn.1400f9a80
lea r11, [rsp + 0x6b0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret