Function at 0x4fe910
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d72b2
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x1f4
mov eax, dword [0x671330]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x149], 0
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 8]
call fcn.00418b30
test eax, eax
jne 0x4fe9b4
push str.Blob_is_empty
lea ecx, [ebp - 0x1bc]
call fcn.0040bdb0
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x158], eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x158]
push ecx
lea ecx, [ebp - 0x18c]
call fcn.0040bfb0
push 0x638098
lea edx, [ebp - 0x18c]
push edx
call sub.VCRUNTIME140.dll__CxxThrowException
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1bc]
call fcn.0040b3b0
mov ecx, dword [ebp + 0xc]
call fcn.004087a0
test eax, eax
jne 0x4fea18
push str.File_name_is_empty
lea ecx, [ebp - 0x1d4]
call fcn.0040bdb0
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x160], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x160]
push ecx
lea ecx, [ebp - 0x198]
call fcn.0040bfb0
push 0x638098
lea edx, [ebp - 0x198]
push edx
call sub.VCRUNTIME140.dll__CxxThrowException
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1d4]
call fcn.0040b3b0
mov dword [ebp - 0x148], 0
push 0x5f367c
mov ecx, dword [ebp + 0xc]
call fcn.0040bfe0
push eax
lea eax, [ebp - 0x148]
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wfopen_s]
add esp, 0xc
mov dword [ebp - 0x150], eax
cmp dword [ebp - 0x150], 0
je 0x4feb12
push 0x98
lea ecx, [ebp - 0xac]
call fcn.004029d0
push 1
push 2
lea ecx, [ebp - 0xac]
call fcn.00416190
mov dword [ebp - 0x180], eax
mov byte [ebp - 4], 3
push str.Error_opening_file__code_:
lea ecx, [ebp - 0xac]
push ecx
call fcn.00414ff0
add esp, 8
mov dword [ebp - 0x164], eax
mov edx, dword [ebp - 0x150]
push edx
mov ecx, dword [ebp - 0x164]
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___int_]
lea eax, [ebp - 0x1ec]
push eax
lea ecx, [ebp - 0xac]
call fcn.00414da0
mov dword [ebp - 0x168], eax
mov ecx, dword [ebp - 0x168]
mov dword [ebp - 0x16c], ecx
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x16c]
push edx
lea ecx, [ebp - 0x1a4]
call fcn.0040b380
push 0x638088
lea eax, [ebp - 0x1a4]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1ec]
call fcn.0040b3b0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xac]
call fcn.00415390
cmp dword [ebp - 0x148], 0
je 0x4feb64
push 0
mov ecx, dword [ebp + 8]
call fcn.004fe8f0
mov dword [ebp - 0x170], eax
mov ecx, dword [ebp - 0x148]
push ecx
push 1
mov ecx, dword [ebp + 8]
call fcn.00418b30
push eax
mov edx, dword [ebp - 0x170]
push edx
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
add esp, 0x10
mov eax, dword [ebp - 0x148]
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 4
mov byte [ebp - 0x149], 1
jmp 0x4fec46
mov dword [ebp - 4], 0xffffffff
jmp 0x4fec56
mov al, byte [ebp - 0x149]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00544286
mov esp, ebp
pop ebp
ret