Function at 0x4954c0
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.004a7b70
add esp, 0xc
mov dword [esi + 0x64], eax
test eax, eax
je 0x495f67
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.00493b90
add esp, 4
test eax, eax
jne 0x4960d7
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 0x4955c5
cmp dword [esi + 0x58], 5
jbe 0x4955c5
mov ebx, dword [esp + 0x24]
mov eax, dword [edi + 0x51c]
push edi
mov ecx, ebx
call fcn.00493b70
add esp, 4
test eax, eax
je 0x495fbc
xor edx, edx
mov eax, dword [esi + 0x68]
mov cl, byte [eax]
cmp cl, 0xa
je 0x495db5
cmp cl, 0xd
je 0x495dba
mov ecx, dword [esi + 0x50]
lea ebp, [ecx + 1]
mov dword [esi + 0x50], ebp
cmp ecx, edx
jne 0x495760
mov ecx, dword [ebx + 0x30]
test cl, 1
je 0x49560a
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.004ac57e
add esp, 0x14
cmp eax, 3
jne 0x4955cb
mov eax, dword [esp + 0x20]
lea edx, [eax + eax*4]
add edx, edx
add dword [ebp], edx
jmp 0x49565d
mov ebx, dword [esp + 0x24]
jmp 0x49555d
mov eax, dword [esi + 0x68]
push ebx
push str._HTTP__3d
push eax
call fcn.004ac57e
add esp, 0xc
mov dword [ebp], 0xa
test eax, eax
jne 0x49565d
mov ebx, dword [esi + 0x68]
mov eax, edi
call fcn.00493af0
test eax, eax
je 0x495ff0
mov dword [esi + 0x78], 0xc8
mov dword [ebp], 0xa
jmp 0x49565d
test ecx, 0x40000
je 0x495ff0
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.004ac57e
add esp, 0x14
cmp eax, 3
jne 0x495ff0
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 0x49567e
cmp eax, dword [ebp]
jle 0x495687
mov edx, dword [ebp]
mov dword [edi + 0x8600], edx
cmp dword [edi + 0x2b0], 0
je 0x4956e5
mov eax, dword [esi + 0x78]
cmp eax, 0x190
jl 0x4956e5
mov ebx, dword [esp + 0x24]
cmp eax, 0x191
jne 0x4956ae
cmp dword [ebx + 0x140], 0
jne 0x4956e9
cmp eax, 0x197
jne 0x4956be
cmp dword [ebx + 0x144], 0
jne 0x4956e9
mov ecx, dword [edi + 0x8628]
or ecx, dword [edi + 0x862c]
je 0x4956dc
cmp dword [edi + 0x210], 1
jne 0x4956dc
cmp eax, 0x1a0
je 0x4956e9
mov eax, dword [esi + 0x78]
push eax
jmp 0x49602d
mov ebx, dword [esp + 0x24]
mov ebp, dword [ebp]
cmp ebp, 0xa
jne 0x49570b
push str.HTTP_1.0__assume_close_after_body_n
push edi
call fcn.00484400
add esp, 8
mov dword [ebx + 0x130], 1
jmp 0x495723
cmp ebp, 0xb
jl 0x495723
cmp dword [ebx + 0x130], 0
jne 0x495723
mov dword [ebx + 0x1cc], 1
mov eax, dword [esi + 0x78]
sub eax, 0xcc
je 0x495737
sub eax, 0x64
je 0x495737
sub eax, 0x70
jne 0x495760
xor eax, eax
cmp dword [edi + 0x204], eax
je 0x49574b
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 0x495818
cmp dword [edi + 0x30c], 0
jne 0x495818
mov edx, dword [esi + 0x68]
push 0xf
push edx
push 0x4f8388
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495818
mov eax, dword [esi + 0x68]
push 0xa
add eax, 0xf
push 0
push eax
call fcn.004acacb
mov ebx, dword [edi + 0x278]
mov ecx, dword [edi + 0x27c]
mov ebp, ebx
add esp, 0xc
or ebp, ecx
je 0x4957cc
cmp edx, ecx
jg 0x496001
jl 0x4957cc
cmp eax, ebx
ja 0x496001
test edx, edx
jl 0x4957f5
jg 0x4957d6
test eax, eax
jb 0x4957f5
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.00498e30
mov ebp, dword [esp + 0x30]
add esp, 0xc
jmp 0x495d57
mov ebp, dword [esp + 0x24]
push edx
push eax
push str.Negative_content_length:__lld__closing_after_transfer_n
push edi
mov dword [ebp + 0x130], 1
call fcn.00484400
add esp, 0x10
jmp 0x495d57
mov ecx, dword [esi + 0x68]
push 0xd
push ecx
push 0x4de760
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x49587b
mov edx, dword [esi + 0x68]
push edx
call fcn.00492e00
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x49601c
cmp byte [ebx], 0
jne 0x49585d
push ebx
call dword [0x50a048]
mov ebp, dword [esp + 0x28]
add esp, 4
jmp 0x495d57
mov eax, dword [edi + 0x868c]
push eax
call fcn.0047b980
mov ebp, dword [esp + 0x28]
add esp, 4
mov dword [edi + 0x868c], ebx
jmp 0x495d57
mov ebp, dword [esp + 0x24]
mov ebx, 0xa
cmp dword [ebp + 0xb0], ebx
jne 0x4958cc
cmp dword [ebp + 0x13c], 0
je 0x4958cc
mov ecx, dword [esi + 0x68]
push str.keep_alive
push str.Proxy_Connection:
push ecx
call fcn.004938a0
add esp, 0xc
test eax, eax
je 0x4958cc
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push edi
mov dword [ebp + 0x130], 0
call fcn.00484400
add esp, 8
jmp 0x495d57
cmp dword [ebp + 0xb0], 0xb
jne 0x495915
cmp dword [ebp + 0x13c], 0
je 0x495915
mov edx, dword [esi + 0x68]
push str.close
push str.Proxy_Connection:
push edx
call fcn.004938a0
add esp, 0xc
test eax, eax
je 0x495915
push str.HTTP_1.1_proxy_connection_set_close__n
push edi
mov dword [ebp + 0x130], 1
call fcn.00484400
add esp, 8
jmp 0x495d57
cmp dword [ebp + 0xb0], ebx
jne 0x495954
mov eax, dword [esi + 0x68]
push str.keep_alive
push 0x4e10ac
push eax
call fcn.004938a0
add esp, 0xc
test eax, eax
je 0x495954
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
mov dword [ebp + 0x130], 0
call fcn.00484400
add esp, 8
jmp 0x495d57
mov ecx, dword [esi + 0x68]
push str.close
push 0x4e10ac
push ecx
call fcn.004938a0
add esp, 0xc
test eax, eax
je 0x49597d
mov dword [ebp + 0x130], 1
jmp 0x495d57
mov edx, dword [esi + 0x68]
push str.chunked
push str.Transfer_Encoding:
push edx
call fcn.004938a0
add esp, 0xc
test eax, eax
je 0x4959b8
test dword [ebp + 0x30], 0x40000
jne 0x4959b8
push ebp
mov dword [esi + 0xc8], 1
call fcn.0049a8a0
add esp, 4
jmp 0x495d57
mov eax, dword [esi + 0x68]
push 8
push eax
push str.Trailer:
call fcn.004996f0
add esp, 0xc
test eax, eax
jne 0x495d4d
mov ecx, dword [esi + 0x68]
push 9
push ecx
push str.Trailers:
call fcn.004996f0
add esp, 0xc
test eax, eax
jne 0x495d4d
mov edx, dword [esi + 0x68]
push 0x11
push edx
push str.Content_Encoding:
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495af3
cmp dword [edi + 0x348], 0
je 0x495af3
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0x11]
add ebx, 0x11
test al, al
je 0x495a3b
movzx eax, al
push eax
call fcn.004ab458
add esp, 4
test eax, eax
je 0x495a3b
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x495a23
push 8
push ebx
push str.identity
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495a5e
mov dword [esi + 0x88], 0
jmp 0x495d57
push 7
push ebx
push str.deflate
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495a81
mov dword [esi + 0x88], 1
jmp 0x495d57
push 4
push ebx
push str.gzip
call fcn.004996f0
add esp, 0xc
test eax, eax
jne 0x495ae4
push 6
push ebx
push str.x_gzip
call fcn.004996f0
add esp, 0xc
test eax, eax
jne 0x495ae4
push 8
push ebx
push str.compress
call fcn.004996f0
add esp, 0xc
test eax, eax
jne 0x495ad5
push 0xa
push ebx
push str.x_compress
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495d57
mov dword [esi + 0x88], 3
jmp 0x495d57
mov dword [esi + 0x88], 2
jmp 0x495d57
mov ecx, dword [esi + 0x68]
push 0xe
push ecx
push str.Content_Range:
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495b6b
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0xe]
add ebx, 0xe
test al, al
je 0x495b2f
movzx edx, al
push edx
call fcn.004ab353
add esp, 4
test eax, eax
jne 0x495b2f
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x495b17
push 0xa
push 0
push ebx
call fcn.004acacb
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edx
mov eax, dword [edi + 0x8628]
add esp, 0xc
cmp eax, dword [esi + 0x70]
jne 0x495d57
mov ecx, dword [edi + 0x862c]
cmp ecx, edx
jne 0x495d57
mov dword [esi + 0x6c], 1
jmp 0x495d57
cmp dword [edi + 0x404], 0
je 0x495bd3
mov edx, dword [esi + 0x68]
push 0xb
push edx
push str.Set_Cookie:
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495bd3
push 2
push 2
push edi
call fcn.004867d0
mov eax, dword [ebp + 0x1b8]
add esp, 0xc
test eax, eax
jne 0x495ba5
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.00483080
push 2
push edi
call fcn.00486810
add esp, 0x20
jmp 0x495d57
mov ecx, dword [esi + 0x68]
push 0xe
push ecx
push str.Last_Modified:
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495c45
cmp dword [edi + 0x204], 0
jne 0x495bfc
cmp dword [edi + 0x294], 0
je 0x495c45
push 0
call fcn.004a5963
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.0049be30
add esp, 0xc
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
cmp dword [edi + 0x294], 0
je 0x495d57
mov ecx, eax
mov dword [edi + 0x8670], ecx
jmp 0x495d57
mov edx, dword [esi + 0x68]
push 0x11
push edx
push str.WWW_Authenticate:
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495c66
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x495c87
mov eax, dword [esi + 0x68]
push 0x13
push eax
push str.Proxy_authenticate:
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495ca2
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x495ca2
mov ecx, dword [esi + 0x68]
push ecx
push eax
push ebp
call fcn.004933a0
add esp, 0xc
test eax, eax
jne 0x4960d7
jmp 0x495d57
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x495d2d
cmp eax, 0x190
jge 0x495d2d
mov edx, dword [esi + 0x68]
push 9
push edx
push str.Location:
call fcn.004996f0
add esp, 0xc
test eax, eax
je 0x495d2d
mov eax, dword [esi + 0x68]
push eax
call fcn.00492e00
add esp, 4
test eax, eax
je 0x49601c
cmp byte [eax], 0
jne 0x495cf3
push eax
call dword [0x50a048]
add esp, 4
jmp 0x495d57
cmp dword [edi + 0x2b4], 0
mov dword [edi + 0xd0], eax
je 0x495d57
push eax
call dword [0x50a050]
add esp, 4
mov dword [edi + 0xd4], eax
test eax, eax
je 0x49601c
push ebp
call fcn.00493010
add esp, 4
test eax, eax
jne 0x4960d7
jmp 0x495d57
test dword [ebp + 0x30], 0x40000
je 0x495d57
mov ecx, dword [esi + 0x68]
push ecx
push ebp
call fcn.004879b0
add esp, 8
test eax, eax
jne 0x4960d7
jmp 0x495d57
mov dword [esi + 0xd8], 1
cmp dword [edi + 0x2bc], 0
mov ebx, 2
je 0x495d6a
mov ebx, 3
cmp dword [edi + 0x2d8], 0
je 0x495d87
mov edx, dword [esi + 0x58]
mov eax, dword [esi + 0x68]
push ebp
push edx
push eax
push 1
push edi
call fcn.00484310
add esp, 0x14
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x68]
push ecx
push edx
push ebx
push ebp
call fcn.00484750
add esp, 0x10
test eax, eax
jne 0x4960d7
mov eax, dword [esi + 0x58]
add dword [edi + 0x8678], eax
mov ecx, dword [esi + 0x58]
add dword [edi + 0x48], ecx
jmp 0x495f34
cmp cl, 0xd
jne 0x495dbe
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x495dca
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x495dfa
cmp eax, 0xc7
jg 0x495dfa
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], edx
cmp dword [esi + 0x84], edx
je 0x495e41
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], edx
jmp 0x495e41
mov eax, dword [esi]
and eax, dword [esi + 4]
mov dword [esi + 0x48], edx
cmp eax, 0xffffffff
jne 0x495e41
cmp dword [esi + 0xc8], edx
jne 0x495e41
cmp dword [ebx + 0x130], edx
jne 0x495e41
cmp dword [ebx + 0xb0], 0xb
jl 0x495e41
test dword [ebx + 0x30], 0x40000
jne 0x495e41
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push edi
call fcn.00484400
add esp, 8
mov dword [ebx + 0x130], 1
cmp dword [esi + 0x78], 0x1a1
jne 0x495e5b
and dword [esi + 0xa8], 0xfffffffd
mov dword [esi + 0x84], 3
push ebx
call fcn.004934c0
add esp, 4
test eax, eax
jne 0x496029
lea ecx, [eax + 2]
cmp dword [edi + 0x2bc], eax
je 0x495e7a
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.00484750
add esp, 0x10
test eax, eax
jne 0x4960d7
add dword [edi + 0x48], ebx
add dword [edi + 0x8678], ebx
mov eax, dword [esi + 0x78]
cmp eax, 0x64
mov ecx, dword [edi + 0x48]
jl 0x495eb8
cmp eax, 0xc7
jle 0x495eba
xor ecx, ecx
mov edx, dword [edi + 0x8628]
or edx, dword [edi + 0x862c]
mov dword [edi + 0x4c], ecx
je 0x495eea
cmp dword [edi + 0x210], 1
jne 0x495eea
cmp dword [esi + 0x78], 0x1a0
jne 0x495eea
mov ebp, dword [esp + 0x2c]
mov dword [ebp], 1
jmp 0x495f2a
mov ebp, dword [esp + 0x2c]
cmp dword [ebp], 0
jne 0x495f2a
mov eax, dword [esp + 0x24]
push eax
call fcn.00493c40
add esp, 4
test eax, eax
jne 0x4960d7
mov ecx, dword [esp + 0x24]
cmp dword [ecx + 0x16c], eax
je 0x495f2a
push str.Keep_sending_data_to_get_tossed_away__n
push edi
call fcn.00484400
add esp, 8
or dword [esi + 0xa8], 2
cmp dword [esi + 0x48], 0
je 0x496048
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 0x4960d5
mov ecx, dword [esi + 0x5c]
cmp byte [ecx], 0
jne 0x4954d0
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.00493b90
add esp, 4
test eax, eax
jne 0x4960d7
cmp dword [esi + 0x50], eax
jne 0x4960d5
cmp dword [esi + 0x58], 5
jbe 0x4960d5
mov eax, dword [edi + 0x51c]
mov ecx, dword [esp + 0x24]
push edi
call fcn.00493b70
add esp, 4
test eax, eax
jne 0x4960d5
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 0x495fdd
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.00484490
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.00484490
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 0x16
pop ebx
add esp, 0xc
ret
cmp dword [edi + 0x2c8], 0
je 0x49605a
mov dword [ebp], 1
jmp 0x496071
cmp dword [esi + 0xc8], 0
je 0x496071
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 0x49607f
cmp ecx, eax
je 0x496095
push ecx
push eax
push edi
call fcn.00498e30
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 0x4960aa
cmp dword [esi + 0x14], 0
jne 0x4960aa
mov dword [ebp], 1
jmp 0x4960b0
cmp dword [ebp], 0
je 0x4960b7
and dword [esi + 0xa8], 0xfffffffe
cmp dword [edi + 0x2d8], 0
je 0x4960d5
mov ecx, dword [esp + 0x24]
mov edx, dword [esi + 0x60]
push ecx
push ebx
push edx
push 1
push edi
call fcn.00484310
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret