Function at 0x4290bb
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.00428e07
pop ecx
test al, al
je 0x4292f9
xor esi, esi
mov byte [ebp - 1], 0
mov edi, dword [ebp + 0xc]
push 0x45910c
push edi
call fcn.0043cfad
pop ecx
pop ecx
mov dword [ebp - 0xc], eax
test eax, eax
jne 0x429263
push edi
push str.Unable_to_open__s_for_writing__will_try_again_in_1_sec
call fcn.0043cd34
add eax, 0x40
push eax
call fcn.0043d281
add esp, 0xc
push edi
call fcn.004265af
pop ecx
test al, al
je 0x4291be
and dword [ebp - 0x10], 0
and dword [ebp - 8], 0
lea eax, [ebp - 0x10]
push eax
push edi
lea edi, [ebp - 8]
call fcn.00434863
pop ecx
pop ecx
test al, al
je 0x4291be
mov eax, dword [ebp - 0x10]
push dword [ebp - 8]
cmp eax, dword [ebp + 0x14]
jne 0x4291b8
lea ecx, [ebp - 0x20]
push ecx
call fcn.0040ddd3
push 0x10
lea edi, [ebp - 0x40]
lea ebx, [ebp - 0x20]
call fcn.00411051
add esp, 0xc
push dword [ebp + 0x10]
mov eax, ebx
push eax
mov eax, dword [ebp + 0x14]
call fcn.0040ddd3
push 0x10
lea edi, [ebp - 0x60]
call fcn.00411051
add esp, 0xc
push dword [ebp - 8]
call fcn.0043c387
pop ecx
lea ecx, [ebp - 0x40]
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4291a8
test dl, dl
je 0x4291a4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4291a8
inc eax
inc eax
inc ecx
inc ecx
test dl, dl
jne 0x42918a
xor eax, eax
jmp 0x4291ad
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4291be
mov al, 1
jmp 0x4292f9
call fcn.0043c387
pop ecx
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
inc esi
cmp esi, 0xa
jb 0x4290dd
mov esi, dword [ebp + 8]
cmp byte [esi + 0x46c], 0
je 0x429208
push dword [esi + 0x464]
call fcn.004337f6
pop ecx
lea edi, [esi + 0x468]
push dword [edi]
call fcn.004337f6
pop ecx
push dword [edi]
mov byte [esi + 0x460], 1
call fcn.0043380a
pop ecx
xor ebx, ebx
cmp dword [ebp - 0xc], ebx
je 0x4292b2
mov eax, dword [ebp + 0x10]
mov dword [ebp + 0x10], eax
cmp dword [ebp + 0x14], ebx
jbe 0x429295
mov esi, 0x1000
mov eax, dword [ebp + 8]
cmp byte [eax + 0x459], 0
je 0x429237
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edi, dword [ebp + 0x14]
sub edi, ebx
cmp edi, esi
jbe 0x429242
mov edi, esi
push dword [ebp - 0xc]
push edi
push 1
push dword [ebp + 0x10]
call fcn.0043ea8f
add esp, 0x10
cmp eax, edi
jne 0x429273
add dword [ebp + 0x10], edi
add ebx, edi
cmp ebx, dword [ebp + 0x14]
jb 0x429223
jmp 0x429292
push eax
call fcn.0043ce0b
pop ecx
mov byte [ebp - 1], 1
jmp 0x4291d3
push dword [ebp + 0xc]
push ebx
push edi
push str.ERROR:_Unable_to_write__li_bytes_at_offset__li_to__s_n
call fcn.0043cd34
add eax, 0x40
push eax
call fcn.0043d281
add esp, 0x14
mov byte [ebp - 1], 0
mov esi, dword [ebp + 8]
push dword [ebp - 0xc]
call fcn.0043ce7e
pop ecx
push dword [ebp - 0xc]
call fcn.0043d72e
pop ecx
push dword [ebp + 0xc]
call fcn.00428dac
pop ecx
jmp 0x4292cb
push dword [ebp + 0xc]
push str.ERROR:_Couldnt_open__s_for_writing_n
call fcn.0043cd34
add eax, 0x40
push eax
call fcn.0043d281
add esp, 0xc
lea edi, [esi + 0x468]
push dword [edi]
call fcn.004337f6
cmp byte [esi + 0x460], 0
pop ecx
je 0x4292ee
push dword [esi + 0x464]
call fcn.0043380a
pop ecx
push dword [edi]
call fcn.0043380a
mov al, byte [ebp - 1]
pop ecx
pop edi
pop esi
pop ebx
leave
ret 0x10