Function at 0x42ddd2
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
sub esp, 0x64
push ebx
push esi
push edi
push 1
call fcn.0042db1e
pop ecx
test al, al
je 0x42e00f
xor esi, esi
mov byte [ebp - 1], 0
mov edi, dword [ebp + 0xc]
push 0x4631bc
push edi
call fcn.004471be
pop ecx
pop ecx
mov dword [ebp - 0xc], eax
test eax, eax
jne 0x42df79
push edi
push str.Unable_to_open__s_for_writing__will_try_again_in_1_sec
call fcn.00446f45
add eax, 0x40
push eax
call fcn.00447492
add esp, 0xc
push edi
call fcn.0042b122
pop ecx
test al, al
je 0x42ded5
and dword [ebp - 0x10], 0
and dword [ebp - 8], 0
lea eax, [ebp - 0x10]
push eax
push edi
lea edi, [ebp - 8]
call fcn.0043ea21
pop ecx
pop ecx
test al, al
je 0x42ded5
mov eax, dword [ebp - 0x10]
push dword [ebp - 8]
cmp eax, dword [ebp + 0x14]
jne 0x42decf
lea ecx, [ebp - 0x20]
push ecx
call fcn.0040e541
push 0x10
lea edi, [ebp - 0x40]
lea ebx, [ebp - 0x20]
call fcn.004117c9
add esp, 0xc
push dword [ebp + 0x10]
mov eax, ebx
push eax
mov eax, dword [ebp + 0x14]
call fcn.0040e541
push 0x10
lea edi, [ebp - 0x60]
call fcn.004117c9
add esp, 0xc
push dword [ebp - 8]
call fcn.00446598
pop ecx
lea ecx, [ebp - 0x40]
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42debf
test dl, dl
je 0x42debb
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42debf
inc eax
inc eax
inc ecx
inc ecx
test dl, dl
jne 0x42dea1
xor eax, eax
jmp 0x42dec4
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x42ded5
mov al, 1
jmp 0x42e00f
call fcn.00446598
pop ecx
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
inc esi
cmp esi, 0xa
jb 0x42ddf4
mov esi, dword [ebp + 8]
cmp byte [esi + 0x8c], 0
je 0x42df21
push dword [esi + 0x84]
call fcn.0043d96d
pop ecx
lea edi, [esi + 0x88]
push dword [edi]
call fcn.0043d96d
mov eax, dword [esi + 0x80]
pop ecx
mov byte [eax], 1
push dword [edi]
call fcn.0043d981
pop ecx
xor ebx, ebx
cmp dword [ebp - 0xc], ebx
je 0x42dfc8
mov eax, dword [ebp + 0x10]
mov dword [ebp + 0x10], eax
cmp dword [ebp + 0x14], ebx
jbe 0x42dfab
mov esi, 0x1000
mov eax, dword [ebp + 8]
cmp byte [eax + 0x75], 0
je 0x42df4d
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edi, dword [ebp + 0x14]
sub edi, ebx
cmp edi, esi
jbe 0x42df58
mov edi, esi
push dword [ebp - 0xc]
push edi
push 1
push dword [ebp + 0x10]
call fcn.00448b90
add esp, 0x10
cmp eax, edi
jne 0x42df89
add dword [ebp + 0x10], edi
add ebx, edi
cmp ebx, dword [ebp + 0x14]
jb 0x42df3c
jmp 0x42dfa8
push eax
call fcn.0044701c
pop ecx
mov byte [ebp - 1], 1
jmp 0x42deea
push dword [ebp + 0xc]
push ebx
push edi
push str.ERROR:_Unable_to_write__li_bytes_at_offset__li_to__s_n
call fcn.00446f45
add eax, 0x40
push eax
call fcn.00447492
add esp, 0x14
mov byte [ebp - 1], 0
mov esi, dword [ebp + 8]
push dword [ebp - 0xc]
call fcn.0044708f
pop ecx
push dword [ebp - 0xc]
call fcn.0044793f
pop ecx
push dword [ebp + 0xc]
call fcn.0042dac3
pop ecx
jmp 0x42dfe1
push dword [ebp + 0xc]
push str.ERROR:_Couldnt_open__s_for_writing_n
call fcn.00446f45
add eax, 0x40
push eax
call fcn.00447492
add esp, 0xc
lea edi, [esi + 0x88]
push dword [edi]
call fcn.0043d96d
cmp dword [esi + 0x80], 0
pop ecx
je 0x42e004
push dword [esi + 0x84]
call fcn.0043d981
pop ecx
push dword [edi]
call fcn.0043d981
mov al, byte [ebp - 1]
pop ecx
pop edi
pop esi
pop ebx
leave
ret 0x10