Function at 0x100043d0
Capabilities:
Delete file
Encode data using xor
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1001fb26
mov eax, dword fs:[0]
push eax
sub esp, 0x1d4
mov eax, dword [0x10028014]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
lea eax, [ebp - 0x114]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
mov edx, 0xc8
xor ecx, ecx
nop word [eax + eax]
mov al, byte [ecx + 0x10021a1c]
xor al, dl
mov byte [ebp + ecx - 0x130], al
inc ecx
lea eax, [edx + 1]
movzx edx, al
cmp ecx, 0x10
jb 0x10004420
lea eax, [ebp - 0x114]
mov byte [ebp - 0x120], 0
push eax
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.10001410
lea eax, [ebp - 0x114]
push eax
call dword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
add esp, 0xc
lea ecx, [ebp - 0x1e0]
call fcn.10015300
push ecx
push 0x12
lea eax, [ebp - 0x114]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0x1dc]
call fcn.10016b80
test eax, eax
lea ecx, [ebp - 0x1e0]
mov eax, dword [ebp - 0x1e0]
push 0
mov eax, dword [eax + 4]
jne 0x100044b4
push 2
add ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool_]
jmp 0x100044be
push 0
add ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::clear_int__bool_]
mov dword [ebp - 0x11c], 0x6f727245
mov dword [ebp - 0x118], 0x203a72
push 0x10018880
lea edx, [ebp - 0x11c]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1e0]
call fcn.10018570
mov edx, esi
mov ecx, eax
call fcn.10018570
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov byte [ebp - 4], 0
lea esi, [ebp - 0x1dc]
cmp dword [ebp - 0x190], 0
jne 0x10004514
xor esi, esi
jmp 0x1000453c
lea ecx, [ebp - 0x1dc]
call fcn.100169b0
push dword [ebp - 0x190]
xor ecx, ecx
test al, al
cmove esi, ecx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
xor ecx, ecx
add esp, 4
test eax, eax
cmovne esi, ecx
push 2
push 0
lea ecx, [ebp - 0x1dc]
call fcn.10016af0
test esi, esi
jne 0x10004569
mov eax, dword [ebp - 0x1e0]
lea ecx, [ebp - 0x1e0]
push esi
push 2
mov eax, dword [eax + 4]
add ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool_]
call fcn.10004320
mov eax, dword [ebp - 0x1e0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ofstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x1e0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x1e4], eax
lea ecx, [ebp - 0x1dc]
call fcn.10015b80
lea ecx, [ebp - 0x1d8]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0x178]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1001e905
mov esp, ebp
pop ebp
ret