Function at 0x56e2a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x3c
push ebx
mov ebx, dword [esp + 0x44]
push ebp
xor ebp, ebp
mov dword [esp + 0x1c], 0x64
xor eax, eax
mov dword [esp + 0x14], eax
mov byte [esp + 0xa], al
mov eax, dword [ebx + 0x8c4]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x58]
push esi
mov esi, dword [esp + 0x54]
push edi
mov byte [eax], 0
mov eax, dword [esp + 0x64]
mov byte [eax], 0
nop dword [eax + eax]
mov ecx, dword [esi]
mov eax, ecx
mov edi, dword [esi + 4]
and eax, edi
mov edx, dword [ebx + 0x4c8]
cmp eax, 0xffffffff
je 0x56e30f
cmp byte [esi + 0xbc], 0
jne 0x56e30f
sub ecx, dword [esi + 0x10]
sbb edi, dword [esi + 0x14]
test edi, edi
jg 0x56e30f
jl 0x56e30d
cmp ecx, edx
jae 0x56e30f
mov edx, ecx
mov edi, dword [esp + 0x54]
test edx, edx
je 0x56e349
lea eax, [esp + 0x14]
push eax
push edx
push dword [esp + 0x20]
push dword [edi + 0x2a0]
push ebx
call fcn.00567a10
mov ebp, eax
add esp, 0x14
cmp ebp, 0x51
je 0x56e8bd
test ebp, ebp
jg 0x56e7bf
mov ecx, dword [esp + 0x14]
jmp 0x56e34f
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov eax, dword [esi + 0x10]
or eax, dword [esi + 0x14]
jne 0x56e388
push 7
lea eax, [esp + 0x30]
push ebx
push eax
call fcn.00576810
add esp, 0xc
cmp dword [esi + 0x88], 0
jle 0x56e384
lea eax, [esp + 0x3c]
push eax
call fcn.0056faa0
add esp, 4
movups xmm0, xmmword [eax]
movups xmmword [esi + 0x78], xmm0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x5c]
or dword [eax], 1
test ecx, ecx
jne 0x56e3a2
cmp dword [esi + 0xa0], ecx
jne 0x56e3a2
mov byte [esp + 0x11], 1
jmp 0x56e3b0
xor al, al
mov byte [esp + 0x11], al
test ecx, ecx
jle 0x56e8b3
mov eax, dword [esp + 0x18]
mov byte [ecx + eax], 0
mov dword [esi + 0x60], eax
mov eax, dword [edi + 0x288]
mov eax, dword [eax + 0x34]
mov dword [esp + 0x20], eax
test eax, eax
je 0x56e3fb
lea ecx, [esp + 0x12]
push ecx
lea ecx, [esp + 0x18]
push ecx
push edi
push ebx
mov ecx, eax
call dword [0x6926b4]
call dword [esp + 0x30]
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x56e7bf
cmp byte [esp + 0x12], al
jne 0x56e7e6
cmp byte [esi + 0xbc], 0
je 0x56e496
lea eax, [esp + 0x13]
mov byte [esp + 0x13], 0
push eax
lea eax, [esp + 0x18]
push eax
push edi
push ebx
call fcn.00574b00
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x56e7bf
mov eax, dword [edi + 0x288]
mov eax, dword [eax + 0x34]
mov dword [esp + 0x20], eax
test eax, eax
je 0x56e47e
cmp dword [esi + 0xc], ebp
jg 0x56e47e
jl 0x56e448
cmp dword [esi + 8], ebp
ja 0x56e47e
cmp dword [esp + 0x14], 0
jle 0x56e47e
lea ecx, [esp + 0x12]
push ecx
lea ecx, [esp + 0x18]
push ecx
push edi
push ebx
mov ecx, eax
call dword [0x6926b4]
call dword [esp + 0x30]
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x56e7bf
cmp byte [esp + 0x12], al
jne 0x56e7e6
cmp byte [esp + 0x13], 0
jne 0x56e7c9
cmp byte [esi + 0xbc], 0
jne 0x56e758
cmp dword [esp + 0x14], 0
mov cl, byte [esp + 0x11]
jg 0x56e4a9
test cl, cl
je 0x56e75c
cmp byte [ebx + 0x6df], 0
jne 0x56e830
cmp dword [esi + 0xa0], 0
jne 0x56e4f7
test cl, cl
jne 0x56e4f7
mov eax, dword [edi + 0x288]
test dword [eax + 0x40], 0x40003
je 0x56e4f7
push dword [esp + 0x60]
push edi
push ebx
call fcn.00573bc0
mov ebp, eax
add esp, 0xc
test ebp, ebp
jne 0x56e7bf
mov eax, dword [esp + 0x60]
cmp byte [eax], 0
jne 0x56e7bf
inc dword [esi + 0xa0]
cmp byte [ebx + 0x6e1], 0
je 0x56e564
cmp dword [esi + 0x58], 0
je 0x56e552
lea edi, [ebx + 0x8b4]
push edi
call fcn.0047f890
add esp, 4
push eax
push edi
call fcn.00486870
add esp, 4
push eax
push 3
push ebx
call fcn.005677d0
add esp, 0x10
cmp dword [esi + 0x58], 1
jne 0x56e54c
push dword [esp + 0x14]
push dword [esi + 0x60]
push 3
push ebx
call fcn.005677d0
mov edi, dword [esp + 0x64]
jmp 0x56e561
mov edi, dword [esp + 0x54]
jmp 0x56e564
push dword [esp + 0x14]
push dword [esi + 0x60]
push 3
push ebx
call fcn.005677d0
add esp, 0x10
cmp byte [esi + 0xc1], 0
je 0x56e5b4
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x18]
push eax
push dword [esp + 0x1c]
push dword [esi + 0x60]
push ebx
call fcn.00584650
add esp, 0x14
test eax, eax
jg 0x56e7ef
cmp eax, 0xffffffff
jne 0x56e5b4
and dword [esi + 0x74], 0xfffffffe
mov edx, dword [edi + 0x18]
mov eax, edx
mov ecx, dword [edi + 0x1c]
or eax, ecx
je 0x56e5b4
push ecx
push edx
push str.Leftovers_after_chunking:___I64du_bytes_n
push ebx
call fcn.00567930
add esp, 0x10
cmp dword [esi + 0x58], 1
jne 0x56e5d9
cmp byte [esi + 0xbf], 0
jne 0x56e5d9
lea eax, [ebx + 0x8b4]
push eax
call fcn.0047f890
add esp, 4
add dword [esi + 0x10], eax
adc dword [esi + 0x14], 0
mov ecx, dword [esi + 8]
cmp ecx, 0xffffffff
jne 0x56e5e6
cmp dword [esi + 0xc], ecx
je 0x56e660
mov eax, dword [esp + 0x14]
cdq
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x10]
add dword [esp + 0x20], eax
adc edx, dword [esi + 0x14]
cmp edx, dword [esi + 0xc]
jl 0x56e660
jg 0x56e606
cmp dword [esp + 0x20], ecx
jb 0x56e660
mov edx, dword [esi + 0x10]
sub eax, ecx
add eax, dword [esp + 0x14]
mov dword [esp + 0x1c], eax
mov eax, ecx
je 0x56e64e
cmp byte [esi + 0xbf], 0
jne 0x56e64e
push dword [esi + 0x14]
mov eax, dword [esp + 0x20]
push edx
push dword [esi + 0xc]
push ecx
push dword [esi + 4]
push dword [esi]
push eax
push str.Excess_found_in_a_read:_excess___zu__size___I64d__maxdownload___I64d__bytecount___I64d_n
push ebx
call fcn.00567930
push 1
push edi
call fcn.00568290
mov eax, dword [esi + 8]
add esp, 0x2c
mov edx, dword [esi + 0x10]
sub eax, edx
mov ecx, 0
cmovs eax, ecx
and dword [esi + 0x74], 0xfffffffe
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
cdq
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
push dword [esi + 0x14]
push dword [esi + 0x10]
push ebx
call fcn.005765c0
add esp, 0xc
cmp byte [esi + 0xc1], 0
jne 0x56e758
cmp dword [esp + 0x14], 0
jne 0x56e6a0
cmp dword [esi + 0x58], 0
jne 0x56e6a6
mov cl, byte [esp + 0x11]
test cl, cl
je 0x56e75c
cmp dword [esi + 0x58], 0
je 0x56e6fe
cmp byte [esi + 0xbf], 0
jne 0x56e6fe
lea eax, [ebx + 0x8b4]
push eax
call fcn.0047f890
mov ebp, dword [esi + 8]
add esp, 4
mov edx, dword [esi + 0xc]
mov ecx, ebp
and ecx, edx
cmp ecx, 0xffffffff
je 0x56e6d9
xor ecx, ecx
cmp ecx, edx
jl 0x56e6d9
jg 0x56e6db
cmp eax, ebp
ja 0x56e6db
mov ebp, eax
lea eax, [ebx + 0x8b4]
push eax
call fcn.00486870
push ebp
push eax
push 1
push ebx
call fcn.005677a0
mov ebp, eax
add esp, 0x14
test ebp, ebp
jne 0x56e7bf
cmp dword [esi + 0x58], 2
jge 0x56e74d
cmp byte [ebx + 0x6ea], 0
jne 0x56e730
mov eax, dword [esi + 0x90]
test eax, eax
je 0x56e730
cmp byte [esi + 0xbf], 0
jne 0x56e74d
push dword [esp + 0x14]
push dword [esi + 0x60]
push eax
push ebx
call fcn.0056cd90
jmp 0x56e748
cmp byte [esi + 0xbf], 0
jne 0x56e74d
push dword [esp + 0x14]
push dword [esi + 0x60]
push 1
push ebx
call fcn.005677a0
mov ebp, eax
add esp, 0x10
mov dword [esi + 0x58], 0
test ebp, ebp
jne 0x56e7bf
mov cl, byte [esp + 0x11]
mov eax, dword [edi + 0x288]
cmp dword [eax + 0x34], 0
je 0x56e774
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x56e84f
mov eax, dword [esi + 0x74]
test cl, cl
je 0x56e781
and eax, 0xfffffffe
mov dword [esi + 0x74], eax
test al, 0x10
jne 0x56e7e6
mov ecx, dword [ebx + 0xc]
mov eax, dword [ecx + 0x288]
test byte [eax + 0x40], 0x30
jne 0x56e7a3
push 0
push ecx
call fcn.005614b0
add esp, 8
test al, al
je 0x56e7e6
mov ecx, dword [esp + 0x24]
mov eax, ecx
dec ecx
mov dword [esp + 0x24], ecx
test eax, eax
jne 0x56e2e0
mov ebp, dword [esp + 0x54]
jmp 0x56e8bf
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x3c
ret
mov eax, dword [esp + 0x14]
test eax, eax
jle 0x56e7e6
push dword [ebx + 0xc50]
push eax
push str.Excess_found:_excess___zd_url___s__zero_length_body__n
push ebx
call fcn.00567930
add esp, 0x10
mov ebp, dword [esp + 0x54]
jmp 0x56e8bf
cmp eax, 6
jne 0x56e80e
push str.Failed_reading_the_chunked_encoded_stream
push ebx
call fcn.00567870
mov eax, dword [esp + 0x30]
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
push eax
call fcn.005845c0
push eax
push str._s_in_chunked_encoding
push ebx
call fcn.00567870
add esp, 0x10
mov eax, 0x38
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
push 2
push edi
call fcn.00568290
mov eax, dword [esp + 0x68]
add esp, 8
pop edi
pop esi
pop ebp
mov byte [eax], 1
mov eax, 8
pop ebx
add esp, 0x3c
ret
mov edx, dword [esi + 0x60]
add edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
add eax, edx
mov dword [esi + 0x60], edx
mov ebp, dword [ebx + 0x4c8]
add ecx, ebp
cmp eax, ecx
jbe 0x56e875
mov eax, ebp
sub eax, edx
add eax, dword [esp + 0x18]
jmp 0x56e879
mov eax, dword [esp + 0x1c]
mov edi, dword [edi + 0x288]
mov ebp, dword [esp + 0x54]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x12]
push eax
mov edi, dword [edi + 0x34]
lea eax, [esp + 0x18]
push eax
push ebp
push ebx
mov ecx, edi
call dword [0x6926b4]
call edi
add esp, 0x10
test eax, eax
jne 0x56e8fe
cmp byte [esp + 0x12], al
je 0x56e8bf
or dword [esi + 0x74], 1
jmp 0x56e8bf
and dword [esi + 0x74], 0xfffffffe
mov ebp, dword [esp + 0x54]
jmp 0x56e8bf
mov ebp, edi
mov eax, dword [esp + 0x24]
test eax, eax
jg 0x56e8d8
mov eax, dword [esp + 0x64]
mov dword [ebp + 0x4dc], 1
mov byte [eax], 1
mov eax, dword [esi + 0x74]
and al, 3
cmp al, 2
jne 0x56e8fc
cmp byte [ebp + 0x245], 0
je 0x56e8fc
push str.we_are_done_reading_and_this_is_set_to_close__stop_send_n
push ebx
call fcn.00567930
add esp, 8
and dword [esi + 0x74], 0xfffffffd
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret