Function at 0x420e00
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
lea esi, [edi + 0x18]
nop
mov eax, dword [esi + 0x5c]
mov ecx, dword [ebp + 0x10]
mov dword [esi + 0x60], eax
mov edx, dword [ecx]
push edx
push 0xa
push eax
call fcn.0045d910
mov ecx, dword [ebp + 0x10]
add esp, 0xc
mov dword [esi + 0x64], eax
mov ebx, edi
test eax, eax
je 0x421850
sub eax, dword [esi + 0x5c]
inc eax
sub dword [ecx], eax
mov dword [ebp - 8], eax
mov eax, dword [esi + 0x64]
inc eax
mov dword [esi + 0x5c], eax
sub eax, dword [esi + 0x60]
push eax
call fcn.0041f420
add esp, 4
test eax, eax
jne 0x4219a4
cmp dword [esi + 0x50], 0
mov eax, dword [esi + 0x54]
mov dword [esi + 0x64], eax
mov ecx, dword [edi + 0x524]
mov dword [esi + 0x68], ecx
jne 0x420ecf
cmp dword [esi + 0x58], 5
jbe 0x420ecf
mov ebx, dword [ebp + 0xc]
test dword [ebx + 0x30], 0x40000
mov eax, dword [edi + 0x524]
je 0x420ea0
push 5
push eax
push str.RTSP_
call fcn.0042b720
add esp, 0xc
neg eax
sbb eax, eax
neg eax
jmp 0x420eac
mov ebx, eax
mov eax, edi
call fcn.0041f380
mov ebx, dword [ebp + 0xc]
test eax, eax
jne 0x420ed2
mov dword [esi + 0x48], eax
mov eax, dword [ebp + 0x10]
cmp dword [eax], 0
je 0x4218a1
pop edi
mov dword [esi + 0x4c], 1
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp + 0xc]
mov eax, dword [esi + 0x68]
mov cl, byte [eax]
cmp cl, 0xa
je 0x4216c5
cmp cl, 0xd
je 0x4216ca
mov ecx, dword [esi + 0x50]
lea edx, [ecx + 1]
mov dword [esi + 0x50], edx
test ecx, ecx
jne 0x4210cd
mov ecx, dword [ebx + 0x30]
test cl, 1
je 0x420f79
mov ebx, dword [ebp + 0xc]
lea ecx, [esi + 0x78]
push ecx
add ebx, 0x114
push ebx
lea ecx, [ebp + 8]
push ecx
push str._HTTP__d._d__3d
push eax
call fcn.0045e263
add esp, 0x14
cmp eax, 3
jne 0x420f32
mov eax, dword [ebp + 8]
lea edx, [eax + eax*4]
jmp 0x420fc1
lea eax, [esi + 0x78]
push eax
mov eax, dword [esi + 0x68]
push str._HTTP__3d
push eax
call fcn.0045e263
add esp, 0xc
mov dword [ebx], 0xa
test eax, eax
jne 0x420fc5
mov ebx, dword [esi + 0x68]
mov eax, edi
call fcn.0041f380
test eax, eax
je 0x4218bc
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x78], 0xc8
mov dword [eax + 0x114], 0xa
jmp 0x420fc5
test ecx, 0x40000
je 0x4218bc
mov ebx, dword [ebp + 0xc]
lea ecx, [esi + 0x78]
push ecx
add ebx, 0x118
push ebx
lea ecx, [ebp - 4]
push ecx
push str._RTSP__d._d__3d
push eax
call fcn.0045e263
add esp, 0x14
cmp eax, 3
jne 0x4218bc
mov eax, dword [ebp - 4]
lea edx, [eax + eax*4]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x114], 0xb
add edx, edx
add dword [ebx], edx
mov eax, dword [esi + 0x78]
mov ebx, dword [ebp + 0xc]
mov dword [edi + 0x8674], eax
mov eax, dword [edi + 0x860c]
mov ecx, dword [ebx + 0x114]
mov dword [edi + 0x867c], ecx
test eax, eax
je 0x420fef
cmp eax, dword [ebx + 0x114]
jle 0x420ffb
mov edx, dword [ebx + 0x114]
mov dword [edi + 0x860c], edx
cmp dword [edi + 0x2b0], 0
je 0x421058
mov eax, dword [esi + 0x78]
cmp eax, 0x190
jl 0x421058
cmp eax, 0x191
jne 0x42101e
cmp dword [ebx + 0x1a4], 0
jne 0x421058
cmp eax, 0x197
jne 0x42102e
cmp dword [ebx + 0x1a8], 0
jne 0x421058
mov ecx, dword [edi + 0x8638]
or ecx, dword [edi + 0x863c]
je 0x4218b6
cmp dword [edi + 0x210], 1
jne 0x4218b6
cmp eax, 0x1a0
jne 0x4218b6
mov eax, dword [ebx + 0x114]
cmp eax, 0xa
jne 0x42107d
push str.HTTP_1.0__assume_close_after_body_n
push edi
call fcn.0042d0e0
add esp, 8
mov dword [ebx + 0x194], 1
jmp 0x421095
cmp eax, 0xb
jl 0x421095
cmp dword [ebx + 0x194], 0
jne 0x421095
mov dword [ebx + 0x238], 1
mov eax, dword [esi + 0x78]
sub eax, 0xcc
je 0x4210a4
sub eax, 0x64
jne 0x4210cd
xor eax, eax
cmp dword [edi + 0x200], eax
je 0x4210b8
mov dword [edi + 0x8684], 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 0x421182
cmp dword [edi + 0x30c], 0
jne 0x421182
mov edx, dword [esi + 0x68]
push 0xf
push edx
push str.Content_Length:
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x421182
mov eax, dword [esi + 0x68]
push 0xa
add eax, 0xf
push 0
push eax
call fcn.0045ec15
mov ebx, dword [edi + 0x278]
mov ecx, dword [edi + 0x27c]
add esp, 0xc
or ebx, ecx
je 0x42113b
cmp edx, ecx
jg 0x4218cc
jl 0x42113b
cmp eax, dword [edi + 0x278]
ja 0x4218cc
test edx, edx
jl 0x421160
jg 0x421145
test eax, eax
jb 0x421160
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.0042ad50
add esp, 0xc
jmp 0x421661
mov ecx, dword [ebp + 0xc]
push edx
push eax
push str.Negative_content_length:__lld__closing_after_transfer_n
push edi
mov dword [ecx + 0x194], 1
call fcn.0042d0e0
add esp, 0x10
jmp 0x421661
mov edx, dword [esi + 0x68]
push 0xd
push edx
push str.Content_Type:
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x4211dd
mov eax, dword [esi + 0x68]
push eax
call fcn.0041e660
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4218e6
cmp byte [ebx], 0
jne 0x4211c3
push ebx
call dword [0x4944a8]
add esp, 4
jmp 0x421661
mov ecx, dword [edi + 0x869c]
push ecx
call sym.ali213_engine_v1.exe_curl_free
add esp, 4
mov dword [edi + 0x869c], ebx
jmp 0x421661
mov ebx, dword [ebp + 0xc]
cmp dword [ebx + 0x114], 0xa
jne 0x421229
cmp dword [ebx + 0x1a0], 0
je 0x421229
mov edx, dword [esi + 0x68]
push str.keep_alive
push str.Proxy_Connection:
push edx
call fcn.0041f130
add esp, 0xc
test eax, eax
je 0x421229
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push edi
mov dword [ebx + 0x194], 0
call fcn.0042d0e0
add esp, 8
jmp 0x421661
cmp dword [ebx + 0x114], 0xb
jne 0x421272
cmp dword [ebx + 0x1a0], 0
je 0x421272
mov eax, dword [esi + 0x68]
push str.close
push str.Proxy_Connection:
push eax
call fcn.0041f130
add esp, 0xc
test eax, eax
je 0x421272
push str.HTTP_1.1_proxy_connection_set_close__n
push edi
mov dword [ebx + 0x194], 1
call fcn.0042d0e0
add esp, 8
jmp 0x421661
cmp dword [ebx + 0x114], 0xa
jne 0x4212b2
mov ecx, dword [esi + 0x68]
push str.keep_alive
push str.Connection:
push ecx
call fcn.0041f130
add esp, 0xc
test eax, eax
je 0x4212b2
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
mov dword [ebx + 0x194], 0
call fcn.0042d0e0
add esp, 8
jmp 0x421661
mov edx, dword [esi + 0x68]
push str.close
push str.Connection:
push edx
call fcn.0041f130
add esp, 0xc
test eax, eax
je 0x4212db
mov dword [ebx + 0x194], 1
jmp 0x421661
mov eax, dword [esi + 0x68]
push str.chunked
push str.Transfer_Encoding:
push eax
call fcn.0041f130
add esp, 0xc
test eax, eax
je 0x421316
test dword [ebx + 0x30], 0x40000
jne 0x421316
push ebx
mov dword [esi + 0xc8], 1
call fcn.004222e0
add esp, 4
jmp 0x421661
mov ecx, dword [esi + 0x68]
push 0x11
push ecx
push str.Content_Encoding:
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x421420
cmp dword [edi + 0x348], 0
je 0x421420
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0x11]
add ebx, 0x11
test al, al
je 0x421368
jmp 0x421350
movzx edx, al
push edx
call fcn.0045f99b
add esp, 4
test eax, eax
je 0x421368
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x421350
push 8
push ebx
push str.identity
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x42138b
mov dword [esi + 0x88], 0
jmp 0x421661
push 7
push ebx
push str.deflate
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x4213ae
mov dword [esi + 0x88], 1
jmp 0x421661
push 4
push ebx
push str.gzip
call fcn.0042b720
add esp, 0xc
test eax, eax
jne 0x421411
push 6
push ebx
push str.x_gzip
call fcn.0042b720
add esp, 0xc
test eax, eax
jne 0x421411
push 8
push ebx
push str.compress
call fcn.0042b720
add esp, 0xc
test eax, eax
jne 0x421402
push 0xa
push ebx
push str.x_compress
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x421661
mov dword [esi + 0x88], 3
jmp 0x421661
mov dword [esi + 0x88], 2
jmp 0x421661
mov eax, dword [esi + 0x68]
push 0xe
push eax
push str.Content_Range:
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x421493
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0xe]
add ebx, 0xe
test al, al
je 0x42145c
movzx ecx, al
push ecx
call fcn.0045f896
add esp, 4
test eax, eax
jne 0x42145c
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x421444
push 0xa
push 0
push ebx
call fcn.0045ec15
add esp, 0xc
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edx
cmp dword [edi + 0x8638], eax
jne 0x421661
cmp dword [edi + 0x863c], edx
jne 0x421661
mov dword [esi + 0x6c], 1
jmp 0x421661
cmp dword [edi + 0x408], 0
je 0x4214fb
mov ecx, dword [esi + 0x68]
push 0xb
push ecx
push str.Set_Cookie:
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x4214fb
push 2
push 2
push edi
call fcn.0042d8d0
mov eax, dword [ebx + 0x224]
add esp, 0xc
test eax, eax
jne 0x4214cd
mov eax, dword [ebx + 0x7c]
mov edx, dword [edi + 0x8624]
mov ecx, dword [edi + 0x408]
push edx
push eax
mov eax, dword [esi + 0x68]
add eax, 0xb
push eax
push 1
push ecx
push edi
call fcn.00412170
push 2
push edi
call fcn.0042d910
add esp, 0x20
jmp 0x421661
mov edx, dword [esi + 0x68]
push 0xe
push edx
push str.Last_Modified:
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x42156b
cmp dword [edi + 0x200], 0
jne 0x421524
cmp dword [edi + 0x294], 0
je 0x42156b
push 0
call fcn.0045e8a0
mov ecx, dword [esi + 0x68]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
add ecx, 0xe
push ecx
mov dword [ebp - 0xc], edx
call dword [0x48e094]
add esp, 0xc
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
cmp dword [edi + 0x294], 0
je 0x421661
mov edx, eax
mov dword [edi + 0x8680], edx
jmp 0x421661
mov eax, dword [esi + 0x68]
push 0x11
push eax
push str.WWW_Authenticate:
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x42158c
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x4215ad
mov ecx, dword [esi + 0x68]
push 0x13
push ecx
push str.Proxy_authenticate:
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x4215c0
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x4215c0
mov edx, dword [esi + 0x68]
push edx
push eax
push ebx
call fcn.0041ec30
add esp, 0xc
jmp 0x421659
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x421641
cmp eax, 0x190
jge 0x421641
mov eax, dword [esi + 0x68]
push 9
push eax
push str.Location:
call fcn.0042b720
add esp, 0xc
test eax, eax
je 0x421641
mov ecx, dword [esi + 0x68]
push ecx
call fcn.0041e660
add esp, 4
test eax, eax
je 0x4218e6
cmp byte [eax], 0
jne 0x42160d
push eax
call dword [0x4944a8]
add esp, 4
jmp 0x421661
cmp dword [edi + 0x2b4], 0
mov dword [edi + 0xd0], eax
je 0x421661
push eax
call dword [0x4944b0]
add esp, 4
mov dword [edi + 0xd4], eax
test eax, eax
je 0x4218e6
mov edx, ebx
push edx
call fcn.0041e870
add esp, 4
jmp 0x421659
test dword [ebx + 0x30], 0x40000
je 0x421661
mov eax, dword [esi + 0x68]
push eax
mov ecx, ebx
push ecx
call fcn.0042c2f0
add esp, 8
test eax, eax
jne 0x4219a4
cmp dword [edi + 0x2bc], 0
mov ebx, 2
je 0x421674
mov ebx, 3
cmp dword [edi + 0x2d8], 0
je 0x421694
mov edx, dword [ebp + 0xc]
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x68]
push edx
push eax
push ecx
push 1
push edi
call fcn.0042cf40
add esp, 0x14
mov edx, dword [esi + 0x58]
mov eax, dword [esi + 0x68]
mov ecx, dword [ebp + 0xc]
push edx
push eax
push ebx
push ecx
call fcn.0042d570
add esp, 0x10
test eax, eax
jne 0x4219a4
mov edx, dword [esi + 0x58]
add dword [edi + 0x8688], edx
mov eax, dword [esi + 0x58]
add dword [edi + 0x48], eax
jmp 0x42181f
cmp cl, 0xd
jne 0x4216ce
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x4216da
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x42170c
cmp eax, 0xc7
jg 0x42170c
xor eax, eax
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], eax
cmp dword [esi + 0x84], eax
je 0x421759
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], eax
jmp 0x421759
mov edx, dword [esi]
and edx, dword [esi + 4]
mov dword [esi + 0x48], 0
cmp edx, 0xffffffff
jne 0x421759
cmp dword [esi + 0xc8], 0
jne 0x421759
cmp dword [ebx + 0x194], 0
jne 0x421759
cmp dword [ebx + 0x114], 0xb
jl 0x421759
test dword [ebx + 0x30], 0x40000
jne 0x421759
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push edi
call fcn.0042d0e0
add esp, 8
mov dword [ebx + 0x194], 1
cmp dword [esi + 0x78], 0x1a1
jne 0x421773
and dword [esi + 0xa8], 0xfffffffd
mov dword [esi + 0x84], 3
push ebx
call fcn.0041ed60
add esp, 4
test eax, eax
jne 0x4218f2
lea ecx, [eax + 2]
cmp dword [edi + 0x2bc], eax
je 0x421792
lea ecx, [eax + 3]
mov eax, dword [edi + 0x524]
mov ebx, dword [esi + 0x68]
sub ebx, eax
push ebx
push eax
mov eax, dword [ebp + 0xc]
push ecx
push eax
call fcn.0042d570
add esp, 0x10
test eax, eax
jne 0x4219a4
add dword [edi + 0x48], ebx
add dword [edi + 0x8688], ebx
mov eax, dword [esi + 0x78]
mov ecx, dword [edi + 0x48]
cmp eax, 0x64
jl 0x4217d3
cmp eax, 0xc7
jg 0x4217d3
mov eax, ecx
jmp 0x4217d5
xor eax, eax
mov ecx, dword [ebp + 0x14]
mov dword [edi + 0x4c], eax
cmp dword [ecx], 0
jne 0x421815
mov edx, dword [ebp + 0xc]
push edx
call fcn.0041f4e0
add esp, 4
test eax, eax
jne 0x4219a4
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0x1d0], 0
je 0x421815
push str.Keep_sending_data_to_get_tossed_away__n
push edi
call fcn.0042d0e0
add esp, 8
or dword [esi + 0xa8], 2
cmp dword [esi + 0x48], 0
je 0x421910
mov ecx, dword [edi + 0x524]
mov edx, dword [ebp + 0x14]
mov dword [esi + 0x58], 0
mov dword [esi + 0x54], ecx
cmp dword [edx], 0
jne 0x4219a2
mov eax, dword [esi + 0x5c]
cmp byte [eax], 0
jne 0x420e10
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ecx]
push edx
call fcn.0041f420
add esp, 4
test eax, eax
jne 0x4219a4
cmp dword [esi + 0x50], eax
jne 0x4219a2
cmp dword [esi + 0x58], 5
jbe 0x4219a2
mov ecx, dword [edi + 0x524]
mov eax, dword [ebp + 0xc]
push edi
call fcn.0041f3e0
add esp, 4
test eax, eax
jne 0x4219a2
pop edi
mov dword [esi + 0x48], eax
mov dword [esi + 0x4c], 2
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 8]
pop edi
mov dword [esi + 0x4c], 2
pop esi
mov dword [eax], ecx
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x78]
push edx
jmp 0x4218f6
pop edi
mov dword [esi + 0x48], 0
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
push str.Maximum_file_size_exceeded
push edi
call fcn.0042d160
add esp, 8
pop edi
pop esi
mov eax, 0x3f
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x78]
push eax
push str.The_requested_URL_returned_error:__d
push edi
call fcn.0042d160
add esp, 0xc
pop edi
pop esi
mov eax, 0x16
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x2c8], 0
je 0x421924
mov ecx, dword [ebp + 0x14]
mov dword [ecx], 1
jmp 0x42193b
cmp dword [esi + 0xc8], 0
je 0x42193b
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 0x421949
cmp ecx, eax
je 0x42195f
push ecx
push eax
push edi
call fcn.0042ad50
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 0x421976
cmp dword [esi + 0x14], 0
jne 0x421976
mov ecx, dword [ebp + 0x14]
mov dword [ecx], 1
jmp 0x42197e
mov edx, dword [ebp + 0x14]
cmp dword [edx], 0
je 0x421985
and dword [esi + 0xa8], 0xfffffffe
cmp dword [edi + 0x2d8], 0
je 0x4219a2
mov eax, dword [ebp + 0xc]
mov ecx, dword [esi + 0x60]
push eax
push ebx
push ecx
push 1
push edi
call fcn.0042cf40
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret