Function at 0x100146d0
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0x10]
sub esp, 0x24
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov ebx, dword [esi + 0xac]
mov dword [esi + 0xb0], ebx
push dword [eax]
push 0xa
push ebx
call sub.VCRUNTIME140.dll_memchr
mov edi, eax
add esp, 0xc
mov dword [esi + 0xb4], edi
test edi, edi
je 0x10015534
mov eax, dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtoll]
mov dword [ebp - 0x10], eax
mov eax, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
mov dword [ebp - 8], eax
mov eax, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
mov dword [ebp - 0xc], eax
mov eax, dword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 0x10]
sub edi, ebx
inc edi
lea ebx, [esi + 0x50]
sub dword [eax], edi
mov eax, dword [esi + 0xb4]
inc eax
mov dword [esi + 0xac], eax
sub eax, dword [esi + 0xb0]
push eax
push ebx
push esi
call fcn.100158b0
add esp, 0xc
test eax, eax
jne 0x10015584
cmp dword [esi + 0xa0], 0
mov eax, dword [esi + 0xa4]
mov dword [esi + 0xb4], eax
mov eax, dword [esi + 0x634]
mov dword [esi + 0xb8], eax
jne 0x10014799
cmp dword [esi + 0xa8], 5
jbe 0x10014799
push eax
mov eax, dword [ebp + 0xc]
push eax
push esi
call fcn.100157b0
add esp, 0xc
test al, al
je 0x1001558b
mov edx, dword [esi + 0xb8]
mov al, byte [edx]
cmp al, 0xa
je 0x10015229
cmp al, 0xd
je 0x1001522d
mov ecx, dword [esi + 0xa0]
lea eax, [ecx + 1]
mov dword [esi + 0xa0], eax
test ecx, ecx
jne 0x10014a4e
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x3a0]
mov eax, dword [eax + 0x3c]
test al, 3
je 0x10014904
lea ebx, [esi + 0xc8]
push ebx
lea edi, [ecx + 0x178]
push edi
lea eax, [ebp - 4]
push eax
push str._HTTP__d._d__d
push edx
call fcn.10004ec0
add esp, 0x14
cmp eax, 1
jne 0x10014830
cmp dword [ebp - 4], 2
jne 0x100148be
push ebx
push str._HTTP_2__d
push dword [esi + 0xb8]
call fcn.10004ec0
add esp, 0xc
cmp eax, 1
jne 0x100148be
mov dword [edi], 0
jmp 0x10014839
cmp eax, 3
jne 0x100148be
mov eax, dword [ebp - 4]
lea ecx, [eax + eax*4]
mov eax, dword [edi]
lea eax, [eax + ecx*2]
mov dword [edi], eax
cmp dword [esi + 0xd8], 2
jne 0x10014862
cmp eax, 0x14
je 0x10014862
push str.Lying_server__not_serving_HTTP_2_n
push esi
call fcn.100245d0
add esp, 8
mov edx, dword [ebp + 0xc]
mov eax, dword [ebx]
mov dword [esi + 0x4818], eax
mov eax, dword [edi]
mov dword [esi + 0x4820], eax
mov eax, dword [esi + 0x4798]
test eax, eax
je 0x10014883
cmp eax, dword [edi]
jle 0x1001488b
mov eax, dword [edi]
mov dword [esi + 0x4798], eax
cmp byte [esi + 0x340], 0
je 0x10014996
mov ecx, dword [ebx]
cmp ecx, 0x190
jl 0x10014996
cmp ecx, 0x191
jne 0x1001495a
cmp byte [edx + 0x36c], 0
jmp 0x10014969
push ebx
push str._HTTP__3d
push dword [esi + 0xb8]
call fcn.10004ec0
add esp, 0xc
mov dword [edi], 0xa
test eax, eax
jne 0x10014862
push dword [esi + 0xb8]
push esi
call fcn.10015730
add esp, 8
test al, al
je 0x1001557b
mov dword [ebx], 0xc8
mov dword [edi], 0xa
jmp 0x10014862
test eax, 0x40000
je 0x1001557b
lea ebx, [esi + 0xc8]
push ebx
lea edi, [ecx + 0x17c]
push edi
lea eax, [ebp - 0x14]
push eax
push str._RTSP__d._d__3d
push edx
call fcn.10004ec0
add esp, 0x14
cmp eax, 3
jne 0x1001557b
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x178], 0xb
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
lea edi, [edx + 0x178]
jmp 0x10014865
cmp ecx, 0x197
jne 0x1001496b
cmp byte [edx + 0x36d], 0
jne 0x10014996
mov eax, dword [esi + 0x47b0]
or eax, dword [esi + 0x47b4]
je 0x100155c2
cmp dword [esi + 0x248], 1
jne 0x100155c2
cmp ecx, 0x1a0
jne 0x100155c2
mov eax, dword [edi]
cmp eax, 0xa
jne 0x100149b8
push str.HTTP_1.0__assume_close_after_body_n
push esi
call fcn.100245d0
mov eax, dword [ebp + 0xc]
push 1
push eax
call fcn.10002140
add esp, 0x10
jmp 0x10014a0d
cmp eax, 0x14
je 0x10014a01
cmp dword [esi + 0xd8], 1
jne 0x100149cb
cmp dword [ebx], 0x65
je 0x10014a01
cmp eax, 0xb
jl 0x10014a0d
cmp byte [edx + 0x365], 0
jne 0x10014a0d
cmp dword [edx + 0x698], 0
je 0x10014a0d
push edx
push esi
call fcn.100206d0
add esp, 8
test al, al
jne 0x10014a0d
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x698]
mov dword [eax], 1
jmp 0x10014a0d
mov eax, dword [edx + 0x698]
mov dword [eax], 2
mov eax, dword [ebx]
sub eax, 0xcc
je 0x10014a1b
sub eax, 0x64
jne 0x10014a4e
cmp dword [esi + 0x23c], 0
je 0x10014a2b
mov byte [esi + 0x4828], 1
mov dword [esi + 0x50], 0
mov dword [esi + 0x54], 0
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov byte [esi + 0xfe], 1
cmp byte [esi + 0xfe], 0
jne 0x10014afc
cmp byte [esi + 0x367], 0
jne 0x10014afc
push 0xf
push dword [esi + 0xb8]
push str.Content_Length:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014afc
mov eax, dword [esi + 0xb8]
push 0xa
add eax, 0xf
push 0
push eax
call dword [ebp - 0x10]
mov ebx, edx
mov edi, eax
mov edx, dword [esi + 0x320]
add esp, 0xc
mov eax, dword [esi + 0x324]
mov ecx, edx
or ecx, eax
je 0x10014abd
cmp ebx, eax
jg 0x100155d7
jl 0x10014abd
cmp edi, edx
ja 0x100155d7
test ebx, ebx
jl 0x10014ae0
jg 0x10014ac7
test edi, edi
jb 0x10014ae0
push ebx
push edi
push esi
mov dword [esi + 0x50], edi
mov dword [esi + 0x54], ebx
mov dword [esi + 0x60], edi
mov dword [esi + 0x64], ebx
call fcn.10021cf0
add esp, 0xc
jmp 0x10014b41
push 2
push dword [ebp + 0xc]
call fcn.10002140
push ebx
push edi
push str.Negative_content_length:__I64d__closing_after_transfer_n
push esi
call fcn.100245d0
add esp, 0x18
jmp 0x10014b41
push 0xd
push dword [esi + 0xb8]
push str.Content_Type:
call sym.libcurl.dll_curl_strnequal
mov ecx, dword [esi + 0xb8]
add esp, 0xc
test eax, eax
je 0x10014bbc
push ecx
call fcn.100140c0
mov edi, eax
add esp, 4
test edi, edi
je 0x100155f1
cmp byte [edi], 0
jne 0x10014ba8
push edi
call dword [0x1004e00c]
add esp, 4
mov edi, dword [ebp + 0xc]
xor ebx, ebx
cmp byte [esi + 0x345], bl
setne bl
add ebx, 2
cmp byte [esi + 0x350], 0
je 0x10014b73
push edi
push dword [esi + 0xa8]
push dword [esi + 0xb8]
push 1
push esi
call fcn.10024440
add esp, 0x14
push dword [esi + 0xa8]
push dword [esi + 0xb8]
push ebx
push edi
call fcn.10024410
add esp, 0x10
test eax, eax
jne 0x10015584
mov eax, dword [esi + 0xa8]
add dword [esi + 0x482c], eax
add dword [esi + 0x80], eax
jmp 0x100154ed
push dword [esi + 0x4840]
call dword [0x1004e00c]
mov dword [esi + 0x4840], edi
jmp 0x10014b3e
push 7
push ecx
push str.Server:
call sym.libcurl.dll_curl_strnequal
mov edi, dword [ebp + 0xc]
add esp, 0xc
mov ecx, dword [edi + 0x178]
test eax, eax
je 0x10014c2f
cmp ecx, 0x14
jge 0x10014b44
push dword [esi + 0xb8]
call fcn.100140c0
mov ebx, dword [ebp + 0xc]
add esp, 4
mov edi, eax
mov ecx, dword [ebx + 0x698]
test ecx, ecx
je 0x10014c1e
cmp dword [ecx], 1
jne 0x10014c1e
push edi
push esi
call fcn.100204a0
add esp, 8
test al, al
je 0x10014c1e
mov eax, dword [ebx + 0x698]
mov dword [eax], 0xffffffff
push edi
call dword [0x1004e00c]
add esp, 4
mov edi, ebx
jmp 0x10014b44
cmp ecx, 0xa
jne 0x10014c74
cmp byte [edi + 0x36a], 0
je 0x10014c74
push str.keep_alive
push str.Proxy_Connection:
push dword [esi + 0xb8]
call fcn.10013ff0
add esp, 0xc
test al, al
je 0x10014c74
push 0
push edi
call fcn.10002140
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push esi
call fcn.100245d0
add esp, 0x10
jmp 0x10014b44
cmp dword [edi + 0x178], 0xb
jne 0x10014cbd
cmp byte [edi + 0x36a], 0
je 0x10014cbd
push str.close
push str.Proxy_Connection:
push dword [esi + 0xb8]
call fcn.10013ff0
add esp, 0xc
test al, al
je 0x10014cbd
push 1
push edi
call fcn.10002140
push str.HTTP_1.1_proxy_connection_set_close__n
push esi
call fcn.100245d0
add esp, 0x10
jmp 0x10014b44
cmp dword [edi + 0x178], 0xa
jne 0x10014cfd
push str.keep_alive
push str.Connection:
push dword [esi + 0xb8]
call fcn.10013ff0
add esp, 0xc
test al, al
je 0x10014cfd
push 0
push edi
call fcn.10002140
push str.HTTP_1.0_connection_set_to_keep_alive__n
push esi
call fcn.100245d0
add esp, 0x10
jmp 0x10014b44
push str.close
push str.Connection:
push dword [esi + 0xb8]
call fcn.10013ff0
add esp, 0xc
test al, al
je 0x10014d29
push 2
push edi
call fcn.10002140
add esp, 8
jmp 0x10014b44
push 0x12
push dword [esi + 0xb8]
push str.Transfer_Encoding:
call sym.libcurl.dll_curl_strnequal
mov ecx, dword [esi + 0xb8]
add esp, 0xc
test eax, eax
je 0x10014e5f
lea edi, [ecx + 0x12]
nop
mov al, byte [edi]
test al, al
je 0x10014d7d
mov esi, dword [ebp - 8]
nop dword [eax]
movzx eax, al
push eax
call esi
add esp, 4
test eax, eax
jne 0x10014d72
cmp byte [edi], 0x2c
jne 0x10014d7a
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10014d60
mov esi, dword [ebp + 8]
push 7
push edi
push str.chunked
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014da6
push dword [ebp + 0xc]
mov byte [esi + 0x110], 1
call fcn.100160f0
add esp, 4
add edi, 7
cmp dword [esi + 0xdc], 0
jne 0x10014b41
push 8
push edi
push str.identity
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014ddd
mov eax, 8
mov dword [esi + 0xdc], 0
add edi, eax
jmp 0x10014d50
push 7
push edi
push str.deflate
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014e07
mov eax, 7
mov dword [esi + 0xdc], 1
add edi, eax
jmp 0x10014d50
push 4
push edi
push str.gzip
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014e31
mov eax, 4
mov dword [esi + 0xdc], 2
add edi, eax
jmp 0x10014d50
push 6
push edi
push str.x_gzip
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014b41
mov eax, 6
mov dword [esi + 0xdc], 2
add edi, eax
jmp 0x10014d50
push 0x11
push ecx
push str.Content_Encoding:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014f2f
cmp dword [esi + 0x3a4], 0
je 0x10014f2f
mov edi, dword [esi + 0xb8]
add edi, 0x11
mov al, byte [edi]
test al, al
je 0x10014eae
mov esi, dword [ebp - 8]
movzx eax, al
push eax
call esi
add esp, 4
test eax, eax
je 0x10014eab
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10014e96
mov esi, dword [ebp + 8]
push 8
push edi
push str.identity
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014ed1
mov dword [esi + 0xdc], 0
jmp 0x10014b41
push 7
push edi
push str.deflate
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014ef4
mov dword [esi + 0xdc], 1
jmp 0x10014b41
push 4
push edi
push str.gzip
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
jne 0x10014f20
push 6
push edi
push str.x_gzip
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014b41
mov dword [esi + 0xdc], 2
jmp 0x10014b41
push 0xe
push dword [esi + 0xb8]
push str.Content_Range:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014fe5
mov edi, dword [esi + 0xb8]
add edi, 0xe
mov al, byte [edi]
test al, al
je 0x10014f7a
mov ebx, dword [ebp - 0xc]
nop
movzx eax, al
push eax
call ebx
add esp, 4
test eax, eax
jne 0x10014f7a
cmp byte [edi], 0x2a
je 0x10014f7a
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10014f60
movzx eax, byte [edi]
push eax
call dword [ebp - 0xc]
add esp, 4
test eax, eax
je 0x10014fcc
push 0xa
push 0
push edi
call dword [ebp - 0x10]
mov dword [esi + 0xc0], eax
add esp, 0xc
mov dword [esi + 0xc4], edx
mov eax, dword [esi + 0x47b0]
cmp eax, dword [esi + 0xc0]
jne 0x10014b41
mov edi, dword [ebp + 0xc]
cmp dword [esi + 0x47b4], edx
jne 0x10014b44
mov byte [esi + 0xbc], 1
jmp 0x10014b44
mov dword [esi + 0x47b0], 0
mov dword [esi + 0x47b4], 0
jmp 0x10014b41
cmp dword [esi + 0x4e8], 0
je 0x10015053
push 0xb
push dword [esi + 0xb8]
push str.Set_Cookie:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10015053
push 2
push 2
push esi
call fcn.100264a0
mov eax, dword [edi + 0x3d0]
add esp, 0xc
test eax, eax
jne 0x10015024
mov eax, dword [edi + 0x98]
push dword [esi + 0x47a4]
push eax
mov eax, dword [esi + 0xb8]
add eax, 0xb
push eax
push 1
push dword [esi + 0x4e8]
push esi
call fcn.100036f0
push 2
push esi
call fcn.100264e0
add esp, 0x20
jmp 0x10014b44
push 0xe
push dword [esi + 0xb8]
push str.Last_Modified:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x100150c3
cmp dword [esi + 0x23c], 0
jne 0x1001507e
cmp byte [esi + 0x339], 0
je 0x100150c3
push 0
call dword [ebp - 0x18]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
mov eax, dword [esi + 0xb8]
add eax, 0xe
mov dword [ebp - 0x20], edx
push eax
call sym.libcurl.dll_curl_getdate
add esp, 0xc
mov dword [esi + 0xe0], eax
mov dword [esi + 0xe4], edx
cmp byte [esi + 0x339], 0
je 0x10014b44
mov dword [esi + 0x4824], eax
jmp 0x10014b44
push 0x11
push dword [esi + 0xb8]
push str.WWW_Authenticate:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x100150ea
mov edi, dword [esi + 0xc8]
cmp edi, 0x191
je 0x10015111
push 0x13
push dword [esi + 0xb8]
push str.Proxy_authenticate:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x1001515c
mov edi, dword [esi + 0xc8]
cmp edi, 0x197
jne 0x1001515c
push dword [esi + 0xb8]
call fcn.100140c0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x100155f1
cmp edi, 0x197
push ebx
sete cl
movzx ecx, cl
push ecx
push dword [ebp + 0xc]
call fcn.10014360
push ebx
mov edi, eax
call dword [0x1004e00c]
add esp, 0x10
test edi, edi
je 0x10014b41
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0xc8]
sub eax, 0x12c
cmp eax, 0x63
ja 0x100151f7
push 9
push dword [esi + 0xb8]
push str.Location:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x100151f7
cmp dword [esi + 0x100], 0
jne 0x100151f7
push dword [esi + 0xb8]
call fcn.100140c0
add esp, 4
test eax, eax
je 0x100155f1
cmp byte [eax], 0
jne 0x100151b3
push eax
jmp 0x10014b38
cmp byte [esi + 0x342], 0
mov dword [esi + 0x100], eax
je 0x10014b41
push eax
call dword [0x1004e014]
add esp, 4
mov dword [esi + 0x104], eax
test eax, eax
je 0x100155f1
mov edi, dword [ebp + 0xc]
push edi
call fcn.10015a80
add esp, 4
test eax, eax
jne 0x10015584
jmp 0x10014b44
mov edi, dword [ebp + 0xc]
mov eax, dword [edi + 0x3a0]
test dword [eax + 0x3c], 0x40000
je 0x10014b44
push dword [esi + 0xb8]
push edi
call fcn.10023860
add esp, 8
test eax, eax
jne 0x10015584
jmp 0x10014b44
cmp al, 0xd
jne 0x10015236
inc edx
mov dword [esi + 0xb8], edx
mov al, byte [edx]
cmp al, 0xa
jne 0x10015243
lea eax, [edx + 1]
mov dword [esi + 0xb8], eax
mov ecx, dword [esi + 0xc8]
lea eax, [ecx - 0x64]
cmp eax, 0x63
ja 0x100152e9
sub ecx, 0x64
je 0x100152b9
sub ecx, 1
je 0x100152a3
mov byte [esi + 0x98], 1
mov dword [esi + 0xa0], 0
mov edi, dword [ebp + 0xc]
cmp byte [edi + 0x365], 0
je 0x10015388
mov eax, dword [esi + 0xc8]
cmp eax, 0x191
jne 0x10015363
cmp dword [edi + 0x448], 2
je 0x10015373
jmp 0x10015388
cmp dword [esi + 0xd8], 1
je 0x100155fd
mov byte [esi + 0x98], 0
jmp 0x10015270
cmp dword [esi + 0xd4], 0
mov edi, dword [ebp + 0xc]
mov byte [esi + 0x98], 1
mov dword [esi + 0xa0], 0
jle 0x10015273
or dword [esi + 0xf8], 2
mov dword [esi + 0xd4], 0
jmp 0x10015273
mov eax, dword [ebx]
and eax, dword [ebx + 4]
mov byte [esi + 0x98], 0
cmp eax, 0xffffffff
jne 0x10015270
cmp byte [esi + 0x110], 0
mov edi, dword [ebp + 0xc]
jne 0x10015273
cmp byte [edi + 0x365], 0
jne 0x10015280
cmp dword [edi + 0x178], 0xb
jne 0x10015273
mov eax, dword [edi + 0x3a0]
test dword [eax + 0x3c], 0x40000
jne 0x10015273
cmp dword [esi + 0x248], 5
je 0x10015273
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push esi
call fcn.100245d0
push 2
push edi
call fcn.10002140
add esp, 0x10
jmp 0x10015273
cmp eax, 0x197
jne 0x10015388
cmp dword [edi + 0x484], 2
jne 0x10015388
push str.Connection_closure_while_negotiating_auth__HTTP_1.0___n
push esi
call fcn.100245d0
add esp, 8
mov byte [esi + 0x4754], 1
push edi
call fcn.10015c50
add esp, 4
test eax, eax
jne 0x10015706
mov eax, dword [esi + 0x634]
mov ebx, dword [esi + 0xb8]
sub ebx, eax
push ebx
push eax
xor eax, eax
mov dword [ebp - 0x1c], ebx
cmp byte [esi + 0x345], al
setne al
add eax, 2
push eax
push edi
call fcn.10024410
add esp, 0x10
test eax, eax
jne 0x10015584
add dword [esi + 0x80], ebx
xor edx, edx
add dword [esi + 0x482c], ebx
mov eax, dword [esi + 0xc8]
mov ecx, dword [esi + 0x80]
sub eax, 0x64
cmp eax, 0x63
push edi
cmova ecx, edx
mov dword [esi + 0x84], ecx
call fcn.10014190
add esp, 4
test eax, eax
jne 0x10015584
cmp dword [esi + 0xc8], 0x12c
jl 0x100154e0
cmp byte [edi + 0x376], al
jne 0x100154c2
cmp byte [edi + 0x365], al
jne 0x100154c2
cmp byte [edi + 0x377], al
jne 0x100154cb
mov eax, dword [esi + 0x248]
sub eax, 2
je 0x1001544f
sub eax, 1
je 0x1001544f
sub eax, 1
jne 0x100154c2
cmp byte [esi + 0xfc], 0
jne 0x100154c2
cmp byte [esi + 0x341], 0
je 0x1001548b
push str.HTTP_error_before_end_of_send__keep_sending_n
push esi
call fcn.100245d0
add esp, 8
cmp dword [esi + 0xd4], 0
jle 0x100154c2
or dword [esi + 0xf8], 2
mov dword [esi + 0xd4], 0
jmp 0x100154c2
push str.HTTP_error_before_end_of_send__stop_sending_n
push esi
call fcn.100245d0
push 2
push edi
call fcn.10002140
and dword [esi + 0xf8], 0xfffffffd
add esp, 0x10
mov byte [esi + 0xfc], 1
cmp byte [esi + 0x479c], 0
je 0x100154c2
mov dword [esi + 0xd4], 3
cmp byte [edi + 0x377], 0
je 0x100154e0
push str.Keep_sending_data_to_get_tossed_away__n
push esi
call fcn.100245d0
add esp, 8
or dword [esi + 0xf8], 2
cmp byte [esi + 0x98], 0
je 0x10015632
mov eax, dword [esi + 0x634]
mov dword [esi + 0xa4], eax
mov dword [esi + 0xa8], 0
mov ebx, dword [esi + 0xac]
cmp byte [ebx], 0
je 0x10015582
mov eax, dword [ebp + 0x10]
mov dword [esi + 0xb0], ebx
push dword [eax]
push 0xa
push ebx
call sub.VCRUNTIME140.dll_memchr
mov edi, eax
add esp, 0xc
mov dword [esi + 0xb4], edi
test edi, edi
jne 0x10014728
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [esi + 0x50]
push eax
push esi
call fcn.100158b0
add esp, 0xc
test eax, eax
jne 0x10015584
cmp dword [esi + 0xa0], eax
jne 0x10015582
cmp dword [esi + 0xa8], 5
jbe 0x10015582
push dword [esi + 0x634]
push dword [ebp + 0xc]
push esi
call fcn.100157b0
add esp, 0xc
test al, al
jne 0x10015582
mov dword [esi + 0x9c], 2
mov byte [esi + 0x98], 0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov byte [esi + 0x98], 0
cmp dword [eax], 0
je 0x100155ad
pop edi
mov dword [esi + 0x9c], 1
xor eax, eax
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [esi + 0x9c], 2
mov dword [eax], edi
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
call fcn.10015ee0
add esp, 4
mov eax, 0x16
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.Maximum_file_size_exceeded
push esi
call fcn.10024520
add esp, 8
mov eax, 0x3f
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov esp, ebp
pop ebp
ret
push str.Received_101_n
push esi
call fcn.100245d0
add esp, 8
mov dword [esi + 0xd8], 2
mov byte [esi + 0x98], 1
mov eax, 1
mov dword [esi + 0xa0], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [esi + 0x348], 0
mov edi, dword [ebp + 0x14]
mov ebx, dword [ebp + 0xc]
jne 0x1001568f
mov eax, dword [ebx + 0x3a0]
test dword [eax + 0x3c], 0x40000
lea eax, [esi + 0x50]
je 0x10015669
cmp dword [esi + 0x47c], 2
jne 0x10015669
cmp dword [eax + 4], 0xffffffff
jl 0x10015692
jg 0x10015669
cmp dword [eax], 0xffffffff
jbe 0x10015692
cmp byte [esi + 0x110], 0
je 0x10015695
mov dword [eax], 0xffffffff
mov dword [eax + 4], 0xffffffff
mov dword [esi + 0x60], 0xffffffff
mov dword [esi + 0x64], 0xffffffff
jmp 0x10015695
lea eax, [esi + 0x50]
mov byte [edi], 1
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp ecx, 0xffffffff
jne 0x100156ab
cmp eax, ecx
jne 0x100156ab
mov ecx, dword [esi + 0x60]
mov eax, dword [esi + 0x64]
jmp 0x100156c2
push eax
push ecx
push esi
call fcn.10021cf0
mov ecx, dword [esi + 0x50]
add esp, 0xc
mov eax, dword [esi + 0x54]
mov dword [esi + 0x60], ecx
mov dword [esi + 0x64], eax
test ecx, ecx
jne 0x100156cf
test eax, eax
jne 0x100156cf
mov byte [edi], 1
jmp 0x100156d4
cmp byte [edi], 0
je 0x100156db
and dword [esi + 0xf8], 0xfffffffe
cmp byte [esi + 0x350], 0
je 0x10015582
push ebx
push dword [ebp - 0x1c]
push dword [esi + 0xb0]
push 1
push esi
call fcn.10024440
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [esi + 0xc8]
push str.The_requested_URL_returned_error:__d
push esi
call fcn.10024520
add esp, 0xc
mov eax, 0x16
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret