Function at 0x23194330e
Capabilities:
Delete file

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov dword [rbp + 0x20], r8d
cmp qword [rbp + 0x18], 0
je 0x231943339
cmp dword [rbp + 0x20], 1
jne 0x231943339
mov eax, 0x32
jmp 0x23194369f
mov rax, qword [rbp + 0x18]
mov rcx, rax
call sym.strlen
add rax, 1
mov rcx, rax
call sym.operator_new___unsigned_long_long_
mov qword [rbp - 0x10], rax
mov rdx, qword [rbp + 0x18]
mov rax, qword [rbp - 0x10]
mov rcx, rax
call sym.strcpy
mov rax, qword [rbp - 0x10]
mov rcx, rax
mov rax, qword [sym.imp.SHLWAPI.dll_PathRemoveExtensionA]
call rax
lea rax, [rbp - 0x23]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__1::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_5ull__14354484447468269027ull__char_.operator_char__
mov rdx, rax
mov rax, qword [rbp - 0x10]
mov rcx, rax
mov rax, qword [sym.imp.SHLWAPI.dll_PathAddExtensionA]
call rax
mov rax, qword [rbp + 0x18]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], pe_nt_image_headers64
mov dword [rsp + 0x20], 2
mov r9d, 0
mov r8d, 0
mov edx, 0x40000000
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CreateFileA]
call rax
mov qword [rbp - 0x18], rax
cmp qword [rbp - 0x18], 0xffffffffffffffff
je 0x231943689
lea rax, [rbp - 0x22]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__2::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_7ull__14647191580649824009ull__char_.operator_char__
mov rdx, rax
mov rax, qword [rbp + 0x10]
mov rcx, rax
call sym.strcmp
test eax, eax
sete al
test al, al
je 0x231943465
lea rax, [rbp - 0x21]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__3::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_7ull__12334712350427014403ull__char_.operator_char__
mov rdx, rax
mov r8d, dword [0x231bba7a0]
mov r9d, dword [rbp + 0x20]
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x10]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp + 0x18]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
lea rdx, [0x231a4e020]
mov rcx, rax
call sym.f_dpf_cmm_void__void__unsigned_long__int__char_const__char_const__char_const_
mov dword [rbp - 4], eax
jmp 0x231943689
lea rax, [rbp - 0x20]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__4::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_7ull__11074232012235854297ull__char_.operator_char__
mov rdx, rax
mov rax, qword [rbp + 0x10]
mov rcx, rax
call sym.strcmp
test eax, eax
sete al
test al, al
je 0x2319434e5
lea rax, [rbp - 0x1f]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__5::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_7ull__13802795468433374047ull__char_.operator_char__
mov rdx, rax
mov r8d, dword [0x231d88d34]
mov r9d, dword [rbp + 0x20]
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x10]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp + 0x18]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
lea rdx, [0x231bba7c0]
mov rcx, rax
call sym.f_dpf_cmm_void__void__unsigned_long__int__char_const__char_const__char_const_
mov dword [rbp - 4], eax
jmp 0x231943689
lea rax, [rbp - 0x1e]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__6::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_7ull__4555893753658037553ull__char_.operator_char__
mov rdx, rax
mov rax, qword [rbp + 0x10]
mov rcx, rax
call sym.strcmp
test eax, eax
sete al
test al, al
je 0x231943565
lea rax, [rbp - 0x1d]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__7::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_7ull__14926026155775717847ull__char_.operator_char__
mov rdx, rax
mov r8d, dword [0x231ebbc0c]
mov r9d, dword [rbp + 0x20]
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x10]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp + 0x18]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
lea rdx, [0x231d88d40]
mov rcx, rax
call sym.f_dpf_cmm_void__void__unsigned_long__int__char_const__char_const__char_const_
mov dword [rbp - 4], eax
jmp 0x231943689
lea rax, [rbp - 0x1c]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__8::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_10ull__10649884605734418841ull__char_.operator_char__
mov rdx, rax
mov rax, qword [rbp + 0x10]
mov rcx, rax
call sym.strcmp
test eax, eax
sete al
test al, al
je 0x2319435e5
lea rax, [rbp - 0x1b]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__9::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_10ull__14068102883376568763ull__char_.operator_char__
mov rdx, rax
mov r8d, dword [0x231ebbe98]
mov r9d, dword [rbp + 0x20]
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x10]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp + 0x18]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
lea rdx, [0x231ebbc20]
mov rcx, rax
call sym.f_dpf_cmm_void__void__unsigned_long__int__char_const__char_const__char_const_
mov dword [rbp - 4], eax
jmp 0x231943689
lea rax, [rbp - 0x1a]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__10::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_10ull__4434279334566245127ull__char_.operator_char__
mov rdx, rax
mov rax, qword [rbp + 0x10]
mov rcx, rax
call sym.strcmp
test eax, eax
sete al
test al, al
je 0x231943662
lea rax, [rbp - 0x19]
mov rcx, rax
call sym.f_dpf_char__char_const__int_::lambda__11::operator_____const
mov rcx, rax
call method.ay::obfuscated_data_10ull__9348201341372202947ull__char_.operator_char__
mov rdx, rax
mov r8d, dword [0x231edae98]
mov r9d, dword [rbp + 0x20]
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x10]
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbp + 0x18]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
lea rdx, str.MSCF
mov rcx, rax
call sym.f_dpf_cmm_void__void__unsigned_long__int__char_const__char_const__char_const_
mov dword [rbp - 4], eax
jmp 0x231943689
mov rax, qword [rbp - 0x18]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CloseHandle]
call rax
mov rax, qword [rbp + 0x18]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_DeleteFileA]
call rax
mov dword [rbp - 4], 0x57
cmp qword [rbp - 0x10], 0
je 0x23194369c
mov rax, qword [rbp - 0x10]
mov rcx, rax
call sym.operator_delete___void_
mov eax, dword [rbp - 4]
add rsp, 0x70
pop rbp
ret