Function at 0x448353
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
push esi
xor esi, esi
cmp dword [ebx + 0x20], esi
push edi
je 0x448442
push esi
lea eax, [ebp - 4]
push eax
lea eax, [ebx + 0x24]
push eax
push dword [ebx]
mov dword [ebp - 4], esi
call dword [sym.imp.KERNEL32.dll_GetOverlappedResult]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp edi, esi
jne 0x448394
cmp eax, 0x3e4
jne 0x448394
xor eax, eax
jmp 0x448574
mov eax, dword [ebp - 4]
cmp eax, dword [ebx + 0x20]
jae 0x4483a7
mov dword [ebx + 0x20], esi
mov dword [ebx + 0x18], esi
mov dword [ebx + 0x1c], esi
jmp 0x44838d
lea eax, [ebx + 0x18]
push eax
lea eax, [ebp - 0x28]
push eax
lea esi, [ebx + 0x38]
push esi
call fcn.00448fe1
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xc], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x18], esi
lea edi, [ebp - 0x18]
lea esi, [ebp - 0x10]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], eax
call fcn.0041eaa7
test al, al
jne 0x448437
mov esi, dword [ebp - 0x10]
test esi, esi
jne 0x4483e7
call fcn.0045d307
mov edi, dword [ebp - 0xc]
cmp edi, dword [esi + 4]
jne 0x4483f4
call fcn.0045d307
mov eax, dword [edi + 0x18]
sub dword [ebx + 0x44], eax
cmp edi, dword [esi + 4]
jne 0x44840e
call fcn.0045d307
cmp edi, dword [esi + 4]
jne 0x44840e
call fcn.0045d307
xor eax, eax
cmp dword [edi + 0x20], eax
setne al
push eax
push dword [edi + 0x1c]
call fcn.004501c2
mov esi, eax
call fcn.0045031e
push edi
push dword [ebp - 0x10]
lea eax, [ebp - 0x28]
push eax
lea eax, [ebx + 0x38]
push eax
call fcn.00448d4f
xor eax, eax
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], eax
mov dword [ebx + 0x20], eax
lea eax, [ebx + 0x38]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], ecx
lea eax, [ebx + 0x38]
mov ecx, dword [eax + 4]
lea edi, [ebp - 0x20]
lea esi, [ebp - 0x10]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x20], eax
call fcn.0041eaa7
test al, al
jne 0x448562
mov esi, dword [ebp - 0x10]
test esi, esi
jne 0x44847b
call fcn.0045d307
mov edi, dword [ebp - 0xc]
cmp edi, dword [esi + 4]
jne 0x448488
call fcn.0045d307
cmp edi, dword [esi + 4]
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x18], eax
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x14], eax
jne 0x44849e
call fcn.0045d307
cmp edi, dword [esi + 4]
mov eax, dword [edi + 0x1c]
mov dword [ebp - 8], eax
jne 0x4484ae
call fcn.0045d307
mov esi, dword [edi + 0x18]
push 0x14
lea eax, [ebx + 0x24]
push 0
push eax
call fcn.0045c920
mov eax, dword [ebp - 0x18]
and dword [ebp - 4], 0
mov dword [ebx + 0x2c], eax
mov eax, dword [ebp - 0x14]
add esp, 0xc
mov dword [ebx + 0x30], eax
lea eax, [ebx + 0x24]
push eax
lea eax, [ebp - 4]
push eax
push esi
push dword [ebp - 8]
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_WriteFile]
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [ebp - 4], esi
je 0x44850f
cmp eax, 0x3e5
je 0x4484fc
or eax, 0xffffffff
jmp 0x448512
mov eax, dword [ebp - 0x18]
mov dword [ebx + 0x18], eax
mov eax, dword [ebp - 0x14]
mov dword [ebx + 0x1c], eax
mov dword [ebx + 0x20], esi
xor eax, eax
jmp 0x448512
mov eax, dword [ebp - 4]
cmp eax, esi
jne 0x448562
mov eax, dword [ebp - 0x10]
sub dword [ebx + 0x44], esi
cmp edi, dword [eax + 4]
jne 0x448526
call fcn.0045d307
xor eax, eax
cmp dword [edi + 0x20], eax
setne al
push eax
push dword [ebp - 8]
call fcn.004501c2
mov esi, eax
call fcn.0045031e
mov eax, dword [ebp - 0x10]
lea esi, [ebp - 0x10]
mov dword [ebp - 0x28], eax
call fcn.00428636
push edi
push dword [ebp - 0x28]
lea eax, [ebp - 0x30]
push eax
lea eax, [ebx + 0x38]
push eax
call fcn.00448d4f
jmp 0x448450
xor eax, eax
cmp dword [ebx + 0x40], eax
jne 0x448571
cmp dword [ebx + 0x44], eax
je 0x448571
mov dword [ebx + 0x44], eax
xor eax, eax
inc eax
pop edi
pop esi
leave
ret