Function at 0x4b23a0
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.00528f70
add esp, 0xc
mov dword [esi + 0x64], eax
test eax, eax
je 0x4b2e6c
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.004b0a50
add esp, 4
test eax, eax
jne 0x4b2fdc
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 0x4b24c8
cmp dword [esi + 0x58], 5
jbe 0x4b24c8
mov ebx, dword [esp + 0x24]
test dword [ebx + 0x30], 0x40000
mov eax, dword [edi + 0x51c]
je 0x4b2449
push 5
push eax
push str.RTSP_
call fcn.0049f350
add esp, 0xc
neg eax
sbb eax, eax
neg eax
jmp 0x4b2456
mov ebx, eax
mov eax, edi
call fcn.004b09c0
mov ebx, dword [esp + 0x24]
test eax, eax
je 0x4b2ec1
xor edx, edx
mov eax, dword [esi + 0x68]
mov cl, byte [eax]
cmp cl, 0xa
je 0x4b2cba
cmp cl, 0xd
je 0x4b2cbf
mov ecx, dword [esi + 0x50]
lea ebp, [ecx + 1]
mov dword [esi + 0x50], ebp
cmp ecx, edx
jne 0x4b2663
mov ecx, dword [ebx + 0x30]
test cl, 1
je 0x4b250d
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.0052bd90
add esp, 0x14
cmp eax, 3
jne 0x4b24ce
mov eax, dword [esp + 0x20]
lea edx, [eax + eax*4]
add edx, edx
add dword [ebp], edx
jmp 0x4b2560
mov ebx, dword [esp + 0x24]
jmp 0x4b2460
mov eax, dword [esi + 0x68]
push ebx
push str._HTTP__3d
push eax
call fcn.0052bd90
add esp, 0xc
mov dword [ebp], 0xa
test eax, eax
jne 0x4b2560
mov ebx, dword [esi + 0x68]
mov eax, edi
call fcn.004b09c0
test eax, eax
je 0x4b2ef5
mov dword [esi + 0x78], 0xc8
mov dword [ebp], 0xa
jmp 0x4b2560
test ecx, 0x40000
je 0x4b2ef5
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.0052bd90
add esp, 0x14
cmp eax, 3
jne 0x4b2ef5
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 0x4b2581
cmp eax, dword [ebp]
jle 0x4b258a
mov edx, dword [ebp]
mov dword [edi + 0x8600], edx
cmp dword [edi + 0x2b0], 0
je 0x4b25e8
mov eax, dword [esi + 0x78]
cmp eax, 0x190
jl 0x4b25e8
mov ebx, dword [esp + 0x24]
cmp eax, 0x191
jne 0x4b25b1
cmp dword [ebx + 0x160], 0
jne 0x4b25ec
cmp eax, 0x197
jne 0x4b25c1
cmp dword [ebx + 0x164], 0
jne 0x4b25ec
mov ecx, dword [edi + 0x8628]
or ecx, dword [edi + 0x862c]
je 0x4b25df
cmp dword [edi + 0x210], 1
jne 0x4b25df
cmp eax, 0x1a0
je 0x4b25ec
mov eax, dword [esi + 0x78]
push eax
jmp 0x4b2f32
mov ebx, dword [esp + 0x24]
mov ebp, dword [ebp]
cmp ebp, 0xa
jne 0x4b260e
push str.HTTP_1.0__assume_close_after_body_n
push edi
call fcn.0049ae80
add esp, 8
mov dword [ebx + 0x150], 1
jmp 0x4b2626
cmp ebp, 0xb
jl 0x4b2626
cmp dword [ebx + 0x150], 0
jne 0x4b2626
mov dword [ebx + 0x1ec], 1
mov eax, dword [esi + 0x78]
sub eax, 0xcc
je 0x4b263a
sub eax, 0x64
je 0x4b263a
sub eax, 0x70
jne 0x4b2663
xor eax, eax
cmp dword [edi + 0x204], eax
je 0x4b264e
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 0x4b271b
cmp dword [edi + 0x30c], 0
jne 0x4b271b
mov edx, dword [esi + 0x68]
push 0xf
push edx
push str.Content_Length:
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b271b
mov eax, dword [esi + 0x68]
push 0xa
add eax, 0xf
push 0
push eax
call fcn.0052c098
mov ebx, dword [edi + 0x278]
mov ecx, dword [edi + 0x27c]
mov ebp, ebx
add esp, 0xc
or ebp, ecx
je 0x4b26cf
cmp edx, ecx
jg 0x4b2f06
jl 0x4b26cf
cmp eax, ebx
ja 0x4b2f06
test edx, edx
jl 0x4b26f8
jg 0x4b26d9
test eax, eax
jb 0x4b26f8
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.004a27b0
mov ebp, dword [esp + 0x30]
add esp, 0xc
jmp 0x4b2c5c
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.0049ae80
add esp, 0x10
jmp 0x4b2c5c
mov ecx, dword [esi + 0x68]
push 0xd
push ecx
push str.Content_Type:
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b277e
mov edx, dword [esi + 0x68]
push edx
call fcn.004afbd0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4b2f21
cmp byte [ebx], 0
jne 0x4b2760
push ebx
call dword [0x5a198c]
mov ebp, dword [esp + 0x28]
add esp, 4
jmp 0x4b2c5c
mov eax, dword [edi + 0x868c]
push eax
call fcn.00492300
mov ebp, dword [esp + 0x28]
add esp, 4
mov dword [edi + 0x868c], ebx
jmp 0x4b2c5c
mov ebp, dword [esp + 0x24]
mov ebx, 0xa
cmp dword [ebp + 0xb0], ebx
jne 0x4b27cf
cmp dword [ebp + 0x15c], 0
je 0x4b27cf
mov ecx, dword [esi + 0x68]
push str.keep_alive
push str.Proxy_Connection:
push ecx
call fcn.004b06f0
add esp, 0xc
test eax, eax
je 0x4b27cf
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push edi
mov dword [ebp + 0x150], 0
call fcn.0049ae80
add esp, 8
jmp 0x4b2c5c
cmp dword [ebp + 0xb0], 0xb
jne 0x4b2818
cmp dword [ebp + 0x15c], 0
je 0x4b2818
mov edx, dword [esi + 0x68]
push str.close
push str.Proxy_Connection:
push edx
call fcn.004b06f0
add esp, 0xc
test eax, eax
je 0x4b2818
push str.HTTP_1.1_proxy_connection_set_close__n
push edi
mov dword [ebp + 0x150], 1
call fcn.0049ae80
add esp, 8
jmp 0x4b2c5c
cmp dword [ebp + 0xb0], ebx
jne 0x4b2857
mov eax, dword [esi + 0x68]
push str.keep_alive
push str.Connection:
push eax
call fcn.004b06f0
add esp, 0xc
test eax, eax
je 0x4b2857
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
mov dword [ebp + 0x150], 0
call fcn.0049ae80
add esp, 8
jmp 0x4b2c5c
mov ecx, dword [esi + 0x68]
push str.close
push str.Connection:
push ecx
call fcn.004b06f0
add esp, 0xc
test eax, eax
je 0x4b2880
mov dword [ebp + 0x150], 1
jmp 0x4b2c5c
mov edx, dword [esi + 0x68]
push str.chunked
push str.Transfer_Encoding:
push edx
call fcn.004b06f0
add esp, 0xc
test eax, eax
je 0x4b28bb
test dword [ebp + 0x30], 0x40000
jne 0x4b28bb
push ebp
mov dword [esi + 0xc8], 1
call fcn.004b7170
add esp, 4
jmp 0x4b2c5c
mov eax, dword [esi + 0x68]
push 8
push eax
push str.Trailer:
call fcn.0049f350
add esp, 0xc
test eax, eax
jne 0x4b2c52
mov ecx, dword [esi + 0x68]
push 9
push ecx
push str.Trailers:
call fcn.0049f350
add esp, 0xc
test eax, eax
jne 0x4b2c52
mov edx, dword [esi + 0x68]
push 0x11
push edx
push str.Content_Encoding:
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b29f6
cmp dword [edi + 0x348], 0
je 0x4b29f6
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0x11]
add ebx, 0x11
test al, al
je 0x4b293e
movzx eax, al
push eax
call fcn.0052814d
add esp, 4
test eax, eax
je 0x4b293e
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x4b2926
push 8
push ebx
push str.identity
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b2961
mov dword [esi + 0x88], 0
jmp 0x4b2c5c
push 7
push ebx
push str.deflate
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b2984
mov dword [esi + 0x88], 1
jmp 0x4b2c5c
push 4
push ebx
push str.gzip
call fcn.0049f350
add esp, 0xc
test eax, eax
jne 0x4b29e7
push 6
push ebx
push str.x_gzip
call fcn.0049f350
add esp, 0xc
test eax, eax
jne 0x4b29e7
push 8
push ebx
push str.compress
call fcn.0049f350
add esp, 0xc
test eax, eax
jne 0x4b29d8
push 0xa
push ebx
push str.x_compress
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b2c5c
mov dword [esi + 0x88], 3
jmp 0x4b2c5c
mov dword [esi + 0x88], 2
jmp 0x4b2c5c
mov ecx, dword [esi + 0x68]
push 0xe
push ecx
push str.Content_Range:
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b2a74
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0xe]
add ebx, 0xe
test al, al
je 0x4b2a38
lea ebx, [ebx]
movzx edx, al
push edx
call fcn.00528048
add esp, 4
test eax, eax
jne 0x4b2a38
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x4b2a20
push 0xa
push 0
push ebx
call fcn.0052c098
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edx
mov eax, dword [edi + 0x8628]
add esp, 0xc
cmp eax, dword [esi + 0x70]
jne 0x4b2c5c
mov ecx, dword [edi + 0x862c]
cmp ecx, edx
jne 0x4b2c5c
mov dword [esi + 0x6c], 1
jmp 0x4b2c5c
cmp dword [edi + 0x404], 0
je 0x4b2adc
mov edx, dword [esi + 0x68]
push 0xb
push edx
push str.Set_Cookie:
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b2adc
push 2
push 2
push edi
call fcn.004a3010
mov eax, dword [ebp + 0x1d8]
add esp, 0xc
test eax, eax
jne 0x4b2aae
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.00499aa0
push 2
push edi
call fcn.004a3050
add esp, 0x20
jmp 0x4b2c5c
mov ecx, dword [esi + 0x68]
push 0xe
push ecx
push str.Last_Modified:
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b2b4e
cmp dword [edi + 0x204], 0
jne 0x4b2b05
cmp dword [edi + 0x294], 0
je 0x4b2b4e
push 0
call fcn.00529314
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.004b7c80
add esp, 0xc
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
cmp dword [edi + 0x294], 0
je 0x4b2c5c
mov ecx, eax
mov dword [edi + 0x8670], ecx
jmp 0x4b2c5c
mov edx, dword [esi + 0x68]
push 0x11
push edx
push str.WWW_Authenticate:
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b2b6f
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x4b2b90
mov eax, dword [esi + 0x68]
push 0x13
push eax
push str.Proxy_authenticate:
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b2bab
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x4b2bab
mov ecx, dword [esi + 0x68]
push ecx
push eax
push ebp
call fcn.004b0190
add esp, 0xc
test eax, eax
jne 0x4b2fdc
jmp 0x4b2c5c
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x4b2c32
cmp eax, 0x190
jge 0x4b2c32
mov edx, dword [esi + 0x68]
push 9
push edx
push str.Location:
call fcn.0049f350
add esp, 0xc
test eax, eax
je 0x4b2c32
mov eax, dword [esi + 0x68]
push eax
call fcn.004afbd0
add esp, 4
test eax, eax
je 0x4b2f21
cmp byte [eax], 0
jne 0x4b2bf8
push eax
call dword [0x5a198c]
add esp, 4
jmp 0x4b2c5c
cmp dword [edi + 0x2b4], 0
mov dword [edi + 0xd0], eax
je 0x4b2c5c
push eax
call dword [0x5a1994]
add esp, 4
mov dword [edi + 0xd4], eax
test eax, eax
je 0x4b2f21
push ebp
call fcn.004afde0
add esp, 4
test eax, eax
jne 0x4b2fdc
jmp 0x4b2c5c
test dword [ebp + 0x30], 0x40000
je 0x4b2c5c
mov ecx, dword [esi + 0x68]
push ecx
push ebp
call fcn.004a4200
add esp, 8
test eax, eax
jne 0x4b2fdc
jmp 0x4b2c5c
mov dword [esi + 0xd8], 1
cmp dword [edi + 0x2bc], 0
mov ebx, 2
je 0x4b2c6f
mov ebx, 3
cmp dword [edi + 0x2d8], 0
je 0x4b2c8c
mov edx, dword [esi + 0x58]
mov eax, dword [esi + 0x68]
push ebp
push edx
push eax
push 1
push edi
call fcn.0049acf0
add esp, 0x14
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x68]
push ecx
push edx
push ebx
push ebp
call fcn.0049b1e0
add esp, 0x10
test eax, eax
jne 0x4b2fdc
mov eax, dword [esi + 0x58]
add dword [edi + 0x8678], eax
mov ecx, dword [esi + 0x58]
add dword [edi + 0x48], ecx
jmp 0x4b2e39
cmp cl, 0xd
jne 0x4b2cc3
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x4b2ccf
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x4b2cff
cmp eax, 0xc7
jg 0x4b2cff
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], edx
cmp dword [esi + 0x84], edx
je 0x4b2d46
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], edx
jmp 0x4b2d46
mov eax, dword [esi]
and eax, dword [esi + 4]
mov dword [esi + 0x48], edx
cmp eax, 0xffffffff
jne 0x4b2d46
cmp dword [esi + 0xc8], edx
jne 0x4b2d46
cmp dword [ebx + 0x150], edx
jne 0x4b2d46
cmp dword [ebx + 0xb0], 0xb
jl 0x4b2d46
test dword [ebx + 0x30], 0x40000
jne 0x4b2d46
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push edi
call fcn.0049ae80
add esp, 8
mov dword [ebx + 0x150], 1
cmp dword [esi + 0x78], 0x1a1
jne 0x4b2d60
and dword [esi + 0xa8], 0xfffffffd
mov dword [esi + 0x84], 3
push ebx
call fcn.004b0310
add esp, 4
test eax, eax
jne 0x4b2f2e
lea ecx, [eax + 2]
cmp dword [edi + 0x2bc], eax
je 0x4b2d7f
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.0049b1e0
add esp, 0x10
test eax, eax
jne 0x4b2fdc
add dword [edi + 0x48], ebx
add dword [edi + 0x8678], ebx
mov eax, dword [esi + 0x78]
cmp eax, 0x64
mov ecx, dword [edi + 0x48]
jl 0x4b2dbd
cmp eax, 0xc7
jle 0x4b2dbf
xor ecx, ecx
mov edx, dword [edi + 0x8628]
or edx, dword [edi + 0x862c]
mov dword [edi + 0x4c], ecx
je 0x4b2def
cmp dword [edi + 0x210], 1
jne 0x4b2def
cmp dword [esi + 0x78], 0x1a0
jne 0x4b2def
mov ebp, dword [esp + 0x2c]
mov dword [ebp], 1
jmp 0x4b2e2f
mov ebp, dword [esp + 0x2c]
cmp dword [ebp], 0
jne 0x4b2e2f
mov eax, dword [esp + 0x24]
push eax
call fcn.004b0b00
add esp, 4
test eax, eax
jne 0x4b2fdc
mov ecx, dword [esp + 0x24]
cmp dword [ecx + 0x18c], eax
je 0x4b2e2f
push str.Keep_sending_data_to_get_tossed_away__n
push edi
call fcn.0049ae80
add esp, 8
or dword [esi + 0xa8], 2
cmp dword [esi + 0x48], 0
je 0x4b2f4d
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 0x4b2fda
mov ecx, dword [esi + 0x5c]
cmp byte [ecx], 0
jne 0x4b23b0
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.004b0a50
add esp, 4
test eax, eax
jne 0x4b2fdc
cmp dword [esi + 0x50], eax
jne 0x4b2fda
cmp dword [esi + 0x58], 5
jbe 0x4b2fda
mov ecx, dword [edi + 0x51c]
mov eax, dword [esp + 0x24]
push edi
call fcn.004b0a20
add esp, 4
test eax, eax
jne 0x4b2fda
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 0x4b2ee2
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.0049af10
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.0049af10
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 0x16
pop ebx
add esp, 0xc
ret
cmp dword [edi + 0x2c8], 0
je 0x4b2f5f
mov dword [ebp], 1
jmp 0x4b2f76
cmp dword [esi + 0xc8], 0
je 0x4b2f76
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 0x4b2f84
cmp ecx, eax
je 0x4b2f9a
push ecx
push eax
push edi
call fcn.004a27b0
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 0x4b2faf
cmp dword [esi + 0x14], 0
jne 0x4b2faf
mov dword [ebp], 1
jmp 0x4b2fb5
cmp dword [ebp], 0
je 0x4b2fbc
and dword [esi + 0xa8], 0xfffffffe
cmp dword [edi + 0x2d8], 0
je 0x4b2fda
mov ecx, dword [esp + 0x24]
mov edx, dword [esi + 0x60]
push ecx
push ebx
push edx
push 1
push edi
call fcn.0049acf0
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret