Function at 0x43b200
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc4
push ebx
push esi
push edi
mov edi, edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], 0
call fcn.0043f760
mov ebx, eax
test ebx, ebx
je 0x43b400
cmp byte [ebp + 8], 0
lea esi, [edi + 0x14]
jne 0x43b26b
cmp dword [esi], 0xf
mov eax, edi
jbe 0x43b23e
mov eax, dword [edi]
sub esp, 8
lea ecx, [esp + 0x20]
push 1
push eax
call fcn.0043d300
mov dword [esp + 0x10], 1
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
add ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_bool___thiscall_std::ios_base::operator_bool_void_const]
mov byte [esp + 0xf], 1
test al, al
jne 0x43b270
mov byte [esp + 0xf], 0
test byte [esp + 0x10], 1
je 0x43b280
lea ecx, [esp + 0x18]
call fcn.0043b430
cmp byte [esp + 0xf], 0
je 0x43b2b3
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
mov edx, str.File_already_exists_and_replace_is_false:
call fcn.0043d8c0
cmp dword [esi], 0xf
mov ecx, dword [edi + 0x10]
jbe 0x43b2a1
mov edi, dword [edi]
push ecx
mov edx, edi
mov ecx, eax
call fcn.00439cb0
add esp, 4
jmp 0x43b410
cmp dword [esi], 0xf
mov eax, edi
jbe 0x43b2bf
mov eax, dword [edi]
lea esi, [edi + 0x14]
push 0x4f8ae0
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
je 0x43b3ba
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x14], 0xf
jbe 0x43b2e6
mov eax, dword [eax]
push eax
push 0x2712
push ebx
call fcn.00444210
add esp, 0xc
push 0x43b1f0
push 0x4e2b
push ebx
call fcn.00444210
mov esi, dword [esp + 0x1c]
add esp, 0xc
push esi
push 0x2711
push ebx
call fcn.00444210
add esp, 0xc
push 1
push 0x34
push ebx
call fcn.00444210
add esp, 0xc
push ebx
call fcn.0043f7c0
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x43b39e
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
mov edx, str.Error_downloading_file:
call fcn.0043d8c0
push dword [esp + 0x14]
mov esi, eax
call fcn.004401e0
add esp, 4
mov edx, eax
mov ecx, esi
call fcn.0043d8c0
push 0x439580
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_____]
push ebx
call fcn.0043f740
add esp, 4
push dword [esp + 0x10]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 4
cmp dword [edi + 0x14], 0xf
jbe 0x43b38b
mov edi, dword [edi]
push edi
call dword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
add esp, 4
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push ebx
call fcn.0043f740
add esp, 4
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 4
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
mov edx, str.Failed_to_open_file_for_writing:
call fcn.0043d8c0
cmp dword [esi], 0xf
mov ecx, dword [edi + 0x10]
jbe 0x43b3d4
mov edi, dword [edi]
push ecx
mov edx, edi
mov ecx, eax
call fcn.00439cb0
add esp, 4
mov ecx, eax
push 0x439580
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_____]
push ebx
call fcn.0043f740
add esp, 4
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
mov edx, str.Failed_to_initialize_curl.
call fcn.0043d8c0
push 0x439580
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_____]
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret