Function at 0x1800035c0
Capabilities:
Read .ini file
Set console window title
Terminate process

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r15
sub rsp, 0x30
cmp dword [rcx + 0x18], 0
mov rbx, rcx
jne 0x18000392d
call fcn.18004f228
mov r9d, eax
mov eax, 0x55555556
imul r9d
mov r8d, edx
shr r8d, 0x1f
add edx, r8d
lea ecx, [rdx + rdx*2]
sub r9d, ecx
mov ecx, 1
inc r9d
mov dword [rbx + 0x18], r9d
call fcn.1800493cc
mov edx, dword [rbx + 0x18]
mov r15, rax
sub edx, 1
je 0x180003907
sub edx, 1
je 0x180003649
cmp edx, 1
jne 0x180003920
mov edx, 0x3ec0
mov rcx, rax
call fcn.180005020
mov qword [rbx + 0x10], rax
jmp 0x180003920
mov qword [rsp + 0x50], r14
mov r9d, 0x11f
nop dword [rax]
nop dword [rax + rax]
inc r9d
mov eax, 0x55555556
imul r9d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp r9d, ecx
jne 0x180003660
mov r8d, 0xffff3234
mov r11d, r8d
mov eax, 0x55555556
inc r8d
imul r8d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp r8d, ecx
jne 0x180003680
mov r14d, 0x71d4
mov esi, 0xffffdbf8
sub r14d, r8d
sub esi, r8d
mov edi, r14d
mov r10d, 0xb50b
sub r10d, r9d
add edi, 0x3a165
add edi, r9d
mov eax, 0xffff93fc
sub eax, esi
sub r10d, edi
sub r14d, eax
add r10d, 0x21c
sub esi, 0x1cd0
mov eax, 0x55555556
imul r10d
add r14d, esi
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp r10d, ecx
je 0x18000371a
nop word [rax + rax]
inc r10d
mov eax, 0x55555556
imul r10d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp r10d, ecx
jne 0x180003700
lea eax, [r11 + rsi]
add edi, 0xfffff68f
lea r8d, [r10 - 0x3736]
add r8d, eax
lea edx, [r10 - 0x36c03]
test r8b, 1
je 0x180003749
nop dword [rax + rax]
inc r8d
test r8b, 1
jne 0x180003740
add r8d, 0x83e
sub edx, edi
sub edi, edx
mov r11d, 0xea2c
sub r11d, r8d
sub edx, edi
sub r11d, r10d
sub esi, edx
sub r8d, r11d
add edi, 0x3a178
sub r11d, 0x214c
mov r9d, r8d
add r8d, r11d
mov ebp, r11d
add r11d, 0x1870
mov eax, edx
lea r12d, [r8 + 0x2d0f]
add r12d, esi
and eax, 0x80000003
jge 0x18000379e
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
mov esi, 0xee2
lea eax, [rbp - 0x43]
mov ecx, 0xfffff11e
cmove ecx, esi
mov ebp, 0xfffffe9e
add eax, r14d
lea esi, [r10 - 0x775c3]
add r9d, eax
add ecx, edx
sub r9d, r8d
sub edi, ecx
add r11d, r12d
mov r10d, 0x37679
sub ebp, r11d
add r8d, r10d
lea r14d, [rcx - 0xf6]
sub edi, 0x43
sub r10d, r14d
add r11d, edi
mov eax, 0x55555556
sub ebp, r11d
imul r10d
add r9d, 0x1971
add esi, r14d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp r10d, ecx
je 0x18000382a
nop dword [rax]
inc r10d
mov eax, 0x55555556
imul r10d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea ecx, [rdx + rdx*2]
cmp r10d, ecx
jne 0x180003810
sub r8d, edi
lea ecx, [r9 + r14]
mov r14, qword [rsp + 0x50]
sub ebp, esi
sub r11d, 0x1a87
sub edi, ebp
sub r8d, r11d
mov eax, esi
and eax, 0x80000003
jge 0x180003854
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
je 0x180003864
test esi, esi
jle 0x180003864
sub esi, 0x1949
jmp 0x18000386a
add esi, 0x1949
sub r8d, ebp
sub ebp, 0x25df
mov eax, r8d
add r8d, ebp
test r9b, 1
je 0x180003889
nop
inc r9d
test r9b, 1
jne 0x180003880
add r11d, eax
test r9b, 1
je 0x18000389b
inc r9d
test r9b, 1
jne 0x180003892
cmp r11d, 0x1c0f84
jne 0x1800038fb
cmp r9d, 0x2fb88
jne 0x1800038fb
cmp ebp, 0xffafcfee
jne 0x1800038fb
cmp r12d, 0x19b71f
jne 0x1800038fb
cmp ecx, 0xffe5315a
jne 0x1800038fb
cmp esi, 0xffd6ad3e
jne 0x1800038fb
cmp edi, 0x82be23
jne 0x1800038fb
cmp r10d, 0x2140a7
jne 0x1800038fb
cmp r8d, 0xff75e593
jne 0x1800038fb
mov edx, 0x3ec0
mov rcx, r15
call fcn.180005020
mov qword [rbx + 8], rax
jmp 0x180003920
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov edx, 0x3ec0
mov rcx, r15
call fcn.180005020
mov qword [rbx], rax
nop word [rax + rax]
mov edx, 1
mov rcx, r15
call fcn.1800492e0
mov edx, dword [0x1800d8574]
xor edi, edi
cmp edx, 0x76d9df8
jne 0x1800039f8
mov word [rsp + 0x28], di
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], edi
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_EnumResourceNamesExW]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CheckTokenCapability]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_ShowWindow]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_AddSecureMemoryCacheCallback]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_OpenPrivateNamespaceW]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_SetSystemCursor]
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
xor ecx, ecx
call qword [sym.imp.USER32.dll_UnloadKeyboardLayout]
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetProfileStringW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
call qword [sym.imp.USER32.dll_GetCursor]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleW]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObjectEx]
xor eax, eax
lock cmpxchg dword [rdi], edi
xor ecx, ecx
call qword [sym.imp.USER32.dll_IsCharAlphaW]
mov edx, dword [0x1800d8574]
mov ecx, dword [rbx + 0x18]
sub ecx, 1
je 0x180003a16
sub ecx, 1
je 0x180003a10
cmp ecx, 1
jne 0x180003a19
mov rdi, qword [rbx + 0x10]
jmp 0x180003a19
mov rdi, qword [rbx + 8]
jmp 0x180003a19
mov rdi, qword [rbx]
cmp edx, 0x470452b1
jne 0x180003ac8
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_IsDialogMessageW]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetDynamicTimeZoneInformation]
xor ecx, ecx
call qword [sym.imp.USER32.dll_RemoveClipboardFormatListener]
xor r9d, r9d
lea rdx, str.2t35Ca88CZPzXO8q1DeC5l1Mq5Pt
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_EnumTimeFormatsEx]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
xor ecx, ecx
call qword [sym.imp.USER32.dll_DdeUnaccessData]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadBitmapW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetProcessIdOfThread]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_DdeQueryNextServer]
call qword [sym.imp.KERNEL32.dll_GetConsoleCP]
xor ecx, ecx
call qword [sym.imp.USER32.dll_RegisterClassExW]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetNamedPipeClientSessionId]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSysColor]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_ReOpenFile]
mov rbx, qword [rsp + 0x58]
mov rax, rdi
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r12
pop rdi
ret