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

Disassembly:
sub esp, 0x50
push ebx
mov ebx, dword [esp + 0x58]
push ebp
push esi
mov esi, dword [esp + 0x68]
mov ebp, dword [ebx + 0x228]
mov eax, ebp
mov edx, dword [ebx + 0x22c]
push edi
xor edi, edi
mov byte [esp + 0x12], 0
or eax, edx
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], 0x64
mov dword [esp + 0x20], ebp
mov dword [esp + 0x1c], edx
jne 0x465cdc
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x1c], SysReAllocString
mov eax, dword [ebx + 0x8c0]
lea ecx, [esi + 0x10]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x74]
mov byte [eax], 0
mov eax, dword [esp + 0x78]
mov byte [eax], 0
lea eax, [esi + 0xba]
mov dword [esp + 0x2c], eax
mov ebp, dword [esi + 4]
mov edx, dword [ebx + 0x4b0]
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], ecx
mov ecx, dword [esi]
mov eax, ecx
and eax, ebp
cmp eax, 0xffffffff
je 0x465d3b
mov eax, dword [esp + 0x2c]
cmp byte [eax], 0
jne 0x465d3b
mov eax, dword [esp + 0x30]
sub ecx, dword [eax]
sbb ebp, dword [eax + 4]
test ebp, ebp
jg 0x465d3b
jl 0x465d39
cmp ecx, edx
jae 0x465d3b
mov edx, ecx
mov ebp, dword [esp + 0x68]
test edx, edx
je 0x465d71
lea eax, [esp + 0x14]
push eax
push edx
push dword [esp + 0x20]
push dword [ebp + 0x200]
push ebx
call fcn.004425c0
mov edi, eax
add esp, 0x14
cmp edi, 0x51
je 0x466241
test edi, edi
jg 0x466376
jmp 0x465d79
mov dword [esp + 0x14], 0
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx]
or eax, dword [ecx + 4]
jne 0x465dae
push 7
lea eax, [esp + 0x44]
push ebx
push eax
call fcn.00466d80
add esp, 0xc
cmp dword [esi + 0x70], 0
jle 0x465dae
lea eax, [esp + 0x50]
push eax
call fcn.0043f220
add esp, 4
movups xmm0, xmmword [eax]
movups xmmword [esi + 0x60], xmm0
mov eax, dword [esp + 0x70]
or dword [eax], 1
cmp dword [esp + 0x14], 0
jne 0x465dc9
cmp dword [esi + 0x88], 0
jne 0x465dc9
mov al, 1
jmp 0x465dcb
xor al, al
cmp dword [esp + 0x14], 0
mov byte [esp + 0x64], al
jg 0x465dda
test al, al
je 0x465dec
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov byte [eax + ecx], 0
mov al, byte [esp + 0x64]
jmp 0x465df0
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x14], 0
jne 0x465e06
mov dword [esi + 0x5c], 0
test al, al
je 0x46632c
mov dword [esi + 0x4c], ecx
mov eax, dword [ebp + 0x1e8]
mov eax, dword [eax + 0x34]
test eax, eax
je 0x465e3b
lea ecx, [esp + 0x12]
push ecx
lea ecx, [esp + 0x18]
push ecx
push ebp
push ebx
call eax
mov edi, eax
add esp, 0x10
test edi, edi
jne 0x466376
cmp byte [esp + 0x12], al
jne 0x46632c
mov eax, dword [esp + 0x24]
mov dword [esp + 0x2c], eax
cmp byte [eax], 0
je 0x465ebb
lea eax, [esp + 0x13]
mov byte [esp + 0x13], 0
push eax
lea eax, [esp + 0x18]
push eax
push ebp
push ebx
call fcn.0045ba40
mov edi, eax
add esp, 0x10
test edi, edi
jne 0x466376
mov eax, dword [ebp + 0x1e8]
mov eax, dword [eax + 0x34]
test eax, eax
je 0x465eb0
cmp dword [esi + 0xc], edi
jg 0x465eb0
jl 0x465e84
cmp dword [esi + 8], edi
ja 0x465eb0
cmp dword [esp + 0x14], 0
jle 0x465eb0
lea ecx, [esp + 0x12]
push ecx
lea ecx, [esp + 0x18]
push ecx
push ebp
push ebx
call eax
mov edi, eax
add esp, 0x10
test edi, edi
jne 0x466376
cmp byte [esp + 0x12], al
jne 0x46632c
cmp byte [esp + 0x13], 0
jne 0x466248
cmp byte [esi + 0xba], 0
mov cl, byte [esp + 0x64]
jne 0x4661ab
cmp dword [esp + 0x14], 0
jg 0x465edb
test cl, cl
je 0x4661ab
cmp byte [ebx + 0x14c], 0
jne 0x4662b3
cmp dword [esi + 0x88], 0
jne 0x465f29
test cl, cl
jne 0x465f29
mov eax, dword [ebp + 0x1e8]
test dword [eax + 0x44], 0x40003
je 0x465f29
push dword [esp + 0x74]
push ebp
push ebx
call fcn.0045a920
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x466376
mov eax, dword [esp + 0x74]
cmp byte [eax], 0
jne 0x466376
inc dword [esi + 0x88]
cmp byte [ebx + 0x6d3], 0
je 0x465f7b
cmp dword [esi + 0x44], 0
je 0x465f69
lea edi, [ebx + 0x8b0]
push edi
call fcn.0042f290
add esp, 4
push eax
push edi
call fcn.0042f2a0
add esp, 4
push eax
push 3
push ebx
call fcn.00442040
add esp, 0x10
cmp dword [esi + 0x44], 1
jne 0x465f7b
push dword [esp + 0x14]
push dword [esi + 0x4c]
push 3
push ebx
call fcn.00442040
add esp, 0x10
cmp byte [esi + 0xbf], 0
je 0x465fcb
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x18]
push eax
push dword [esp + 0x1c]
push dword [esi + 0x4c]
push ebx
call fcn.004690d0
add esp, 0x14
test eax, eax
jg 0x46626e
cmp eax, 0xffffffff
jne 0x465fcb
and dword [esi + 0x5c], 0xfffffffe
mov edx, dword [ebp + 0x10]
mov eax, edx
mov ecx, dword [ebp + 0x14]
or eax, ecx
je 0x465fcb
push ecx
push edx
push str.Leftovers_after_chunking:___I64du_bytes
push ebx
call fcn.004421b0
add esp, 0x10
cmp dword [esi + 0x44], 1
lea ebp, [esi + 0x44]
jne 0x465ffa
cmp byte [esi + 0xbd], 0
jne 0x465ffa
lea eax, [ebx + 0x8b0]
push eax
call fcn.0042f290
add esp, 4
lea ebp, [esi + 0x44]
xor ecx, ecx
add dword [esi + 0x10], eax
adc ecx, dword [esi + 0x14]
mov dword [esi + 0x14], ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
cmp ecx, 0xffffffff
jne 0x466009
cmp edi, ecx
je 0x466082
mov eax, dword [esp + 0x14]
cdq
mov dword [esp + 0x24], eax
mov eax, dword [esi + 0x10]
add dword [esp + 0x24], eax
adc edx, dword [esi + 0x14]
cmp edx, edi
jl 0x466082
jg 0x466028
cmp dword [esp + 0x24], ecx
jb 0x466082
mov edx, eax
sub edx, ecx
add edx, dword [esp + 0x14]
mov dword [esp + 0x34], edx
je 0x466067
cmp byte [esi + 0xbd], 0
jne 0x466067
push dword [esi + 0x14]
push eax
push edi
push ecx
push dword [esi + 4]
push dword [esi]
push edx
push str.Excess_found_in_a_read:_excess___zu__size___I64d__maxdownload___I64d__bytecount___I64d
push ebx
call fcn.004421b0
push 1
push dword [esp + 0x90]
call fcn.00443290
add esp, 0x2c
mov eax, dword [esi + 8]
sub eax, dword [esi + 0x10]
mov dword [esp + 0x14], eax
jns 0x46607b
mov dword [esp + 0x14], 0
and dword [esi + 0x5c], 0xfffffffe
lea ebp, [esi + 0x44]
mov eax, dword [esp + 0x14]
mov ecx, dword [esi + 0x14]
cdq
mov edi, eax
add edi, dword [esi + 0x10]
mov dword [esi + 0x10], edi
adc ecx, edx
sub dword [esp + 0x20], eax
push ecx
sbb dword [esp + 0x20], edx
push edi
push ebx
mov dword [esi + 0x14], ecx
call fcn.00466aa0
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x466376
cmp byte [esi + 0xbf], al
jne 0x4661a3
cmp dword [esp + 0x14], eax
jne 0x4660d7
cmp dword [ebp], eax
jne 0x4660dd
mov cl, byte [esp + 0x64]
test cl, cl
je 0x46619d
cmp dword [ebp], 0
je 0x466138
cmp byte [esi + 0xbd], 0
jne 0x466138
lea eax, [ebx + 0x8b0]
push eax
call fcn.0042f290
mov edi, dword [esi + 8]
add esp, 4
mov edx, dword [esi + 0xc]
mov ecx, edi
and ecx, edx
cmp ecx, 0xffffffff
je 0x466110
xor ecx, ecx
cmp ecx, edx
jl 0x466110
jg 0x466112
cmp eax, edi
ja 0x466112
mov edi, eax
mov ecx, 0x8b0
mov eax, ebx
add eax, ecx
push eax
call fcn.0042f2a0
push edi
push eax
push 1
push ebx
call fcn.00442510
mov edi, eax
add esp, 0x14
test edi, edi
jne 0x466376
cmp dword [esi + 0x44], 2
jge 0x466188
cmp byte [esi + 0xbd], 0
jne 0x466188
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x68]
test ecx, ecx
je 0x46618c
mov eax, dword [ebp + 0x1e8]
mov edx, dword [esi + 0x4c]
test dword [eax + 0x44], 0xc000
je 0x466174
push ecx
push edx
push ebx
call fcn.004507b0
add esp, 0xc
mov edi, eax
jmp 0x46618c
push dword [esp + 0x14]
push edx
push 1
push ebx
call fcn.00442510
add esp, 0x10
mov edi, eax
jmp 0x46618c
mov ebp, dword [esp + 0x68]
mov dword [esi + 0x44], 0
test edi, edi
jne 0x466376
jmp 0x4661a7
mov ebp, dword [esp + 0x68]
jmp 0x4661ab
mov ebp, dword [esp + 0x68]
mov cl, byte [esp + 0x64]
mov eax, dword [ebp + 0x1e8]
cmp dword [eax + 0x34], 0
je 0x4661c3
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x4662d4
test cl, cl
je 0x4661cb
and dword [esi + 0x5c], 0xfffffffe
mov eax, dword [esi + 0x5c]
test al, 0x10
jne 0x46632c
test al, 1
je 0x46632c
cmp dword [esp + 0x1c], 0
jl 0x46632c
jg 0x4661f6
cmp dword [esp + 0x20], 0
jbe 0x46632c
mov eax, dword [ebx + 0x18]
mov eax, dword [eax + 0x1e8]
mov eax, dword [eax + 0x44]
test al, 0xc
je 0x46620a
push 1
jmp 0x466210
test al, 0x30
jne 0x466221
push 0
push ebx
call fcn.004419b0
add esp, 8
test al, al
je 0x46632c
mov ecx, dword [esp + 0x38]
mov eax, ecx
dec ecx
mov dword [esp + 0x38], ecx
test eax, eax
je 0x46632c
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
jmp 0x465d01
xor edi, edi
jmp 0x46632c
mov ecx, dword [esp + 0x14]
test ecx, ecx
jle 0x46632c
push dword [ebx + 0xcbc]
push ecx
push str.Excess_found:_excess___zd_url___s__zero_length_body_
push ebx
call fcn.004421b0
add esp, 0x10
jmp 0x46632c
cmp eax, 6
jne 0x46628f
push str.Failed_reading_the_chunked_encoded_stream
push ebx
call fcn.004420e0
mov edi, dword [esp + 0x44]
add esp, 8
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret
push eax
call fcn.00469040
push eax
push str._s_in_chunked_encoding
push ebx
call fcn.004420e0
add esp, 0x10
mov edi, 0x38
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret
push 2
push ebp
call fcn.00443290
mov eax, dword [esp + 0x7c]
add esp, 8
mov edi, 8
mov byte [eax], 1
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret
mov edx, dword [esi + 0x4c]
add edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
add eax, edx
mov dword [esi + 0x4c], edx
mov edi, dword [ebx + 0x4b0]
add ecx, edi
cmp eax, ecx
jbe 0x4662fa
mov eax, edi
sub eax, edx
add eax, dword [esp + 0x18]
jmp 0x4662fe
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x12]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x1e8]
push ecx
lea ecx, [esp + 0x18]
push ecx
mov eax, dword [eax + 0x34]
push ebp
push ebx
call eax
mov edi, eax
add esp, 0x10
test edi, edi
jne 0x466376
cmp byte [esp + 0x12], al
je 0x46632c
or dword [esi + 0x5c], 1
mov eax, dword [esp + 0x38]
test eax, eax
jle 0x466344
cmp dword [esp + 0x1c], 0
jg 0x466352
jl 0x466344
cmp dword [esp + 0x20], 0
ja 0x466352
mov eax, dword [esp + 0x78]
mov byte [ebx + 0xd6f], 1
mov byte [eax], 1
mov eax, dword [esi + 0x5c]
and al, 3
cmp al, 2
jne 0x466376
cmp byte [ebp + 0x1ce], 0
je 0x466376
push str.we_are_done_reading_and_this_is_set_to_close__stop_send
push ebx
call fcn.004421b0
add esp, 8
and dword [esi + 0x5c], 0xfffffffd
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret