Function at 0x44de45
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58
mov eax, dword [0x49b854]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [edi]
push ebx
mov ebx, dword [eax + 0x8558]
push esi
push 0x5c
push dword [ebx]
call fcn.00460a50
mov esi, dword [edi]
and dword [ebp - 0x48], 0
and dword [ebp - 0x44], 0
pop ecx
pop ecx
mov dword [ebp - 0x40], eax
call fcn.00458122
mov ecx, dword [edi]
mov dword [ebp - 0x54], eax
mov eax, dword [esi + 0x138]
mov dword [edi + 0x194], eax
mov eax, dword [esi + 0xf4]
mov dword [edi + 0x198], eax
lea eax, [esi + 0x464]
mov dword [ecx + 0xd4], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x50], edx
test eax, eax
jne 0x44deb7
push 0x25
pop eax
jmp 0x44e083
cmp byte [eax + 1], 0
je 0x44deaf
mov eax, dword [esi + 0x8550]
or eax, dword [esi + 0x8554]
je 0x44ded2
push 0x485af8
jmp 0x44df0e
mov eax, dword [edi]
push dword [eax + 0x294]
push 0x8301
push dword [ebx]
call fcn.004733d4
add esp, 0xc
test eax, eax
jns 0x44df01
push dword [ebx]
push str.Cant_open__s_for_writing
push esi
call fcn.0044a513
add esp, 0xc
push 0x17
jmp 0x44deb1
push eax
call fcn.0046ac0a
mov dword [esp], 0x480ae0
push dword [ebx]
call fcn.0045facc
pop ecx
mov dword [ebp - 0x40], eax
pop ecx
test eax, eax
je 0x44deed
mov eax, dword [esi + 0x180]
mov ecx, dword [esi + 0x184]
cmp eax, 0xffffffff
jne 0x44df33
cmp ecx, eax
je 0x44df3e
push ecx
push eax
push esi
call fcn.004585e5
add esp, 0xc
cmp dword [esi + 0x8554], 0
jg 0x44df9a
jl 0x44df52
cmp dword [esi + 0x8550], 0
jae 0x44df9a
lea eax, [ebp - 0x3c]
push eax
push dword [ebp - 0x40]
call fcn.004691a7
pop ecx
push eax
call fcn.00463b65
pop ecx
pop ecx
test eax, eax
je 0x44df88
push dword [ebp - 0x40]
call fcn.0045f99c
push dword [ebx]
push str.Cant_get_the_size_of__s
push esi
call fcn.0044a513
add esp, 0x10
jmp 0x44defd
mov eax, dword [ebp - 0x24]
mov dword [esi + 0x8550], eax
mov eax, dword [ebp - 0x20]
mov dword [esi + 0x8554], eax
lea eax, [ebp - 0x58]
push eax
push 0x4000
push edi
call fcn.004469c6
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x44e078
mov edx, dword [ebp - 0x58]
test edx, edx
jle 0x44e06a
mov ecx, dword [esi + 0x8550]
mov eax, dword [esi + 0x8554]
mov ebx, ecx
or ebx, eax
je 0x44e010
xor ebx, ebx
cmp ebx, eax
jg 0x44dff3
jl 0x44dfdf
cmp edx, ecx
ja 0x44dff3
sub ecx, edx
sbb eax, ebx
mov dword [esi + 0x8550], ecx
mov dword [esi + 0x8554], eax
xor ebx, ebx
jmp 0x44e012
and dword [esi + 0x8550], 0
mov eax, ecx
sub edx, eax
and dword [esi + 0x8554], 0
lea ecx, [eax + esi + 0x464]
mov ebx, edx
jmp 0x44e018
mov ebx, edx
lea ecx, [esi + 0x464]
push dword [ebp - 0x40]
push ebx
push 1
push ecx
call fcn.00460c82
add esp, 0x10
cmp eax, ebx
jne 0x44e066
add dword [ebp - 0x48], ebx
adc dword [ebp - 0x44], 0
push dword [ebp - 0x44]
push dword [ebp - 0x48]
push esi
call fcn.00458597
push edi
call fcn.00458619
add esp, 0x10
test eax, eax
jne 0x44e075
push dword [ebp - 0x50]
push dword [ebp - 0x54]
push esi
call fcn.0045920f
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x44df9a
jmp 0x44e078
push 0x37
jmp 0x44e077
push edi
call fcn.00458619
pop ecx
test eax, eax
je 0x44e078
push 0x2a
pop ebx
push dword [ebp - 0x40]
call fcn.0045f99c
pop ecx
mov eax, ebx
mov ecx, dword [ebp - 4]
pop esi
xor ecx, ebp
pop ebx
call fcn.0045bc90
leave
ret