Function at 0x44cac0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push ebx
push esi
push edi
mov edi, edx
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp + 8]
xor ebx, ebx
mov ecx, dword [ebp + 0xc]
mov byte [ebp - 1], 1
mov eax, dword [edi + 0x38]
mov dword [ebp - 0x14], eax
mov dword [ecx], ebx
mov esi, dword [eax]
mov eax, dword [esi + 0xd34]
mov dword [edx], ebx
mov ecx, dword [edi + 8]
mov edx, dword [esi + 0x91c]
mov dword [ebp - 0x1c], eax
add eax, ecx
mov dword [ebp - 8], eax
sub eax, dword [edi + 0xc]
mov dword [ebp - 0xc], eax
cmp ecx, edx
jae 0x44cb88
mov al, byte [ebp - 1]
nop
test al, al
je 0x44cb88
test ebx, ebx
jne 0x44cb88
cmp dword [edi], ebx
je 0x44cb95
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 8]
inc eax
add ecx, dword [edi + 4]
add eax, edx
cmp ecx, eax
ja 0x44ce1f
push dword [edi + 4]
push dword [edi]
push dword [ebp - 8]
call fcn.00614e90
mov eax, dword [edi + 4]
add esp, 0xc
mov dword [ebp - 0x10], eax
push dword [edi]
call dword [0x731670]
mov ecx, dword [ebp - 0x10]
add esp, 4
mov dword [edi], ebx
mov dword [edi + 4], ebx
test ecx, ecx
jg 0x44cc01
push str.response_reading_failed
push esi
mov byte [ebp - 1], 0
mov ebx, 0x38
call fcn.004512d0
add esp, 8
mov al, byte [ebp - 1]
mov ecx, dword [edi + 8]
mov edx, dword [esi + 0x91c]
cmp ecx, edx
jb 0x44cb10
mov byte [edi + 0x10], 0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp - 0x14]
sub edx, ecx
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x28], 0x38
cmp eax, dword [ebx + 0x424]
mov eax, dword [ebx]
lea ebx, [ebp - 0x28]
sete cl
push ebx
mov ebx, dword [ebp - 0x14]
mov eax, dword [eax + 0x91c]
cmp edx, eax
cmovae edx, eax
mov eax, dword [ebx + ecx*4 + 0x438]
push edx
push dword [ebp - 8]
push ecx
push ebx
call eax
mov ecx, eax
add esp, 0x14
mov dword [ebp - 0x10], ecx
test ecx, ecx
jns 0x44cbf9
mov ebx, dword [ebp - 0x28]
cmp ebx, 0x51
je 0x44ce39
test ebx, ebx
je 0x44cb61
xor al, al
mov byte [ebp - 1], al
jmp 0x44cb7b
jle 0x44cb61
xor ebx, ebx
mov eax, ecx
mov dword [ebp - 0x20], 0
cdq
add dword [esi + 0xa8], eax
mov eax, dword [ebp - 8]
adc dword [esi + 0xac], edx
add dword [edi + 8], ecx
lea ecx, [eax + 1]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0xc]
inc ecx
cmp byte [eax], 0xa
mov dword [ebp - 0xc], ecx
jne 0x44cd17
cmp byte [esi + 0xb42], 0
mov ebx, dword [edi + 0xc]
je 0x44ccc3
cmp dword [esi + 0x600], 0
je 0x44cc97
mov eax, dword [esi + 0x7c]
test eax, eax
jne 0x44cc5a
mov eax, dword [esi + 0x78]
test eax, eax
je 0x44cc61
mov byte [eax + 0xe6], 1
push dword [esi + 0x594]
mov eax, dword [esi + 0x600]
push ecx
push ebx
push 1
push esi
call eax
mov eax, dword [esi + 0x7c]
add esp, 0x14
test eax, eax
je 0x44cc87
mov byte [eax + 0xe6], 0
jmp 0x44ccc0
mov eax, dword [esi + 0x78]
test eax, eax
je 0x44ccc0
mov byte [eax + 0xe6], 0
jmp 0x44ccc0
push dword [esi + 0x590]
push 1
push 2
push 0x71163f
call fcn.00629d40
push dword [esi + 0x590]
mov eax, dword [ebp - 0xc]
push 1
push eax
push ebx
call fcn.00629d40
add esp, 0x20
mov ecx, dword [ebp - 0xc]
mov edx, dword [edi + 0xc]
mov eax, ecx
test ecx, ecx
jne 0x44ccda
mov eax, edx
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x44ccd1
sub eax, ebx
mov ecx, dword [ebp - 0x14]
push eax
push edx
mov edx, 2
call fcn.00451800
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x44cb8c
push dword [ebp + 8]
mov eax, dword [ebp - 0xc]
mov ecx, dword [edi + 0x50]
push eax
push dword [edi + 0xc]
push dword [ebp - 0x14]
call ecx
add esp, 0x10
test al, al
jne 0x44cd3b
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov dword [edi + 0xc], eax
mov edx, dword [ebp - 0x20]
mov eax, ebx
inc dword [ebp - 8]
inc edx
inc dword [ebp - 0x18]
cmp edx, dword [ebp - 0x10]
mov dword [ebp - 0x20], edx
mov edx, ecx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x24], eax
jge 0x44cd89
mov eax, dword [ebp - 8]
jmp 0x44cc26
mov eax, dword [edi + 0xc]
mov ecx, dword [ebp - 8]
sub ecx, eax
push ecx
push eax
push dword [ebp - 0x1c]
mov dword [ebp - 8], ecx
call fcn.00614e90
mov eax, dword [ebp - 8]
add esp, 0xc
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp + 0xc]
mov byte [ebp - 1], 0
mov byte [eax + ecx], 0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
mov dword [edi + 0xc], eax
inc ecx
mov eax, dword [edi + 8]
mov dword [edx], eax
mov eax, dword [ebp - 0x10]
mov dword [edi + 8], 0
cmp ecx, eax
je 0x44ce05
sub eax, ecx
jmp 0x44cddf
mov ecx, dword [ebp - 0x10]
cmp edx, ecx
jne 0x44cdbe
mov eax, dword [esi + 0x91c]
cdq
sub eax, edx
sar eax, 1
cmp ecx, eax
jle 0x44cdb8
push ecx
push str.Excessive_server_response_line_length_received___zd_bytes._Stripping_n
push esi
call fcn.004511c0
mov ebx, dword [ebp - 0x24]
add esp, 0xc
mov eax, 0x28
jmp 0x44cde3
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x24]
mov ebx, eax
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 8]
mov dword [ebp - 8], eax
mov eax, dword [esi + 0x91c]
shr eax, 1
cmp dword [edi + 8], eax
jbe 0x44cb78
mov ebx, dword [ebp - 0x24]
mov eax, edx
test eax, eax
je 0x44ce05
push eax
mov dword [edi + 4], eax
call dword [0x73166c]
add esp, 4
mov dword [edi], eax
test eax, eax
je 0x44ce42
push dword [edi + 4]
push dword [edi + 0xc]
push eax
call fcn.00614e90
add esp, 0xc
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0xc], eax
mov dword [ebp - 8], eax
xor eax, eax
mov dword [edi + 8], 0
mov dword [ebp - 0xc], eax
jmp 0x44cb78
push str.cached_response_data_too_big_to_handle
push esi
call fcn.004512d0
add esp, 8
mov eax, 0x38
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov esp, ebp
pop ebp
ret