Function at 0x180002950
Capabilities:
Create pipe
Delete directory
Get disk size
Print debug messages
Query or enumerate registry value
Read .ini file

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rdi
lea rbp, [rsp - 0x100]
sub rsp, 0x200
lea rax, str.SoftwareHaye_CosqNoqotApp
mov qword [rbp - 0x38], rax
xor edi, edi
mov dword [rbp + 0x128], edi
mov dword [rbp + 0x138], 4
lea rax, [rbp - 0x60]
mov qword [rbp - 0x40], rax
mov dword [rbp + 0x120], 0x20019
mov dword [rbp + 0x130], edi
mov qword [rbp - 0x70], 0xffffffff80000001
mov rax, qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
add rax, 0x11d
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x18], 0x11d
movaps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x50], xmm0
lea rax, [rbp - 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x120]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x130]
lea r8, [rbp - 0x38]
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 0x50]
call fcn.18000cfb0
test eax, eax
jne 0x180002c5b
lea rax, [rbp + 0x138]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x128]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.LastLoox
mov rcx, qword [rbp - 0x60]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov ebx, eax
mov rcx, qword [sym.imp.ADVAPI32.dll_RegCloseKey]
add rcx, 0x12d
mov qword [rbp - 0x70], rcx
mov dword [rbp - 0x68], 0x12d
xor eax, eax
mov word [rsp + 0x40], ax
mov byte [rsp + 0x42], al
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x68], rdi
mov ecx, 0x10
call fcn.18004e89c
mov qword [rax + 8], rdi
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x48]
mov qword [rax], rcx
mov word [rsp + 0x78], di
mov qword [rsp + 0x7e], rdi
mov qword [rbp - 0x7a], rdi
xor eax, eax
mov word [rsp + 0x7b], ax
mov byte [rsp + 0x7d], al
mov word [rsp + 0x7e], ax
mov byte [rbp - 0x80], al
mov word [rbp - 0x7f], ax
mov byte [rbp - 0x7d], al
mov word [rbp - 0x7c], ax
mov byte [rbp - 0x7a], al
mov word [rbp - 0x79], ax
mov byte [rbp - 0x77], al
mov word [rbp - 0x76], ax
mov byte [rbp - 0x74], al
mov dword [rsp + 0x44], edi
mov dword [rsp + 0x74], edi
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp - 0x50], xmm0
lea r8, [rbp - 0x60]
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180010ce0
nop
lea rcx, [rsp + 0x48]
call fcn.180011510
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x48], rdi
mov edx, 0x10
call fcn.18004e7b0
test ebx, ebx
jne 0x180002c49
cmp dword [0x1800de574], 0x4b6aec77
jne 0x180002c38
mov qword [rsp + 0x20], rdi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStructW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_HeapDestroy]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetThreadPriorityBoost]
xor ecx, ecx
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_GetTimeZoneInformationForYear]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetProcessAffinityMask]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetSystemTime]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
call qword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetConsoleAliasExesW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeleteFiber]
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], edi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_BackupWrite]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryTransactedW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_UnregisterWait]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetNumaProximityNode]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], edi
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetHandleInformation]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLocaleInfoW]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetProcessDEPPolicy]
xor r9d, r9d
xor r8d, r8d
lea rdx, str.Mr4Js641xgz2Nq6NZFFc2vh
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetFileMUIInfo]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_HeapCreate]
mov eax, dword [rbp + 0x128]
add rsp, 0x200
pop rdi
pop rbx
pop rbp
ret
lea rcx, str.Value_does_not_exist_or_error_reading_value.
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jmp 0x180002d2d
mov rax, qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
add rax, 0x21b
mov qword [rbp - 0x70], rax
mov dword [rbp - 0x68], 0x21b
xor eax, eax
mov word [rsp + 0x40], ax
mov byte [rsp + 0x42], al
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x68], rdi
mov ecx, 0x10
call fcn.18004e89c
mov qword [rax + 8], rdi
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x48]
mov qword [rax], rcx
mov word [rsp + 0x78], di
mov qword [rsp + 0x7e], rdi
mov qword [rbp - 0x7a], rdi
xor eax, eax
mov word [rsp + 0x7b], ax
mov byte [rsp + 0x7d], al
mov word [rsp + 0x7e], ax
mov byte [rbp - 0x80], al
mov word [rbp - 0x7f], ax
mov byte [rbp - 0x7d], al
mov word [rbp - 0x7c], ax
mov byte [rbp - 0x7a], al
mov word [rbp - 0x79], ax
mov byte [rbp - 0x77], al
mov word [rbp - 0x76], ax
mov byte [rbp - 0x74], al
mov dword [rsp + 0x44], edi
mov dword [rsp + 0x74], edi
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp - 0x50], xmm0
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x40]
call fcn.180010af0
nop
lea rcx, [rsp + 0x48]
call fcn.180011510
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x48], rdi
mov edx, 0x10
call fcn.18004e7b0
lea r9, [rbp - 0x10]
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x20]
lea rcx, [0x18007efc8]
call qword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
test eax, eax
je 0x180002d67
mov r9, qword [rbp - 0x30]
shr r9, 0x14
lea r8, str.Total_disk_space_on_C:_is__lu_MB.
mov edx, 0x100
lea rcx, [rbp]
call fcn.1800010f0
xor eax, eax
add rsp, 0x200
pop rdi
pop rbx
pop rbp
ret