Function at 0x489de0
Capabilities:
Check http status code

Disassembly:
sub esp, 0xc
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x20]
lea esi, [edi + 0x18]
mov edi, edi
mov eax, dword [esi + 0x5c]
mov ebx, dword [esp + 0x28]
mov dword [esi + 0x60], eax
mov ecx, dword [ebx]
push ecx
push 0xa
push eax
call fcn.00586170
add esp, 0xc
mov dword [esi + 0x64], eax
test eax, eax
je 0x48a8ac
sub eax, dword [esi + 0x5c]
inc eax
mov ebp, eax
mov eax, ebx
sub dword [eax], ebp
mov eax, dword [esi + 0x64]
inc eax
mov dword [esi + 0x5c], eax
sub eax, dword [esi + 0x60]
mov ebx, edi
push eax
call fcn.00488490
add esp, 4
test eax, eax
jne 0x48aa1c
mov edx, dword [esi + 0x54]
mov dword [esi + 0x64], edx
mov eax, dword [edi + 0x51c]
xor edx, edx
mov dword [esi + 0x68], eax
cmp dword [esi + 0x50], edx
jne 0x489f08
cmp dword [esi + 0x58], 5
jbe 0x489f08
mov ebx, dword [esp + 0x24]
test dword [ebx + 0x30], 0x40000
mov eax, dword [edi + 0x51c]
je 0x489e89
push 5
push eax
push str.RTSP_
call fcn.00475ad0
add esp, 0xc
neg eax
sbb eax, eax
neg eax
jmp 0x489e96
mov ebx, eax
mov eax, edi
call fcn.00488400
mov ebx, dword [esp + 0x24]
test eax, eax
je 0x48a901
xor edx, edx
mov eax, dword [esi + 0x68]
mov cl, byte [eax]
cmp cl, 0xa
je 0x48a6fa
cmp cl, 0xd
je 0x48a6ff
mov ecx, dword [esi + 0x50]
lea ebp, [ecx + 1]
mov dword [esi + 0x50], ebp
cmp ecx, edx
jne 0x48a0a3
mov ecx, dword [ebx + 0x30]
test cl, 1
je 0x489f4d
mov ebp, dword [esp + 0x24]
lea ebx, [esi + 0x78]
push ebx
add ebp, 0xb0
push ebp
lea ecx, [esp + 0x28]
push ecx
push str._HTTP__d._d__3d
push eax
call fcn.00589f3f
add esp, 0x14
cmp eax, 3
jne 0x489f0e
mov eax, dword [esp + 0x20]
lea edx, [eax + eax*4]
add edx, edx
add dword [ebp], edx
jmp 0x489fa0
mov ebx, dword [esp + 0x24]
jmp 0x489ea0
mov eax, dword [esi + 0x68]
push ebx
push str._HTTP__3d
push eax
call fcn.00589f3f
add esp, 0xc
mov dword [ebp], 0xa
test eax, eax
jne 0x489fa0
mov ebx, dword [esi + 0x68]
mov eax, edi
call fcn.00488400
test eax, eax
je 0x48a935
mov dword [esi + 0x78], 0xc8
mov dword [ebp], 0xa
jmp 0x489fa0
test ecx, 0x40000
je 0x48a935
mov ebx, dword [esp + 0x24]
lea ecx, [esi + 0x78]
push ecx
add ebx, 0xb4
push ebx
lea ecx, [esp + 0x18]
push ecx
push str._RTSP__d._d__3d
push eax
call fcn.00589f3f
add esp, 0x14
cmp eax, 3
jne 0x48a935
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x24]
lea edx, [eax + eax*4]
add edx, edx
add dword [ebx], edx
add ebp, 0xb0
mov dword [ebp], 0xb
mov eax, dword [esi + 0x78]
mov dword [edi + 0x8664], eax
mov eax, dword [edi + 0x8600]
mov ecx, dword [ebp]
mov dword [edi + 0x866c], ecx
test eax, eax
je 0x489fc1
cmp eax, dword [ebp]
jle 0x489fca
mov edx, dword [ebp]
mov dword [edi + 0x8600], edx
cmp dword [edi + 0x2b0], 0
je 0x48a028
mov eax, dword [esi + 0x78]
cmp eax, 0x190
jl 0x48a028
mov ebx, dword [esp + 0x24]
cmp eax, 0x191
jne 0x489ff1
cmp dword [ebx + 0x160], 0
jne 0x48a02c
cmp eax, 0x197
jne 0x48a001
cmp dword [ebx + 0x164], 0
jne 0x48a02c
mov ecx, dword [edi + 0x8628]
or ecx, dword [edi + 0x862c]
je 0x48a01f
cmp dword [edi + 0x210], 1
jne 0x48a01f
cmp eax, 0x1a0
je 0x48a02c
mov eax, dword [esi + 0x78]
push eax
jmp 0x48a972
mov ebx, dword [esp + 0x24]
mov ebp, dword [ebp]
cmp ebp, 0xa
jne 0x48a04e
push str.HTTP_1.0__assume_close_after_body_n
push edi
call fcn.00474910
add esp, 8
mov dword [ebx + 0x150], 1
jmp 0x48a066
cmp ebp, 0xb
jl 0x48a066
cmp dword [ebx + 0x150], 0
jne 0x48a066
mov dword [ebx + 0x1ec], 1
mov eax, dword [esi + 0x78]
sub eax, 0xcc
je 0x48a07a
sub eax, 0x64
je 0x48a07a
sub eax, 0x70
jne 0x48a0a3
xor eax, eax
cmp dword [edi + 0x204], eax
je 0x48a08e
mov dword [edi + 0x8674], 1
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
mov dword [esi + 0xb4], 1
cmp dword [esi + 0xb4], 0
jne 0x48a15b
cmp dword [edi + 0x30c], 0
jne 0x48a15b
mov edx, dword [esi + 0x68]
push 0xf
push edx
push str.Content_Length:
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a15b
mov eax, dword [esi + 0x68]
push 0xa
add eax, 0xf
push 0
push eax
call fcn.0058a828
mov ebx, dword [edi + 0x278]
mov ecx, dword [edi + 0x27c]
mov ebp, ebx
add esp, 0xc
or ebp, ecx
je 0x48a10f
cmp edx, ecx
jg 0x48a946
jl 0x48a10f
cmp eax, ebx
ja 0x48a946
test edx, edx
jl 0x48a138
jg 0x48a119
test eax, eax
jb 0x48a138
push edx
push eax
push edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
call fcn.00478f30
mov ebp, dword [esp + 0x30]
add esp, 0xc
jmp 0x48a69c
mov ebp, dword [esp + 0x24]
push edx
push eax
push str.Negative_content_length:__lld__closing_after_transfer_n
push edi
mov dword [ebp + 0x150], 1
call fcn.00474910
add esp, 0x10
jmp 0x48a69c
mov ecx, dword [esi + 0x68]
push 0xd
push ecx
push str.Content_Type:
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a1be
mov edx, dword [esi + 0x68]
push edx
call fcn.00487630
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x48a961
cmp byte [ebx], 0
jne 0x48a1a0
push ebx
call dword [0x6277a4]
mov ebp, dword [esp + 0x28]
add esp, 4
jmp 0x48a69c
mov eax, dword [edi + 0x868c]
push eax
call fcn.0046b7a0
mov ebp, dword [esp + 0x28]
add esp, 4
mov dword [edi + 0x868c], ebx
jmp 0x48a69c
mov ebp, dword [esp + 0x24]
mov ebx, 0xa
cmp dword [ebp + 0xb0], ebx
jne 0x48a20f
cmp dword [ebp + 0x15c], 0
je 0x48a20f
mov ecx, dword [esi + 0x68]
push str.keep_alive
push str.Proxy_Connection:
push ecx
call fcn.00488150
add esp, 0xc
test eax, eax
je 0x48a20f
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push edi
mov dword [ebp + 0x150], 0
call fcn.00474910
add esp, 8
jmp 0x48a69c
cmp dword [ebp + 0xb0], 0xb
jne 0x48a258
cmp dword [ebp + 0x15c], 0
je 0x48a258
mov edx, dword [esi + 0x68]
push str.close
push str.Proxy_Connection:
push edx
call fcn.00488150
add esp, 0xc
test eax, eax
je 0x48a258
push str.HTTP_1.1_proxy_connection_set_close__n
push edi
mov dword [ebp + 0x150], 1
call fcn.00474910
add esp, 8
jmp 0x48a69c
cmp dword [ebp + 0xb0], ebx
jne 0x48a297
mov eax, dword [esi + 0x68]
push str.keep_alive
push str.Connection:
push eax
call fcn.00488150
add esp, 0xc
test eax, eax
je 0x48a297
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
mov dword [ebp + 0x150], 0
call fcn.00474910
add esp, 8
jmp 0x48a69c
mov ecx, dword [esi + 0x68]
push str.close
push str.Connection:
push ecx
call fcn.00488150
add esp, 0xc
test eax, eax
je 0x48a2c0
mov dword [ebp + 0x150], 1
jmp 0x48a69c
mov edx, dword [esi + 0x68]
push str.chunked
push str.Transfer_Encoding:
push edx
call fcn.00488150
add esp, 0xc
test eax, eax
je 0x48a2fb
test dword [ebp + 0x30], 0x40000
jne 0x48a2fb
push ebp
mov dword [esi + 0xc8], 1
call fcn.0048ec70
add esp, 4
jmp 0x48a69c
mov eax, dword [esi + 0x68]
push 8
push eax
push str.Trailer:
call fcn.00475ad0
add esp, 0xc
test eax, eax
jne 0x48a692
mov ecx, dword [esi + 0x68]
push 9
push ecx
push str.Trailers:
call fcn.00475ad0
add esp, 0xc
test eax, eax
jne 0x48a692
mov edx, dword [esi + 0x68]
push 0x11
push edx
push str.Content_Encoding:
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a436
cmp dword [edi + 0x348], 0
je 0x48a436
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0x11]
add ebx, 0x11
test al, al
je 0x48a37e
movzx eax, al
push eax
call fcn.0058a37c
add esp, 4
test eax, eax
je 0x48a37e
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x48a366
push 8
push ebx
push str.identity
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a3a1
mov dword [esi + 0x88], 0
jmp 0x48a69c
push 7
push ebx
push str.deflate
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a3c4
mov dword [esi + 0x88], 1
jmp 0x48a69c
push 4
push ebx
push str.gzip
call fcn.00475ad0
add esp, 0xc
test eax, eax
jne 0x48a427
push 6
push ebx
push str.x_gzip
call fcn.00475ad0
add esp, 0xc
test eax, eax
jne 0x48a427
push 8
push ebx
push str.compress
call fcn.00475ad0
add esp, 0xc
test eax, eax
jne 0x48a418
push 0xa
push ebx
push str.x_compress
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a69c
mov dword [esi + 0x88], 3
jmp 0x48a69c
mov dword [esi + 0x88], 2
jmp 0x48a69c
mov ecx, dword [esi + 0x68]
push 0xe
push ecx
push str.Content_Range:
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a4b4
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0xe]
add ebx, 0xe
test al, al
je 0x48a478
lea ebx, [ebx]
movzx edx, al
push edx
call fcn.0058a277
add esp, 4
test eax, eax
jne 0x48a478
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x48a460
push 0xa
push 0
push ebx
call fcn.0058a828
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edx
mov eax, dword [edi + 0x8628]
add esp, 0xc
cmp eax, dword [esi + 0x70]
jne 0x48a69c
mov ecx, dword [edi + 0x862c]
cmp ecx, edx
jne 0x48a69c
mov dword [esi + 0x6c], 1
jmp 0x48a69c
cmp dword [edi + 0x404], 0
je 0x48a51c
mov edx, dword [esi + 0x68]
push 0xb
push edx
push str.Set_Cookie:
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a51c
push 2
push 2
push edi
call fcn.0047aa60
mov eax, dword [ebp + 0x1d8]
add esp, 0xc
test eax, eax
jne 0x48a4ee
mov eax, dword [ebp + 0x7c]
mov ecx, dword [edi + 0x8618]
mov edx, dword [esi + 0x68]
push ecx
push eax
mov eax, dword [edi + 0x404]
add edx, 0xb
push edx
push 1
push eax
push edi
call fcn.004734c0
push 2
push edi
call fcn.0047aaa0
add esp, 0x20
jmp 0x48a69c
mov ecx, dword [esi + 0x68]
push 0xe
push ecx
push str.Last_Modified:
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a58e
cmp dword [edi + 0x204], 0
jne 0x48a545
cmp dword [edi + 0x294], 0
je 0x48a58e
push 0
call fcn.005829ad
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x68]
mov dword [esp + 0x1c], edx
lea edx, [esp + 0x18]
push edx
add eax, 0xe
push eax
call fcn.004901d0
add esp, 0xc
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
cmp dword [edi + 0x294], 0
je 0x48a69c
mov ecx, eax
mov dword [edi + 0x8670], ecx
jmp 0x48a69c
mov edx, dword [esi + 0x68]
push 0x11
push edx
push str.WWW_Authenticate:
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a5af
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x48a5d0
mov eax, dword [esi + 0x68]
push 0x13
push eax
push str.Proxy_authenticate:
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a5eb
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x48a5eb
mov ecx, dword [esi + 0x68]
push ecx
push eax
push ebp
call fcn.00487bf0
add esp, 0xc
test eax, eax
jne 0x48aa1c
jmp 0x48a69c
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x48a672
cmp eax, 0x190
jge 0x48a672
mov edx, dword [esi + 0x68]
push 9
push edx
push str.Location:
call fcn.00475ad0
add esp, 0xc
test eax, eax
je 0x48a672
mov eax, dword [esi + 0x68]
push eax
call fcn.00487630
add esp, 4
test eax, eax
je 0x48a961
cmp byte [eax], 0
jne 0x48a638
push eax
call dword [0x6277a4]
add esp, 4
jmp 0x48a69c
cmp dword [edi + 0x2b4], 0
mov dword [edi + 0xd0], eax
je 0x48a69c
push eax
call dword [0x6277ac]
add esp, 4
mov dword [edi + 0xd4], eax
test eax, eax
je 0x48a961
push ebp
call fcn.00487840
add esp, 4
test eax, eax
jne 0x48aa1c
jmp 0x48a69c
test dword [ebp + 0x30], 0x40000
je 0x48a69c
mov ecx, dword [esi + 0x68]
push ecx
push ebp
call fcn.0047bc70
add esp, 8
test eax, eax
jne 0x48aa1c
jmp 0x48a69c
mov dword [esi + 0xd8], 1
cmp dword [edi + 0x2bc], 0
mov ebx, 2
je 0x48a6af
mov ebx, 3
cmp dword [edi + 0x2d8], 0
je 0x48a6cc
mov edx, dword [esi + 0x58]
mov eax, dword [esi + 0x68]
push ebp
push edx
push eax
push 1
push edi
call fcn.00474780
add esp, 0x14
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x68]
push ecx
push edx
push ebx
push ebp
call fcn.00474c70
add esp, 0x10
test eax, eax
jne 0x48aa1c
mov eax, dword [esi + 0x58]
add dword [edi + 0x8678], eax
mov ecx, dword [esi + 0x58]
add dword [edi + 0x48], ecx
jmp 0x48a879
cmp cl, 0xd
jne 0x48a703
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x48a70f
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x48a73f
cmp eax, 0xc7
jg 0x48a73f
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], edx
cmp dword [esi + 0x84], edx
je 0x48a786
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], edx
jmp 0x48a786
mov eax, dword [esi]
and eax, dword [esi + 4]
mov dword [esi + 0x48], edx
cmp eax, 0xffffffff
jne 0x48a786
cmp dword [esi + 0xc8], edx
jne 0x48a786
cmp dword [ebx + 0x150], edx
jne 0x48a786
cmp dword [ebx + 0xb0], 0xb
jl 0x48a786
test dword [ebx + 0x30], 0x40000
jne 0x48a786
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push edi
call fcn.00474910
add esp, 8
mov dword [ebx + 0x150], 1
cmp dword [esi + 0x78], 0x1a1
jne 0x48a7a0
and dword [esi + 0xa8], 0xfffffffd
mov dword [esi + 0x84], 3
push ebx
call fcn.00487d70
add esp, 4
test eax, eax
jne 0x48a96e
lea ecx, [eax + 2]
cmp dword [edi + 0x2bc], eax
je 0x48a7bf
lea ecx, [eax + 3]
mov eax, dword [edi + 0x51c]
mov ebx, dword [esi + 0x68]
sub ebx, eax
push ebx
push eax
push ecx
mov ecx, dword [esp + 0x30]
push ecx
call fcn.00474c70
add esp, 0x10
test eax, eax
jne 0x48aa1c
add dword [edi + 0x48], ebx
add dword [edi + 0x8678], ebx
mov eax, dword [esi + 0x78]
cmp eax, 0x64
mov ecx, dword [edi + 0x48]
jl 0x48a7fd
cmp eax, 0xc7
jle 0x48a7ff
xor ecx, ecx
mov edx, dword [edi + 0x8628]
or edx, dword [edi + 0x862c]
mov dword [edi + 0x4c], ecx
je 0x48a82f
cmp dword [edi + 0x210], 1
jne 0x48a82f
cmp dword [esi + 0x78], 0x1a0
jne 0x48a82f
mov ebp, dword [esp + 0x2c]
mov dword [ebp], 1
jmp 0x48a86f
mov ebp, dword [esp + 0x2c]
cmp dword [ebp], 0
jne 0x48a86f
mov eax, dword [esp + 0x24]
push eax
call fcn.00488540
add esp, 4
test eax, eax
jne 0x48aa1c
mov ecx, dword [esp + 0x24]
cmp dword [ecx + 0x18c], eax
je 0x48a86f
push str.Keep_sending_data_to_get_tossed_away__n
push edi
call fcn.00474910
add esp, 8
or dword [esi + 0xa8], 2
cmp dword [esi + 0x48], 0
je 0x48a98d
mov edx, dword [edi + 0x51c]
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x58], 0
mov dword [esi + 0x54], edx
cmp dword [eax], 0
jne 0x48aa1a
mov ecx, dword [esi + 0x5c]
cmp byte [ecx], 0
jne 0x489df0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xc
ret
mov edx, dword [ebx]
push edx
mov ebx, edi
call fcn.00488490
add esp, 4
test eax, eax
jne 0x48aa1c
cmp dword [esi + 0x50], eax
jne 0x48aa1a
cmp dword [esi + 0x58], 5
jbe 0x48aa1a
mov ecx, dword [edi + 0x51c]
mov eax, dword [esp + 0x24]
push edi
call fcn.00488460
add esp, 4
test eax, eax
jne 0x48aa1a
pop edi
mov dword [esi + 0x48], eax
mov dword [esi + 0x4c], 2
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov dword [esi + 0x48], 0
cmp dword [eax], 0
je 0x48a922
pop edi
mov dword [esi + 0x4c], 1
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xc
ret
pop edi
mov dword [esi + 0x4c], 2
pop esi
mov dword [eax], ebp
pop ebp
xor eax, eax
pop ebx
add esp, 0xc
ret
pop edi
mov dword [esi + 0x48], 0
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xc
ret
push str.Maximum_file_size_exceeded
push edi
call fcn.004749a0
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 0x3f
pop ebx
add esp, 0xc
ret
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0xc
ret
mov ecx, dword [esi + 0x78]
push ecx
push str.The_requested_URL_returned_error:__d
push edi
call fcn.004749a0
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 0x16
pop ebx
add esp, 0xc
ret
cmp dword [edi + 0x2c8], 0
je 0x48a99f
mov dword [ebp], 1
jmp 0x48a9b6
cmp dword [esi + 0xc8], 0
je 0x48a9b6
or eax, 0xffffffff
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
mov eax, dword [esi]
mov ecx, dword [esi + 4]
cmp eax, 0xffffffff
jne 0x48a9c4
cmp ecx, eax
je 0x48a9da
push ecx
push eax
push edi
call fcn.00478f30
mov edx, dword [esi]
mov eax, dword [esi + 4]
add esp, 0xc
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], eax
cmp dword [esi + 0x10], 0
jne 0x48a9ef
cmp dword [esi + 0x14], 0
jne 0x48a9ef
mov dword [ebp], 1
jmp 0x48a9f5
cmp dword [ebp], 0
je 0x48a9fc
and dword [esi + 0xa8], 0xfffffffe
cmp dword [edi + 0x2d8], 0
je 0x48aa1a
mov ecx, dword [esp + 0x24]
mov edx, dword [esi + 0x60]
push ecx
push ebx
push edx
push 1
push edi
call fcn.00474780
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret