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

Disassembly:
sub esp, 0x54
push ebx
mov ebx, dword [esp + 0x5c]
push ebp
push esi
mov esi, dword [esp + 0x6c]
xor ebp, ebp
mov edx, dword [ebx + 0x234]
push edi
mov edi, dword [ebx + 0x230]
mov eax, edi
or eax, edx
mov dword [esp + 0x24], ebp
mov byte [esp + 0x12], 0
mov dword [esp + 0x34], 0x64
mov dword [esp + 0x20], edi
mov dword [esp + 0x1c], edx
jne 0x4a23ec
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x1c], connect
mov eax, dword [ebx + 0x8c8]
lea ecx, [esi + 0xc2]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x2c], ecx
mov byte [eax], 0
mov eax, dword [esp + 0x7c]
mov byte [eax], 0
lea eax, [esi + 0x10]
mov edi, dword [esi + 4]
mov edx, dword [ebx + 0x4b8]
mov dword [esp + 0x18], eax
mov dword [esp + 0x38], ecx
mov ecx, dword [esi]
mov dword [esp + 0x28], eax
mov eax, ecx
and eax, edi
cmp eax, 0xffffffff
je 0x4a244f
mov eax, dword [esp + 0x2c]
cmp byte [eax], 0
jne 0x4a244f
mov eax, dword [esp + 0x28]
sub ecx, dword [eax]
sbb edi, dword [eax + 4]
test edi, edi
jg 0x4a244f
jl 0x4a244d
cmp ecx, edx
jae 0x4a244f
mov edx, ecx
mov edi, dword [esp + 0x6c]
test edx, edx
je 0x4a248a
mov ebp, dword [esp + 0x30]
lea eax, [esp + 0x14]
push eax
push edx
push ebp
push dword [edi + 0x200]
push ebx
call fcn.0049cd90
mov ebp, eax
add esp, 0x14
cmp ebp, 0x51
je 0x4a2989
test ebp, ebp
jg 0x4a2acd
mov ecx, dword [esp + 0x14]
jmp 0x4a2490
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
or eax, dword [edx + 4]
jne 0x4a24c9
push 7
lea eax, [esp + 0x48]
push ebx
push eax
call fcn.004ab150
add esp, 0xc
cmp dword [esi + 0x78], 0
jle 0x4a24c5
lea eax, [esp + 0x54]
push eax
call fcn.004914f0
add esp, 4
movups xmm0, xmmword [eax]
movups xmmword [esi + 0x68], xmm0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x74]
or dword [eax], 1
test ecx, ecx
jne 0x4a24e0
cmp dword [esi + 0x90], ecx
jne 0x4a24e0
mov al, 1
jmp 0x4a24e2
xor al, al
mov byte [esp + 0x11], al
test ecx, ecx
jg 0x4a24f2
test al, al
je 0x4a2990
mov eax, dword [esp + 0x30]
mov byte [ecx + eax], 0
mov dword [esi + 0x50], eax
mov eax, dword [edi + 0x1e8]
mov eax, dword [eax + 0x34]
test eax, eax
je 0x4a252f
lea ecx, [esp + 0x12]
push ecx
lea ecx, [esp + 0x18]
push ecx
push edi
push ebx
call eax
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4a2acd
cmp byte [esp + 0x12], al
jne 0x4a2a83
mov eax, dword [esp + 0x38]
mov dword [esp + 0x2c], eax
cmp byte [eax], 0
je 0x4a25c0
lea eax, [esp + 0x13]
mov byte [esp + 0x13], 0
push eax
lea eax, [esp + 0x18]
push eax
push edi
push ebx
call fcn.004a8260
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4a2acd
mov eax, dword [edi + 0x1e8]
mov eax, dword [eax + 0x34]
test eax, eax
je 0x4a25a8
cmp dword [esi + 0xc], ebp
jg 0x4a25a8
jl 0x4a257c
cmp dword [esi + 8], ebp
ja 0x4a25a8
cmp dword [esp + 0x14], 0
jle 0x4a25a8
lea ecx, [esp + 0x12]
push ecx
lea ecx, [esp + 0x18]
push ecx
push edi
push ebx
call eax
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4a2acd
cmp byte [esp + 0x12], al
jne 0x4a2a83
cmp byte [esp + 0x13], 0
jne 0x4a2999
mov eax, dword [esp + 0x38]
cmp byte [eax], 0
jne 0x4a28e1
cmp dword [esp + 0x14], 0
mov cl, byte [esp + 0x11]
jg 0x4a25d3
test cl, cl
je 0x4a28e5
cmp byte [ebx + 0x154], 0
jne 0x4a2a04
cmp dword [esi + 0x90], 0
jne 0x4a2621
test cl, cl
jne 0x4a2621
mov eax, dword [edi + 0x1e8]
test dword [eax + 0x44], 0x40003
je 0x4a2621
push dword [esp + 0x78]
push edi
push ebx
call fcn.004a71a0
mov ebp, eax
add esp, 0xc
test ebp, ebp
jne 0x4a2acd
mov eax, dword [esp + 0x78]
cmp byte [eax], 0
jne 0x4a2acd
inc dword [esi + 0x90]
cmp byte [ebx + 0x6db], 0
je 0x4a268e
cmp dword [esi + 0x48], 0
je 0x4a267c
lea edi, [ebx + 0x8b8]
push edi
call fcn.00491fd0
add esp, 4
push eax
push edi
call fcn.00491fe0
add esp, 4
push eax
push 3
push ebx
call fcn.0049cb80
add esp, 0x10
cmp dword [esi + 0x48], 1
jne 0x4a2676
push dword [esp + 0x14]
push dword [esi + 0x50]
push 3
push ebx
call fcn.0049cb80
mov edi, dword [esp + 0x7c]
jmp 0x4a268b
mov edi, dword [esp + 0x6c]
jmp 0x4a268e
push dword [esp + 0x14]
push dword [esi + 0x50]
push 3
push ebx
call fcn.0049cb80
add esp, 0x10
cmp byte [esi + 0xc7], 0
je 0x4a26de
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x18]
push eax
push dword [esp + 0x1c]
push dword [esi + 0x50]
push ebx
call fcn.004ce1b0
add esp, 0x14
test eax, eax
jg 0x4a29bf
cmp eax, 0xffffffff
jne 0x4a26de
and dword [esi + 0x64], 0xfffffffe
mov edx, dword [edi + 0x10]
mov eax, edx
mov ecx, dword [edi + 0x14]
or eax, ecx
je 0x4a26de
push ecx
push edx
push str.Leftovers_after_chunking:___I64du_bytes
push ebx
call fcn.0049ccf0
add esp, 0x10
cmp dword [esi + 0x48], 1
jne 0x4a2706
cmp byte [esi + 0xc5], 0
jne 0x4a2706
lea eax, [ebx + 0x8b8]
push eax
call fcn.00491fd0
mov edx, dword [esp + 0x1c]
add esp, 4
add dword [edx], eax
adc dword [edx + 4], 0
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
cmp ecx, 0xffffffff
jne 0x4a2719
cmp edi, ecx
je 0x4a279c
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
cdq
add eax, dword [ebx]
adc edx, dword [ebx + 4]
mov ebx, dword [esp + 0x68]
cmp edx, edi
jl 0x4a279c
jg 0x4a2735
cmp eax, ecx
jb 0x4a279c
mov edx, dword [esp + 0x18]
mov eax, dword [edx]
mov esi, eax
sub esi, ecx
add esi, dword [esp + 0x14]
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x70]
je 0x4a2781
cmp byte [esi + 0xc5], 0
jne 0x4a2781
push dword [edx + 4]
push eax
push edi
push ecx
push dword [esi + 4]
push dword [esi]
push dword [esp + 0x3c]
push str.Excess_found_in_a_read:_excess___zu__size___I64d__maxdownload___I64d__bytecount___I64d
push ebx
call fcn.0049ccf0
push 1
push dword [esp + 0x94]
call fcn.0049d9d0
add esp, 0x2c
mov ecx, dword [esp + 0x18]
mov edx, 0
mov eax, dword [esi + 8]
sub eax, dword [ecx]
cmovs eax, edx
and dword [esi + 0x64], 0xfffffffe
mov dword [esp + 0x14], eax
jmp 0x4a27a0
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
push dword [ecx + 4]
sub dword [esp + 0x24], eax
push dword [ecx]
sbb dword [esp + 0x24], edx
push ebx
call fcn.004aaeb0
add esp, 0xc
cmp byte [esi + 0xc7], 0
jne 0x4a28dd
cmp dword [esp + 0x14], 0
jne 0x4a27e6
cmp dword [esi + 0x48], 0
jne 0x4a27ec
mov cl, byte [esp + 0x11]
test cl, cl
je 0x4a28d7
cmp dword [esi + 0x48], 0
je 0x4a283e
cmp byte [esi + 0xc5], 0
jne 0x4a283e
lea ebp, [ebx + 0x8b8]
push ebp
call fcn.00491fd0
mov edi, dword [esi + 8]
add esp, 4
mov edx, dword [esi + 0xc]
mov ecx, edi
and ecx, edx
cmp ecx, 0xffffffff
je 0x4a281f
xor ecx, ecx
cmp ecx, edx
jl 0x4a281f
jg 0x4a2821
cmp eax, edi
ja 0x4a2821
mov edi, eax
push ebp
call fcn.00491fe0
push edi
push eax
push 1
push ebx
call fcn.0049cd80
mov ebp, eax
add esp, 0x14
test ebp, ebp
jne 0x4a2acd
cmp dword [esi + 0x48], 2
jge 0x4a2878
cmp byte [ebx + 0x6e3], 0
jne 0x4a288d
mov eax, dword [esi + 0x80]
test eax, eax
je 0x4a288d
cmp byte [esi + 0xc5], 0
jne 0x4a2878
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x4a2878
push ecx
push dword [esi + 0x50]
push eax
push ebx
call fcn.004a0e00
add esp, 0x10
mov ebp, eax
mov edi, dword [esp + 0x6c]
mov dword [esi + 0x48], 0
test ebp, ebp
jne 0x4a2acd
jmp 0x4a28e1
cmp byte [esi + 0xc5], 0
jne 0x4a2878
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x6c]
test ecx, ecx
je 0x4a287c
mov eax, dword [edi + 0x1e8]
mov edx, dword [esi + 0x50]
test dword [eax + 0x44], 0xc000
je 0x4a28c3
push ecx
push edx
push ebx
call fcn.004ba510
add esp, 0xc
mov ebp, eax
jmp 0x4a287c
push dword [esp + 0x14]
push edx
push 1
push ebx
call fcn.0049cd80
add esp, 0x10
mov ebp, eax
jmp 0x4a287c
mov edi, dword [esp + 0x6c]
jmp 0x4a28e5
mov edi, dword [esp + 0x6c]
mov cl, byte [esp + 0x11]
mov eax, dword [edi + 0x1e8]
cmp dword [eax + 0x34], 0
je 0x4a28fd
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x4a2a28
test cl, cl
je 0x4a2905
and dword [esi + 0x64], 0xfffffffe
mov eax, dword [esi + 0x64]
test al, 0x10
jne 0x4a2a83
test al, 1
je 0x4a2a83
cmp dword [esp + 0x1c], 0
jl 0x4a2a83
jg 0x4a2930
cmp dword [esp + 0x20], 0
jbe 0x4a2a83
mov eax, dword [ebx + 0x18]
mov eax, dword [eax + 0x1e8]
mov eax, dword [eax + 0x44]
test al, 0xc
je 0x4a2952
push 1
push ebx
call fcn.0049c4f0
movzx eax, al
add esp, 8
test eax, eax
jmp 0x4a2963
test al, 0x30
jne 0x4a2969
push 0
push ebx
call fcn.0049c4f0
add esp, 8
test al, al
je 0x4a2a83
mov ecx, dword [esp + 0x34]
mov eax, ecx
dec ecx
mov dword [esp + 0x34], ecx
test eax, eax
je 0x4a2a83
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
jmp 0x4a2411
xor ebp, ebp
jmp 0x4a2a83
and dword [esi + 0x64], 0xfffffffe
jmp 0x4a2a83
mov ecx, dword [esp + 0x14]
test ecx, ecx
jle 0x4a2a83
push dword [ebx + 0xcb4]
push ecx
push str.Excess_found:_excess___zd_url___s__zero_length_body_
push ebx
call fcn.0049ccf0
add esp, 0x10
jmp 0x4a2a83
cmp eax, 6
jne 0x4a29e0
push str.Failed_reading_the_chunked_encoded_stream
push ebx
call fcn.0049cc20
mov ebp, dword [esp + 0x48]
add esp, 8
mov eax, ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret
push eax
call fcn.004ce120
push eax
push str._s_in_chunked_encoding
push ebx
call fcn.0049cc20
add esp, 0x10
mov ebp, 0x38
mov eax, ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret
push 2
push edi
call fcn.0049d9d0
mov eax, dword [esp + 0x80]
add esp, 8
mov ebp, 8
pop edi
pop esi
mov byte [eax], 1
mov eax, ebp
pop ebp
pop ebx
add esp, 0x54
ret
mov edx, dword [esi + 0x50]
add edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x30]
add eax, edx
mov dword [esi + 0x50], edx
mov edi, dword [ebx + 0x4b8]
lea ecx, [edi + ebp]
cmp eax, ecx
jbe 0x4a2a4d
mov eax, edi
sub eax, edx
add eax, ebp
jmp 0x4a2a51
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x6c]
lea ecx, [esp + 0x12]
push ecx
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x18]
push ecx
mov eax, dword [edi + 0x1e8]
push edi
push ebx
mov eax, dword [eax + 0x34]
call eax
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4a2acd
cmp byte [esp + 0x12], al
je 0x4a2a83
or dword [esi + 0x64], 1
mov eax, dword [esp + 0x34]
test eax, eax
jle 0x4a2a9b
cmp dword [esp + 0x1c], 0
jg 0x4a2aa9
jl 0x4a2a9b
cmp dword [esp + 0x20], 0
ja 0x4a2aa9
mov eax, dword [esp + 0x7c]
mov byte [ebx + 0xd5f], 1
mov byte [eax], 1
mov eax, dword [esi + 0x64]
and al, 3
cmp al, 2
jne 0x4a2acd
cmp byte [edi + 0x1ce], 0
je 0x4a2acd
push str.we_are_done_reading_and_this_is_set_to_close__stop_send
push ebx
call fcn.0049ccf0
add esp, 8
and dword [esi + 0x64], 0xfffffffd
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x54
ret