Function at 0x464060
Capabilities:
Check http status code

Disassembly:
sub esp, 8
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x1c]
lea esi, [edi + 0x18]
mov edi, edi
mov eax, dword [esi + 0x5c]
mov ebx, dword [esp + 0x24]
mov dword [esi + 0x60], eax
mov ecx, dword [ebx]
push ecx
push 0xa
push eax
call fcn.004a1f70
add esp, 0xc
test eax, eax
mov dword [esi + 0x64], eax
je 0x464ad9
sub eax, dword [esi + 0x5c]
inc eax
mov ebp, eax
mov eax, ebx
sub dword [eax], ebp
mov eax, dword [esi + 0x64]
mov ecx, dword [esi + 0x60]
inc eax
mov dword [esi + 0x5c], eax
sub eax, ecx
push eax
mov ebx, esi
mov eax, edi
call fcn.00462660
add esp, 4
test eax, eax
jne 0x464c3b
mov edx, dword [esi + 0x54]
mov dword [esi + 0x64], edx
mov eax, dword [edi + 0x514]
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x50]
test eax, eax
jne 0x4640ef
cmp dword [esi + 0x58], 5
jbe 0x4640ef
mov ebx, dword [edi + 0x514]
mov eax, edi
call fcn.00462600
test eax, eax
je 0x464b2c
mov eax, dword [esi + 0x68]
mov cl, byte [eax]
cmp cl, 0xa
je 0x46491c
cmp cl, 0xd
je 0x464921
mov ecx, dword [esi + 0x50]
test ecx, ecx
lea edx, [ecx + 1]
mov dword [esi + 0x50], edx
jne 0x46430c
mov ebx, dword [esp + 0x20]
mov ecx, dword [ebx + 0x30]
test cl, 1
je 0x46419f
mov ebp, dword [esp + 0x20]
lea ebx, [esi + 0x78]
push ebx
add ebp, 0x114
push ebp
lea ecx, [esp + 0x24]
push ecx
push str._HTTP__d._d__3d
push eax
call fcn.004a5497
add esp, 0x14
cmp eax, 3
jne 0x464160
mov eax, dword [esp + 0x1c]
lea edx, [eax + eax*4]
mov eax, dword [ebp]
shl edx, 1
add eax, edx
mov dword [ebp], eax
jmp 0x4641f2
mov eax, dword [esi + 0x68]
push ebx
push str._HTTP__3d
push eax
call fcn.004a5497
add esp, 0xc
test eax, eax
mov dword [ebp], 0xa
jne 0x4641f2
mov ebx, dword [esi + 0x68]
mov eax, edi
call fcn.00462600
test eax, eax
je 0x464b60
mov dword [esi + 0x78], 0xc8
mov dword [ebp], 0xa
jmp 0x4641f2
test ecx, 0x40000
je 0x464b60
lea ecx, [esi + 0x78]
push ecx
add ebx, 0x118
push ebx
lea ecx, [esp + 0x18]
push ecx
push str._RTSP__d._d__3d
push eax
call fcn.004a5497
add esp, 0x14
cmp eax, 3
jne 0x464b60
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x20]
lea edx, [eax + eax*4]
mov eax, dword [ebx]
shl edx, 1
add eax, edx
add ebp, 0x114
mov dword [ebx], eax
mov dword [ebp], 0xb
mov eax, dword [esi + 0x78]
mov dword [edi + 0x8664], eax
mov eax, dword [edi + 0x85fc]
test eax, eax
mov ecx, dword [ebp]
mov dword [edi + 0x866c], ecx
je 0x464213
cmp eax, dword [ebp]
jle 0x46421c
mov edx, dword [ebp]
mov dword [edi + 0x85fc], edx
mov eax, dword [edi + 0x2a0]
test eax, eax
je 0x464293
mov eax, dword [esi + 0x78]
cmp eax, 0x190
jl 0x464293
cmp eax, 0x191
mov ebx, dword [esp + 0x20]
jne 0x464245
mov ecx, dword [ebx + 0x1a4]
test ecx, ecx
jne 0x464297
cmp eax, 0x197
jne 0x464256
mov ecx, dword [ebx + 0x1a8]
test ecx, ecx
jne 0x464297
mov ecx, dword [edi + 0x8628]
or ecx, dword [edi + 0x862c]
je 0x464274
cmp dword [edi + 0x200], 1
jne 0x464274
cmp eax, 0x1a0
je 0x464297
mov edx, dword [esi + 0x78]
push edx
push str.The_requested_URL_returned_error:__d
push edi
call fcn.0045b2d0
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 0x16
pop ebx
add esp, 8
ret
mov ebx, dword [esp + 0x20]
mov ebp, dword [ebp]
cmp ebp, 0xa
jne 0x4642b9
push str.HTTP_1.0__assume_close_after_body_n
push edi
call fcn.0045b210
add esp, 8
mov dword [ebx + 0x194], 1
jmp 0x4642d2
cmp ebp, 0xb
jl 0x4642d2
mov eax, dword [ebx + 0x194]
test eax, eax
jne 0x4642d2
mov dword [ebx + 0x248], 1
mov eax, dword [esi + 0x78]
sub eax, 0xcc
je 0x4642e1
sub eax, 0x64
jne 0x46430c
mov ecx, dword [edi + 0x1f8]
xor eax, eax
cmp ecx, eax
je 0x4642f7
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 + 0xac], 1
mov eax, dword [esi + 0xac]
test eax, eax
jne 0x4643ca
mov eax, dword [edi + 0x2fc]
test eax, eax
jne 0x4643ca
mov edx, dword [esi + 0x68]
push 0xf
push edx
push str.Content_Length:
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x4643ca
mov eax, dword [esi + 0x68]
push 0xa
add eax, 0xf
push 0
push eax
call fcn.004a3070
mov ebx, dword [edi + 0x268]
mov ecx, dword [edi + 0x26c]
mov ebp, ebx
add esp, 0xc
or ebp, ecx
je 0x46437a
cmp edx, ecx
jg 0x464b71
jl 0x46437a
cmp eax, ebx
ja 0x464b71
test edx, edx
jl 0x4643a3
jg 0x464384
test eax, eax
jb 0x4643a3
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.004678c0
mov ebp, dword [esp + 0x2c]
add esp, 0xc
jmp 0x4648af
mov ecx, dword [esp + 0x20]
push edx
push eax
push str.Negative_content_length:__lld__closing_after_transfer_n
push edi
mov dword [ecx + 0x194], 1
call fcn.0045b210
mov ebp, dword [esp + 0x30]
add esp, 0x10
jmp 0x4648af
mov edx, dword [esi + 0x68]
push 0xd
push edx
push str.Content_Type:
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x46442d
mov eax, dword [esi + 0x68]
push eax
call fcn.004618b0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x464b8c
cmp byte [ebx], 0
jne 0x46440f
push ebx
call dword [0x5605ac]
mov ebp, dword [esp + 0x24]
add esp, 4
jmp 0x4648af
mov ecx, dword [edi + 0x868c]
push ecx
call fcn.00452350
mov ebp, dword [esp + 0x24]
add esp, 4
mov dword [edi + 0x868c], ebx
jmp 0x4648af
mov ebp, dword [esp + 0x20]
mov eax, dword [ebp + 0x114]
mov ebx, 0xa
cmp eax, ebx
jne 0x464481
mov eax, dword [ebp + 0x1a0]
test eax, eax
je 0x464481
mov edx, dword [esi + 0x68]
push str.keep_alive
push str.Proxy_Connection:
push edx
call fcn.004623a0
add esp, 0xc
test eax, eax
je 0x464481
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push edi
mov dword [ebp + 0x194], 0
call fcn.0045b210
add esp, 8
jmp 0x4648af
cmp dword [ebp + 0x114], 0xb
jne 0x4644cb
mov eax, dword [ebp + 0x1a0]
test eax, eax
je 0x4644cb
mov eax, dword [esi + 0x68]
push str.close
push str.Proxy_Connection:
push eax
call fcn.004623a0
add esp, 0xc
test eax, eax
je 0x4644cb
push str.HTTP_1.1_proxy_connection_set_close__n
push edi
mov dword [ebp + 0x194], 1
call fcn.0045b210
add esp, 8
jmp 0x4648af
cmp dword [ebp + 0x114], ebx
jne 0x46450a
mov ecx, dword [esi + 0x68]
push str.keep_alive
push str.Connection:
push ecx
call fcn.004623a0
add esp, 0xc
test eax, eax
je 0x46450a
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
mov dword [ebp + 0x194], 0
call fcn.0045b210
add esp, 8
jmp 0x4648af
mov edx, dword [esi + 0x68]
push str.close
push str.Connection:
push edx
call fcn.004623a0
add esp, 0xc
test eax, eax
je 0x464533
mov dword [ebp + 0x194], 1
jmp 0x4648af
mov eax, dword [esi + 0x68]
push str.chunked
push str.Transfer_Encoding:
push eax
call fcn.004623a0
add esp, 0xc
test eax, eax
je 0x46456e
test dword [ebp + 0x30], 0x40000
jne 0x46456e
push ebp
mov dword [esi + 0xc0], 1
call fcn.004692b0
add esp, 4
jmp 0x4648af
mov ecx, dword [esi + 0x68]
push 0x11
push ecx
push str.Content_Encoding:
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x464674
mov eax, dword [edi + 0x338]
test eax, eax
je 0x464674
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0x11]
add ebx, 0x11
test al, al
je 0x4645bc
movzx edx, al
push edx
call fcn.004a4dc7
add esp, 4
test eax, eax
je 0x4645bc
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x4645a4
push 8
push ebx
push str.identity
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x4645df
mov dword [esi + 0x88], 0
jmp 0x4648af
push 7
push ebx
push str.deflate
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x464602
mov dword [esi + 0x88], 1
jmp 0x4648af
push 4
push ebx
push str.gzip
call fcn.00468190
add esp, 0xc
test eax, eax
jne 0x464665
push 6
push ebx
push str.x_gzip
call fcn.00468190
add esp, 0xc
test eax, eax
jne 0x464665
push 8
push ebx
push str.compress
call fcn.00468190
add esp, 0xc
test eax, eax
jne 0x464656
push 0xa
push ebx
push str.x_compress
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x4648af
mov dword [esi + 0x88], 3
jmp 0x4648af
mov dword [esi + 0x88], 2
jmp 0x4648af
mov eax, dword [esi + 0x68]
push 0xe
push eax
push str.Content_Range:
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x4646f4
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0xe]
add ebx, 0xe
test al, al
je 0x4646b8
jmp 0x4646a0
movzx ecx, al
push ecx
call fcn.004a4d4e
add esp, 4
test eax, eax
jne 0x4646b8
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x4646a0
push 0xa
push 0
push ebx
call fcn.004a3070
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edx
mov edx, dword [edi + 0x8628]
add esp, 0xc
cmp edx, eax
jne 0x4648af
mov eax, dword [edi + 0x862c]
cmp eax, dword [esi + 0x74]
jne 0x4648af
mov dword [esi + 0x6c], 1
jmp 0x4648af
mov eax, dword [edi + 0x3f8]
test eax, eax
je 0x46475d
mov ecx, dword [esi + 0x68]
push 0xb
push ecx
push str.Set_Cookie:
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x46475d
push 2
push 2
push edi
call fcn.0045d8f0
mov eax, dword [ebp + 0x234]
add esp, 0xc
test eax, eax
jne 0x46472f
mov eax, dword [ebp + 0x7c]
mov edx, dword [edi + 0x8614]
mov ecx, dword [edi + 0x3f8]
push edx
push eax
mov eax, dword [esi + 0x68]
add eax, 0xb
push eax
push 1
push ecx
push edi
call fcn.00459e70
push 2
push edi
call fcn.0045d930
add esp, 0x20
jmp 0x4648af
mov edx, dword [esi + 0x68]
push 0xe
push edx
push str.Last_Modified:
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x4647c6
mov eax, dword [edi + 0x1f8]
test eax, eax
jne 0x464788
mov eax, dword [edi + 0x284]
test eax, eax
je 0x4647c6
push 0
call fcn.004a4561
mov ecx, dword [esi + 0x68]
mov dword [esp + 0x18], eax
lea eax, [esp + 0x18]
push eax
add ecx, 0xe
push ecx
call fcn.0046a4d0
mov dword [esi + 0x8c], eax
mov ecx, dword [edi + 0x284]
add esp, 0xc
test ecx, ecx
je 0x4648af
mov dword [edi + 0x8670], eax
jmp 0x4648af
mov edx, dword [esi + 0x68]
push 0x11
push edx
push str.WWW_Authenticate:
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x4647e7
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x464808
mov eax, dword [esi + 0x68]
push 0x13
push eax
push str.Proxy_authenticate:
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x46481b
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x46481b
mov ecx, dword [esi + 0x68]
push ecx
push eax
push ebp
call fcn.00461e60
add esp, 0xc
jmp 0x4648a7
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x4648af
cmp eax, 0x190
jge 0x4648af
mov edx, dword [esi + 0x68]
push 9
push edx
push str.Location:
call fcn.00468190
add esp, 0xc
test eax, eax
je 0x4648af
mov eax, dword [edi + 0xc8]
test eax, eax
jne 0x4648af
mov eax, dword [esi + 0x68]
push eax
call fcn.004618b0
add esp, 4
test eax, eax
je 0x464b8c
cmp byte [eax], 0
jne 0x464876
push eax
call dword [0x5605ac]
add esp, 4
jmp 0x4648af
mov ecx, dword [edi + 0x2a4]
test ecx, ecx
mov dword [edi + 0xc8], eax
je 0x4648af
push eax
call dword [0x5605b4]
add esp, 4
test eax, eax
mov dword [edi + 0xcc], eax
je 0x464b8c
push ebp
call fcn.00461ac0
add esp, 4
test eax, eax
jne 0x464c3b
mov eax, dword [edi + 0x2ac]
test eax, eax
mov ebx, 2
je 0x4648c3
mov ebx, 3
mov eax, dword [edi + 0x2c8]
test eax, eax
je 0x4648e1
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x68]
push ebp
push ecx
push edx
push 1
push edi
call fcn.0045b090
add esp, 0x14
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x68]
push eax
push ecx
push ebx
push ebp
call fcn.0045b6d0
add esp, 0x10
test eax, eax
jne 0x464c3b
mov edx, dword [esi + 0x58]
mov ebx, dword [edi + 0x8678]
mov ecx, dword [edi + 0x48]
add ebx, edx
mov dword [edi + 0x8678], ebx
mov eax, dword [esi + 0x58]
add ecx, eax
mov dword [edi + 0x48], ecx
jmp 0x464aa6
cmp cl, 0xd
jne 0x464925
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x464931
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x464971
cmp eax, 0xc7
jg 0x464971
mov eax, dword [esi + 0x84]
mov ebp, dword [esp + 0x20]
xor ebx, ebx
cmp eax, ebx
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], ebx
je 0x4649c6
mov eax, dword [esi + 0xa0]
or eax, 2
mov dword [esi + 0x84], ebx
mov dword [esi + 0xa0], eax
jmp 0x4649c6
mov edx, dword [esi]
mov ecx, dword [esi + 4]
xor ebx, ebx
and edx, ecx
cmp edx, 0xffffffff
mov dword [esi + 0x48], ebx
jne 0x4649c2
cmp dword [esi + 0xc0], ebx
jne 0x4649c2
mov ebp, dword [esp + 0x20]
cmp dword [ebp + 0x194], ebx
jne 0x4649c6
cmp dword [ebp + 0x114], 0xb
jl 0x4649c6
test dword [ebp + 0x30], 0x40000
jne 0x4649c6
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push edi
call fcn.0045b210
add esp, 8
mov dword [ebp + 0x194], 1
jmp 0x4649c6
mov ebp, dword [esp + 0x20]
cmp dword [esi + 0x78], 0x1a1
jne 0x4649e8
mov eax, dword [esi + 0xa0]
and eax, 0xfffffffd
mov dword [esi + 0x84], 3
mov dword [esi + 0xa0], eax
push ebp
call fcn.00461f90
add esp, 4
test eax, eax
jne 0x464b99
cmp dword [edi + 0x2ac], ebx
mov ecx, 2
je 0x464a0b
mov ecx, 3
mov eax, dword [edi + 0x514]
mov ebx, dword [esi + 0x68]
sub ebx, eax
push ebx
push eax
push ecx
push ebp
call fcn.0045b6d0
add esp, 0x10
test eax, eax
jne 0x464c3b
mov ecx, dword [edi + 0x8678]
mov eax, dword [edi + 0x48]
add ecx, ebx
add eax, ebx
mov dword [edi + 0x8678], ecx
mov dword [edi + 0x48], eax
mov ecx, eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x464a55
cmp eax, 0xc7
jg 0x464a55
mov eax, ecx
jmp 0x464a57
xor eax, eax
mov dword [edi + 0x4c], eax
mov eax, dword [esp + 0x28]
cmp dword [eax], 0
jne 0x464a9b
push ebp
call fcn.00462720
add esp, 4
test eax, eax
jne 0x464c3b
mov eax, dword [ebp + 0x1d0]
test eax, eax
je 0x464a9b
push str.Keep_sending_data_to_get_tossed_away__n
push edi
call fcn.0045b210
mov eax, dword [esi + 0xa0]
add esp, 8
or eax, 2
mov dword [esi + 0xa0], eax
mov eax, dword [esi + 0x48]
test eax, eax
je 0x464ba2
mov ecx, dword [edi + 0x514]
mov edx, dword [esp + 0x28]
mov dword [esi + 0x54], ecx
mov dword [esi + 0x58], 0
cmp dword [edx], 0
jne 0x464c39
mov eax, dword [esi + 0x5c]
cmp byte [eax], 0
jne 0x464070
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 8
ret
mov ecx, dword [ebx]
push ecx
mov ebx, esi
mov eax, edi
call fcn.00462660
add esp, 4
test eax, eax
jne 0x464c3b
mov eax, dword [esi + 0x50]
test eax, eax
jne 0x464c39
cmp dword [esi + 0x58], 5
jbe 0x464c39
mov ebx, dword [edi + 0x514]
mov eax, edi
call fcn.00462600
test eax, eax
jne 0x464c39
pop edi
mov dword [esi + 0x48], eax
mov dword [esi + 0x4c], 2
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov dword [esi + 0x48], 0
cmp dword [eax], 0
je 0x464b4d
pop edi
mov dword [esi + 0x4c], 1
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 8
ret
pop edi
mov dword [esi + 0x4c], 2
pop esi
mov dword [eax], ebp
pop ebp
xor eax, eax
pop ebx
add esp, 8
ret
pop edi
mov dword [esi + 0x48], 0
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 8
ret
push str.Maximum_file_size_exceeded
push edi
call fcn.0045b2d0
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 0x3f
pop ebx
add esp, 8
ret
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 8
ret
mov eax, dword [esi + 0x78]
push eax
jmp 0x464278
mov eax, dword [edi + 0x2b8]
test eax, eax
je 0x464bb8
mov ecx, dword [esp + 0x28]
mov dword [ecx], 1
jmp 0x464bd0
mov eax, dword [esi + 0xc0]
test eax, eax
je 0x464bd0
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]
cmp eax, 0xffffffff
mov ecx, dword [esi + 4]
jne 0x464bde
cmp ecx, eax
je 0x464bf4
push ecx
push eax
push edi
call fcn.004678c0
mov edx, dword [esi]
mov eax, dword [esi + 4]
add esp, 0xc
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x10]
test eax, eax
jne 0x464c0e
mov eax, dword [esi + 0x14]
test eax, eax
jne 0x464c0e
mov ecx, dword [esp + 0x28]
mov dword [ecx], 1
jmp 0x464c17
mov edx, dword [esp + 0x28]
cmp dword [edx], 0
je 0x464c1e
and dword [esi + 0xa0], 0xfffffffe
mov eax, dword [edi + 0x2c8]
test eax, eax
je 0x464c39
mov eax, dword [esi + 0x60]
push ebp
push ebx
push eax
push 1
push edi
call fcn.0045b090
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret