Function at 0x4d4007
Capabilities:
Check http status code

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x18
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x2c]
lea edx, [ecx + 0x88]
mov dword [esp + 8], edx
mov edx, dword [eax]
mov dword [esp + 0x14], edx
mov edx, dword [eax + 4]
mov dword [esp + 0xc], edx
mov ebp, dword [ecx + 0xd4]
lea esi, [ecx + 0x868]
mov dword [esp + 0x10], ebp
mov dword [esp], esi
mov edi, dword [eax]
mov ebx, dword [eax + 4]
push edi
push 0xa
push ebp
mov esi, eax
call fcn.006f9da0
add esp, 0xc
test eax, eax
je 0x4d4983
mov ecx, eax
sub ecx, ebp
inc ecx
sub edi, ecx
sbb ebx, 0
mov dword [esi], edi
mov dword [esi + 4], ebx
inc eax
mov ebx, dword [esp + 0x2c]
mov dword [ebx + 0xd4], eax
sub eax, ebp
push eax
push ebp
push dword [esp + 8]
call fcn.004b6e00
add esp, 0xc
test eax, eax
jne 0x4d497c
mov esi, ebp
cmp dword [ebx + 0xd0], 0
mov ebp, dword [esp]
jne 0x4d40c5
push ebp
call fcn.004b6f3c
add esp, 4
mov edi, eax
push ebp
call fcn.004b6f2e
add esp, 4
mov ecx, ebx
mov edx, eax
push edi
call fcn.004d4b98
add esp, 4
cmp eax, 2
je 0x4d4a55
push ebp
call fcn.004b6f2e
add esp, 4
mov edi, eax
movzx eax, byte [eax]
cmp eax, 0xd
je 0x4d40e1
cmp eax, 0xa
jne 0x4d41bb
mov dword [esp + 4], esi
mov esi, dword [esp + 0x2c]
mov eax, dword [esi + 0xe0]
lea ecx, [eax - 0x64]
cmp ecx, 0x63
mov ebx, dword [esp + 0x30]
ja 0x4d4148
cmp al, 0x65
je 0x4d4208
movzx eax, al
cmp eax, 0x64
jne 0x4d422e
mov byte [esi + 0x14a], 1
mov dword [esi + 0xd0], 0
cmp dword [esi + 0xf8], 0
jle 0x4d423f
xor eax, eax
mov dword [esi + 0xf8], eax
or byte [esi + 0xe4], 2
push eax
push esi
call fcn.004b617f
add esp, 8
jmp 0x4d41ac
cmp dword [esi + 0xfc], 2
jne 0x4d415c
push dword [esi + 0x7c]
call fcn.004b43bb
add esp, 4
mov byte [esi + 0x14a], 0
mov eax, dword [esi + 0x88]
and eax, dword [esi + 0x8c]
cmp eax, 0xffffffff
jne 0x4d421c
cmp byte [esi + 0x14f], 0
jne 0x4d41ac
cmp byte [ebx + 0x1ce], 0
jne 0x4d41ac
cmp byte [ebx + 0x291], 0xb
jne 0x4d41ac
mov eax, dword [ebx + 0x1e4]
test byte [eax + 0x46], 4
jne 0x4d41ac
cmp byte [esi + 0xd0e], 5
jne 0x4d485f
cmp byte [esi + 0x14a], 0
jne 0x4d423f
jmp 0x4d421c
mov edx, dword [esp + 0x2c]
mov eax, dword [edx + 0xd0]
lea ecx, [eax + 1]
mov dword [edx + 0xd0], ecx
mov esi, 4
test eax, eax
mov eax, dword [esp + 0x30]
mov ebx, edi
jne 0x4d44fd
mov eax, dword [eax + 0x1e4]
mov eax, dword [eax + 0x44]
test al, 3
je 0x4d4405
mov esi, edi
movzx eax, byte [esi]
cmp eax, 0x20
je 0x4d4205
cmp eax, 9
jne 0x4d43a3
inc esi
jmp 0x4d41f4
cmp dword [esi + 0xfc], 2
je 0x4d4acf
mov byte [esi + 0x14a], 0
push esi
call fcn.004d3eec
add esp, 4
test eax, eax
je 0x4d423f
jmp 0x4d497c
mov byte [esi + 0x14a], 1
mov dword [esi + 0xd0], 0
cmp byte [ebx + 0x1ce], 0
mov eax, dword [esi + 0xe0]
je 0x4d426f
cmp eax, 0x197
mov ebp, dword [esp]
je 0x4d4276
cmp eax, 0x191
jne 0x4d42a8
mov ecx, 0x191
cmp dword [ebx + 0x220], 2
je 0x4d4284
jmp 0x4d42aa
mov ecx, eax
mov ebp, dword [esp]
jmp 0x4d42aa
mov ecx, 0x197
cmp dword [ebx + 0x224], 2
jne 0x4d42aa
cmp byte [esi + 0x68b], 0
je 0x4d42a1
push str.Connection_closure_while_negotiating_auth__HTTP_1.0__
push esi
call fcn.004abf96
add esp, 8
mov eax, dword [esi + 0xe0]
mov byte [esi + 0xd15], 1
mov ecx, eax
add ecx, 0xffffff9c
xor ebx, ebx
cmp ecx, 0x64
setb bl
shl ebx, 5
or ebx, 4
push ebp
call fcn.004b6f3c
add esp, 4
mov esi, eax
push ebp
call fcn.004b6f2e
add esp, 4
push esi
push eax
push ebx
mov ebx, dword [esp + 0x38]
push ebx
call fcn.004bb2ce
add esp, 0x10
test eax, eax
jne 0x4d497c
push 0
push esi
push ebx
call fcn.004d3f7f
add esp, 0xc
test eax, eax
jne 0x4d497c
mov ecx, ebx
call fcn.004d0dbf
mov ecx, dword [ebx + 0xe0]
test al, al
jne 0x4d4a17
add ecx, 0xffffff9c
xor eax, eax
cmp ecx, 0x63
ja 0x4d4320
mov eax, dword [ebx + 0xc0]
mov dword [ebx + 0xc8], eax
push ebx
call fcn.004d09c9
add esp, 4
test eax, eax
jne 0x4d497c
cmp dword [ebx + 0xe0], 0x12c
jl 0x4d4391
mov eax, dword [esp + 0x30]
cmp byte [eax + 0x1d8], 0
jne 0x4d435d
cmp byte [eax + 0x1ce], 0
je 0x4d4605
cmp byte [ebx + 0xd22], 0
je 0x4d4391
mov eax, dword [esp + 0x30]
cmp dword [eax + 0x204], 0xffffffff
je 0x4d4391
cmp byte [ebx + 0x68b], 0
je 0x4d438a
push str.Keep_sending_data_to_get_tossed_away
push ebx
call fcn.004abf96
add esp, 8
or byte [ebx + 0xe4], 2
cmp byte [ebx + 0x14a], 0
jne 0x4d45e0
jmp 0x4d4a30
push 5
push str.HTTP_
push esi
call fcn.00714b80
add esp, 0xc
test eax, eax
je 0x4d4696
push ebp
call fcn.004b6f3c
add esp, 4
mov edi, eax
push ebp
call fcn.004b6f2e
add esp, 4
mov ecx, dword [esp + 0x2c]
mov edx, eax
push edi
call fcn.004d4b98
add esp, 4
cmp eax, 1
jne 0x4d4ab7
mov esi, dword [esp + 0x2c]
mov dword [esi + 0xe0], 0xc8
mov eax, dword [esp + 0x30]
mov byte [eax + 0x291], 0xa
jmp 0x4d44ee
bt eax, 0x12
jae 0x4d4ab7
mov esi, edi
movzx eax, byte [esi]
cmp eax, 0x20
je 0x4d441e
cmp eax, 9
jne 0x4d4421
inc esi
jmp 0x4d4411
push 5
push str.RTSP_
push esi
call fcn.00714b80
add esp, 0xc
test eax, eax
jne 0x4d4ab7
mov al, byte [esi + 5]
add al, 0xd0
mov edi, 8
cmp al, 9
ja 0x4d4b3e
cmp byte [esi + 6], 0x2e
jne 0x4d4b3e
mov al, byte [esi + 7]
add al, 0xd0
cmp al, 9
ja 0x4d4b3e
movzx eax, byte [esi + 8]
cmp eax, 0x20
je 0x4d4474
cmp eax, 9
jne 0x4d4b3e
mov cl, byte [esi + 9]
add cl, 0xd0
cmp cl, 9
ja 0x4d4b3e
mov dl, byte [esi + 0xa]
mov eax, edx
add al, 0xd0
cmp al, 9
ja 0x4d4b3e
mov al, byte [esi + 0xb]
add al, 0xd0
cmp al, 9
ja 0x4d4b3e
movzx ecx, cl
imul ecx, ecx, 0x64
movzx edx, dl
add edx, edx
lea edx, [edx + edx*4]
add dl, 0x20
movzx edx, dl
add edx, ecx
movzx eax, al
add eax, edx
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 0xe0], eax
movzx eax, byte [esi + 0xc]
cmp eax, 9
je 0x4d44dc
cmp eax, 0x20
je 0x4d44dc
add al, 0xf6
cmp al, 3
ja 0x4d4b3e
mov eax, dword [esp + 0x30]
mov byte [eax + 0x291], 0xb
mov esi, dword [esp + 0x2c]
mov ebp, dword [esp]
push eax
push esi
call fcn.004d3dfd
add esp, 8
mov esi, 0xc
push ebp
call fcn.004b6f2e
add esp, 4
mov ecx, ebp
mov ebp, eax
push ecx
call fcn.004b6f3c
add esp, 4
mov edi, eax
push eax
push 0
push ebp
call fcn.006f9da0
add esp, 0xc
test eax, eax
jne 0x4d4a91
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0xd0]
cmp eax, 2
jl 0x4d455f
movzx ecx, byte [ebp]
cmp ecx, 0x20
je 0x4d4546
cmp ecx, 9
jne 0x4d454b
cmp eax, 2
jne 0x4d455f
push edi
push 0x3a
push ebp
call fcn.006f9da0
add esp, 0xc
test eax, eax
je 0x4d4b03
mov ebp, ebx
push ebx
push dword [esp + 0x34]
mov ebx, dword [esp + 0x34]
push ebx
call fcn.004d3666
add esp, 0xc
test eax, eax
jne 0x4d497c
mov eax, dword [ebx + 0xe0]
add eax, 0xffffff9c
lea edi, [esi + 0x20]
cmp eax, 0x64
cmovae edi, esi
mov esi, dword [esp]
push esi
call fcn.004b6f3c
add esp, 4
push eax
push ebp
push 1
push ebx
call fcn.004abe6c
add esp, 0x10
push esi
call fcn.004b6f3c
add esp, 4
push eax
push ebp
push edi
push ebx
call fcn.004bb2ce
add esp, 0x10
test eax, eax
jne 0x4d497c
push esi
call fcn.004b6f3c
add esp, 4
push 0
push eax
push ebx
call fcn.004d3f7f
add esp, 0xc
test eax, eax
jne 0x4d497c
mov esi, dword [esp]
push esi
call fcn.004b6d96
add esp, 4
mov ebp, dword [ebx + 0xd4]
cmp byte [ebp], 0
mov eax, dword [esp + 0x34]
jne 0x4d4040
jmp 0x4d4b3c
cmp byte [ebx + 0xd22], 0
jne 0x4d4366
mov al, byte [ebx + 0xd0e]
dec al
cmp al, 3
ja 0x4d435d
push 0
push ebx
call fcn.004b617f
add esp, 8
cmp byte [ebx + 0x14c], 0
jne 0x4d435d
cmp dword [ebx + 0xe0], 0x1a1
jne 0x4d4883
cmp byte [ebx + 0xd17], 0
je 0x4d4883
mov eax, dword [ebx + 0xa0]
or eax, dword [ebx + 0xa4]
jne 0x4d491f
cmp dword [ebx + 0xf8], 1
jne 0x4d491f
cmp byte [ebx + 0x68b], 0
je 0x4d494e
push str.Got_HTTP_failure_417_while_waiting_for_a_100
push ebx
call fcn.004abf96
add esp, 8
jmp 0x4d494e
movzx eax, byte [esi + 5]
lea ecx, [eax - 0x32]
cmp ecx, 2
jae 0x4d4740
movzx ecx, byte [esi + 6]
cmp ecx, 0x20
je 0x4d46b8
cmp ecx, 9
jne 0x4d43bb
mov cl, byte [esi + 7]
add cl, 0xd0
cmp cl, 9
ja 0x4d43bb
mov ch, byte [esi + 8]
mov dl, ch
add dl, 0xd0
cmp dl, 9
ja 0x4d43bb
mov dl, byte [esi + 9]
add dl, 0xd0
cmp dl, 9
ja 0x4d43bb
lea eax, [eax + eax*4]
lea eax, [eax*2 - 0x1e0]
movzx edi, cl
imul edi, edi, 0x64
movzx ecx, ch
add ecx, ecx
lea ecx, [ecx + ecx*4]
add cl, 0x20
movzx ebp, cl
add ebp, edi
movzx ecx, dl
add ecx, ebp
mov edx, dword [esp + 0x2c]
mov dword [edx + 0xe0], ecx
movzx edx, byte [esi + 0xa]
cmp edx, 9
je 0x4d47dc
cmp edx, 0x20
je 0x4d47dc
add dl, 0xf6
cmp dl, 4
mov ebp, dword [esp]
jae 0x4d43bb
jmp 0x4d47f0
cmp eax, 0x31
jne 0x4d4b5e
cmp byte [esi + 6], 0x2e
jne 0x4d4b48
movzx eax, byte [esi + 7]
mov ecx, eax
and cl, 0xfe
cmp cl, 0x30
jne 0x4d4b48
movzx ecx, byte [esi + 8]
cmp ecx, 0x20
je 0x4d4777
cmp ecx, 9
jne 0x4d4b48
mov cl, byte [esi + 9]
add cl, 0xd0
cmp cl, 9
ja 0x4d4b48
mov ch, byte [esi + 0xa]
mov dl, ch
add dl, 0xd0
cmp dl, 9
ja 0x4d4b48
mov dl, byte [esi + 0xb]
add dl, 0xd0
cmp dl, 9
ja 0x4d4b48
add eax, 0xffffffda
movzx edi, cl
imul edi, edi, 0x64
movzx ecx, ch
add ecx, ecx
lea ecx, [ecx + ecx*4]
add cl, 0x20
movzx ebp, cl
add ebp, edi
movzx ecx, dl
add ecx, ebp
mov edx, dword [esp + 0x2c]
mov dword [edx + 0xe0], ecx
movzx edx, byte [esi + 0xc]
cmp edx, 9
je 0x4d47dc
cmp edx, 0x20
jne 0x4d47e1
mov ebp, dword [esp]
jmp 0x4d47f0
add dl, 0xf6
cmp dl, 4
mov ebp, dword [esp]
jae 0x4d4b48
cmp ecx, 0x63
jbe 0x4d4b65
mov ecx, eax
and ecx, 0xfffffffe
cmp ecx, 0xa
jne 0x4d4b6c
mov ecx, dword [esp + 0x30]
mov byte [ecx + 0x291], al
mov esi, dword [esp + 0x2c]
cmp dword [esi + 0xfc], 3
jne 0x4d4846
cmp byte [esi + 0x68b], 0
je 0x4d4846
push str.Lying_server__not_serving_HTTP_2
push esi
call fcn.004abf96
mov eax, dword [esp + 0x38]
add esp, 8
cmp byte [eax + 0x291], 0x13
ja 0x4d44ee
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x264]
mov dword [eax], 0xffffffff
mov eax, dword [esp + 0x30]
jmp 0x4d44ee
cmp byte [esi + 0x68b], 0
je 0x4d4876
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end
push esi
call fcn.004abf96
add esp, 8
push 2
push ebx
call fcn.004bbbc5
jmp 0x4d4143
cmp byte [ebx + 0x683], 0
mov al, byte [ebx + 0x68b]
je 0x4d48c7
test al, al
je 0x4d48a4
push str.HTTP_error_before_end_of_send__keep_sending
push ebx
call fcn.004abf96
add esp, 8
cmp dword [ebx + 0xf8], 0
jle 0x4d435d
mov dword [ebx + 0xf8], 0
or byte [ebx + 0xe4], 2
jmp 0x4d435d
test al, al
je 0x4d48d9
push str.HTTP_error_before_end_of_send__stop_sending
push ebx
call fcn.004abf96
add esp, 8
push 2
push dword [esp + 0x34]
call fcn.004bbbc5
add esp, 8
push dword [esp + 8]
push ebx
call fcn.004d8119
add esp, 8
test eax, eax
jne 0x4d497c
mov byte [ebx + 0x14c], 1
cmp byte [ebx + 0xd17], 0
je 0x4d435d
mov dword [ebx + 0xf8], 3
jmp 0x4d435d
cmp byte [ebx + 0x68b], 0
je 0x4d4936
push str.Got_HTTP_failure_417_while_sending_data
push ebx
call fcn.004abf96
add esp, 8
push 2
mov ebp, dword [esp + 0x34]
push ebp
call fcn.004bbbc5
add esp, 8
mov ecx, ebx
mov edx, ebp
call fcn.004d0c30
mov byte [ebx + 0xd18], 1
push dword [ebx + 0xc64]
call dword [0x7ec0e8]
add esp, 4
mov dword [ebx + 0x118], eax
push dword [esp + 8]
push ebx
call fcn.004d8119
add esp, 8
jmp 0x4d435d
mov edi, eax
jmp 0x4d4b3e
push edi
push ebp
push dword [esp + 8]
call fcn.004b6e00
add esp, 0xc
mov edi, eax
test eax, eax
mov ebx, dword [esp + 0x30]
jne 0x4d4b3e
xor edi, edi
mov esi, dword [esp + 0x2c]
cmp dword [esi + 0xd0], 0
jne 0x4d4b3e
mov ebp, dword [esp]
push ebp
call fcn.004b6f3c
add esp, 4
mov dword [esp + 4], eax
push ebp
call fcn.004b6f2e
add esp, 4
mov ecx, esi
mov edx, eax
push dword [esp + 4]
call fcn.004d4b98
add esp, 4
cmp eax, 2
jne 0x4d4b3e
mov byte [esi + 0x14a], 0
mov eax, 2
mov dword [esi + 0xcc], eax
push eax
push ebx
call fcn.004bbbc5
add esp, 8
cmp byte [esi + 0x6a4], 0
jne 0x4d4b3e
push str.Received_HTTP_0.9_when_not_allowed
jmp 0x4d4b4d
push ecx
push str.The_requested_URL_returned_error:__d
push ebx
call fcn.004abf08
add esp, 0xc
mov edi, 0x16
jmp 0x4d4b3e
cmp byte [ebx + 0x154], 0
mov ecx, dword [esp + 0x38]
je 0x4d4a40
mov byte [ecx], 1
mov eax, dword [ebx + 0x90]
or eax, dword [ebx + 0x94]
je 0x4d4a98
cmp byte [ecx], 0
jne 0x4d4a9b
jmp 0x4d4aa2
push 2
push dword [esp + 0x34]
call fcn.004bbbc5
add esp, 8
cmp byte [ebx + 0x6a4], 0
je 0x4d4ac4
mov byte [ebx + 0x14a], 0
mov ecx, dword [esp + 0x34]
mov eax, dword [ecx]
or eax, dword [ecx + 4]
je 0x4d4b1b
mov dword [ebx + 0xcc], 1
jmp 0x4d4b3c
push str.Nul_byte_in_header
jmp 0x4d4b08
mov byte [ecx], 1
and byte [ebx + 0xe4], 0xfe
push esi
push dword [esp + 8]
push 1
push ebx
call fcn.004abe6c
add esp, 0x10
jmp 0x4d4b3c
mov eax, dword [esp + 0x2c]
mov byte [eax + 0x14a], 0
jmp 0x4d4b3c
push str.Received_HTTP_0.9_when_not_allowed
push ebx
jmp 0x4d4b51
cmp byte [esi + 0x68b], 0
je 0x4d4ae6
push str.Received_101__Switching_to_HTTP_2
push esi
call fcn.004abf96
add esp, 8
mov dword [esi + 0xfc], 3
mov byte [esi + 0x14a], 1
mov dword [esi + 0xd0], 0
jmp 0x4d4b59
push str.Header_without_colon
push dword [esp + 0x30]
call fcn.004abf08
add esp, 8
mov edi, 8
jmp 0x4d4b3e
mov dword [ebx + 0xcc], 2
mov eax, dword [esp + 0xc]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x14]
mov dword [ecx], eax
mov eax, dword [esp + 0x10]
mov dword [ebx + 0xd4], eax
xor edi, edi
mov eax, edi
add esp, 0x18
pop esi
pop edi
pop ebx
pop ebp
ret
push str.Unsupported_HTTP_1_subversion_in_response
push dword [esp + 0x30]
call fcn.004abf08
add esp, 8
xor edi, edi
inc edi
jmp 0x4d4b3e
push str.Unsupported_HTTP_version_in_response
jmp 0x4d4b4d
push str.Unsupported_response_code_in_HTTP_response
jmp 0x4d4b4d
movzx ecx, al
imul ecx, ecx, 0xcd
shr ecx, 0xb
lea edx, [ecx + ecx]
lea edx, [edx + edx*4]
sub al, dl
movzx eax, al
push eax
push ecx
push str.Unsupported_HTTP_version___u._d__in_response
push dword [esp + 0x38]
call fcn.004abf08
add esp, 0x10
jmp 0x4d4b59