Function at 0x10014470
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
lea esi, [edi + 0x50]
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 dword [sym.imp.MSVCR100.dll_memchr]
mov ecx, dword [ebp + 0x10]
add esp, 0xc
mov dword [esi + 0x64], eax
mov ebx, edi
test eax, eax
je 0x10015216
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.100125e0
add esp, 4
test eax, eax
jne 0x100153cb
mov eax, dword [esi + 0x54]
mov ebx, dword [ebp + 0xc]
mov dword [esi + 0x64], eax
mov ecx, dword [edi + 0x6dc]
xor edx, edx
mov dword [esi + 0x68], ecx
cmp dword [esi + 0x50], edx
jne 0x10014506
cmp dword [esi + 0x58], 5
jbe 0x10014506
mov eax, dword [edi + 0x6dc]
push edi
mov ecx, ebx
call fcn.100125b0
add esp, 4
test eax, eax
je 0x10015267
xor edx, edx
mov eax, dword [esi + 0x68]
mov cl, byte [eax]
cmp cl, 0xa
je 0x10014f4b
cmp cl, 0xd
je 0x10014f50
mov ecx, dword [esi + 0x50]
lea edi, [ecx + 1]
mov dword [esi + 0x50], edi
cmp ecx, edx
jne 0x1001479e
mov edx, dword [ebx + 0x440]
mov ecx, dword [edx + 0x3c]
test cl, 3
je 0x10014608
mov edi, dword [ebp + 0xc]
lea ebx, [esi + 0x78]
push ebx
add edi, 0x178
push edi
lea ecx, [ebp - 4]
push ecx
push str._HTTP__d._d__d
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
add esp, 0x14
cmp eax, 1
jne 0x1001458c
cmp dword [ebp - 4], 2
jne 0x100145c9
mov edx, dword [esi + 0x68]
push ebx
push str._HTTP_2__d
push edx
call dword [sym.imp.MSVCR100.dll_sscanf]
add esp, 0xc
cmp eax, 1
jne 0x100145c9
mov dword [edi], 0
jmp 0x10014591
cmp eax, 3
jne 0x100145c9
mov eax, dword [ebp - 4]
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
cmp dword [esi + 0x88], 2
mov eax, dword [edi]
jne 0x10014657
mov ebx, dword [ebp + 8]
cmp eax, 0x14
je 0x1001465a
push str.Lying_server__not_serving_HTTP_2_n
push ebx
call fcn.10023160
add esp, 8
jmp 0x1001465a
mov ecx, dword [esi + 0x68]
push ebx
push str._HTTP__3d
push ecx
call dword [sym.imp.MSVCR100.dll_sscanf]
add esp, 0xc
mov dword [edi], 0xa
test eax, eax
jne 0x10014657
mov ebx, dword [esi + 0x68]
mov eax, dword [ebp + 8]
call fcn.10012530
test eax, eax
je 0x100152b0
mov dword [esi + 0x78], 0xc8
mov dword [edi], 0xa
jmp 0x10014657
test ecx, 0x40000
je 0x100152b0
mov edi, dword [ebp + 0xc]
lea ecx, [esi + 0x78]
push ecx
add edi, 0x17c
push edi
lea edx, [ebp - 0xc]
push edx
push str._RTSP__d._d__3d
push eax
call dword [sym.imp.MSVCR100.dll_sscanf]
add esp, 0x14
cmp eax, 3
jne 0x100152b0
mov eax, dword [ebp - 0xc]
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
mov edi, dword [ebp + 0xc]
add edi, 0x178
mov dword [edi], 0xb
mov ebx, dword [ebp + 8]
mov ecx, dword [esi + 0x78]
mov eax, dword [ebx + 0x4850]
mov dword [ebx + 0x48e0], ecx
mov edx, dword [edi]
mov dword [ebx + 0x48e8], edx
test eax, eax
je 0x10014679
cmp eax, dword [edi]
jle 0x10014681
mov eax, dword [edi]
mov dword [ebx + 0x4850], eax
cmp dword [ebx + 0x398], 0
je 0x100146e4
mov eax, dword [esi + 0x78]
cmp eax, 0x190
jl 0x100146e4
cmp eax, 0x191
jne 0x100146a7
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 0x3b8], 0
jne 0x100146e4
cmp eax, 0x197
jne 0x100146ba
mov edx, dword [ebp + 0xc]
cmp dword [edx + 0x3bc], 0
jne 0x100146e4
mov ecx, dword [ebx + 0x4878]
or ecx, dword [ebx + 0x487c]
je 0x1001529b
cmp dword [ebx + 0x268], 1
jne 0x1001529b
cmp eax, 0x1a0
jne 0x1001529b
mov edi, dword [edi]
cmp edi, 0xa
jne 0x10014706
push str.HTTP_1.0__assume_close_after_body_n
push ebx
call fcn.10023160
mov edx, dword [ebp + 0xc]
push 1
push edx
call fcn.10002c00
add esp, 0x10
jmp 0x10014763
cmp edi, 0x14
je 0x10014754
cmp dword [esi + 0x88], 1
jne 0x1001471a
cmp dword [esi + 0x78], 0x65
je 0x10014754
cmp edi, 0xb
jl 0x10014763
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0x39c], 0
jne 0x10014763
mov ecx, eax
cmp dword [ecx + 0x748], 0
je 0x10014763
mov edi, eax
push edi
push ebx
call fcn.1001f170
add esp, 8
test eax, eax
jne 0x10014763
mov edx, dword [edi + 0x748]
mov dword [edx], 1
jmp 0x10014763
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x748]
mov dword [ecx], 2
mov eax, dword [esi + 0x78]
sub eax, 0xcc
je 0x10014775
sub eax, 0x64
jne 0x1001479e
mov ebx, dword [ebp + 8]
xor eax, eax
cmp dword [ebx + 0x25c], eax
je 0x10014789
mov dword [ebx + 0x48f0], 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
mov edi, dword [ebp + 8]
jne 0x10014861
cmp dword [edi + 0x3f8], 0
jne 0x10014861
mov edx, dword [esi + 0x68]
push 0xf
push edx
push str.Content_Length:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014861
mov eax, dword [esi + 0x68]
push 0xa
add eax, 0xf
push 0
push eax
call dword [sym.imp.MSVCR100.dll__strtoi64]
mov ecx, dword [edi + 0x360]
mov dword [ebp - 0x10], edx
mov ebx, eax
mov eax, dword [edi + 0x364]
mov edx, ecx
add esp, 0xc
or edx, eax
je 0x10014814
cmp dword [ebp - 0x10], eax
jg 0x100152c0
jl 0x10014814
cmp ebx, ecx
ja 0x100152c0
cmp dword [ebp - 0x10], 0
jl 0x1001483e
jg 0x10014820
test ebx, ebx
jb 0x1001483e
mov eax, dword [ebp - 0x10]
push eax
push ebx
push edi
mov dword [esi], ebx
mov dword [esi + 4], eax
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], eax
call fcn.10020db0
add esp, 0xc
jmp 0x10014edb
mov eax, dword [ebp + 0xc]
push 2
push eax
call fcn.10002c00
mov ecx, dword [ebp - 0x10]
push ecx
push ebx
push str.Negative_content_length:__I64d__closing_after_transfer_n
push edi
call fcn.10023160
add esp, 0x18
jmp 0x10014edb
mov edx, dword [esi + 0x68]
push 0xd
push edx
push str.Content_Type:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x100148bd
mov eax, dword [esi + 0x68]
push eax
call fcn.10011540
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x100152da
cmp byte [ebx], 0
jne 0x100148a2
push ebx
call dword [0x1004b00c]
add esp, 4
jmp 0x10014edb
mov ecx, dword [edi + 0x4908]
push ecx
call dword [0x1004b00c]
add esp, 4
mov dword [edi + 0x4908], ebx
jmp 0x10014edb
mov edx, dword [esi + 0x68]
push 7
push edx
push str.Server:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014930
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0x178], 0x14
jge 0x10014edb
mov ecx, dword [esi + 0x68]
push ecx
call fcn.10011540
mov edx, dword [ebp + 0xc]
mov ebx, eax
mov eax, dword [edx + 0x748]
add esp, 4
test eax, eax
je 0x10014921
cmp dword [eax], 1
jne 0x10014921
push ebx
push edi
call fcn.1001f310
add esp, 8
test eax, eax
je 0x10014921
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x748]
mov dword [ecx], 0xffffffff
push ebx
call dword [0x1004b00c]
add esp, 4
jmp 0x10014edb
mov ebx, dword [ebp + 0xc]
cmp dword [ebx + 0x178], 0xa
jne 0x1001497a
cmp dword [ebx + 0x3b0], 0
je 0x1001497a
mov edx, dword [esi + 0x68]
push str.keep_alive
push str.Proxy_Connection:
push edx
call fcn.10012230
add esp, 0xc
test eax, eax
je 0x1001497a
push 0
push ebx
call fcn.10002c00
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push edi
call fcn.10023160
add esp, 0x10
jmp 0x10014edb
cmp dword [ebx + 0x178], 0xb
jne 0x100149c1
cmp dword [ebx + 0x3b0], 0
je 0x100149c1
mov eax, dword [esi + 0x68]
push str.close
push str.Proxy_Connection:
push eax
call fcn.10012230
add esp, 0xc
test eax, eax
je 0x100149c1
push 1
push ebx
call fcn.10002c00
push str.HTTP_1.1_proxy_connection_set_close__n
push edi
call fcn.10023160
add esp, 0x10
jmp 0x10014edb
cmp dword [ebx + 0x178], 0xa
jne 0x100149ff
mov ecx, dword [esi + 0x68]
push str.keep_alive
push str.Connection:
push ecx
call fcn.10012230
add esp, 0xc
test eax, eax
je 0x100149ff
push 0
push ebx
call fcn.10002c00
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
call fcn.10023160
add esp, 0x10
jmp 0x10014edb
mov edx, dword [esi + 0x68]
push str.close
push str.Connection:
push edx
call fcn.10012230
add esp, 0xc
test eax, eax
je 0x10014a29
push 2
push ebx
call fcn.10002c00
add esp, 8
jmp 0x10014edb
mov eax, dword [esi + 0x68]
push 0x12
push eax
push str.Transfer_Encoding:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014b4a
mov ebx, dword [esi + 0x68]
add ebx, 0x12
lea ebx, [ebx]
mov al, byte [ebx]
test al, al
je 0x10014a74
movzx ecx, al
push ecx
call dword [sym.imp.MSVCR100.dll_isspace]
add esp, 4
test eax, eax
jne 0x10014a6c
cmp byte [ebx], 0x2c
jne 0x10014a74
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x10014a56
push 7
push ebx
push str.chunked
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014aa1
mov edx, dword [ebp + 0xc]
push edx
mov dword [esi + 0xc8], 1
call fcn.10015400
add esp, 4
add ebx, 7
cmp dword [esi + 0x8c], 0
jne 0x10014edb
push 8
push ebx
push str.identity
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014ad4
mov dword [esi + 0x8c], 0
add ebx, 8
jmp 0x10014a50
push 7
push ebx
push str.deflate
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014afa
mov dword [esi + 0x8c], 1
add ebx, 7
jmp 0x10014a50
push 4
push ebx
push str.gzip
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014b20
mov dword [esi + 0x8c], 2
add ebx, 4
jmp 0x10014a50
push 6
push ebx
push str.x_gzip
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014edb
mov dword [esi + 0x8c], 2
add ebx, 6
jmp 0x10014a50
mov eax, dword [esi + 0x68]
push 0x11
push eax
push str.Content_Encoding:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014c1a
cmp dword [edi + 0x440], 0
je 0x10014c1a
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0x11]
add ebx, 0x11
test al, al
je 0x10014b99
nop
movzx ecx, al
push ecx
call dword [sym.imp.MSVCR100.dll_isspace]
add esp, 4
test eax, eax
je 0x10014b99
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x10014b80
push 8
push ebx
push str.identity
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014bbc
mov dword [esi + 0x8c], 0
jmp 0x10014edb
push 7
push ebx
push str.deflate
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014bdf
mov dword [esi + 0x8c], 1
jmp 0x10014edb
push 4
push ebx
push str.gzip
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
jne 0x10014c0b
push 6
push ebx
push str.x_gzip
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014edb
mov dword [esi + 0x8c], 2
jmp 0x10014edb
mov edx, dword [esi + 0x68]
push 0xe
push edx
push str.Content_Range:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014cbc
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0xe]
add ebx, 0xe
test al, al
je 0x10014c60
movzx eax, al
push eax
call dword [sym.imp.MSVCR100.dll_isdigit]
add esp, 4
test eax, eax
jne 0x10014c60
cmp byte [ebx], 0x2a
je 0x10014c60
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x10014c42
movzx ecx, byte [ebx]
push ecx
call dword [sym.imp.MSVCR100.dll_isdigit]
add esp, 4
test eax, eax
je 0x10014ca9
push 0xa
push 0
push ebx
call dword [sym.imp.MSVCR100.dll__strtoi64]
add esp, 0xc
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edx
cmp dword [edi + 0x4878], eax
jne 0x10014edb
cmp dword [edi + 0x487c], edx
jne 0x10014edb
mov dword [esi + 0x6c], 1
jmp 0x10014edb
xor eax, eax
mov dword [edi + 0x4878], eax
mov dword [edi + 0x487c], eax
jmp 0x10014edb
cmp dword [edi + 0x590], 0
je 0x10014d27
mov ecx, dword [esi + 0x68]
push 0xb
push ecx
push str.Set_Cookie:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014d27
push 2
push 2
push edi
call fcn.100242a0
mov eax, dword [ebx + 0x470]
add esp, 0xc
test eax, eax
jne 0x10014cf9
mov eax, dword [ebx + 0x98]
mov edx, dword [edi + 0x4860]
mov ecx, dword [edi + 0x590]
push edx
push eax
mov eax, dword [esi + 0x68]
add eax, 0xb
push eax
push 1
push ecx
push edi
call fcn.100038c0
push 2
push edi
call fcn.100242e0
add esp, 0x20
jmp 0x10014edb
mov edx, dword [esi + 0x68]
push 0xe
push edx
push str.Last_Modified:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014d97
cmp dword [edi + 0x25c], 0
jne 0x10014d50
cmp dword [edi + 0x37c], 0
je 0x10014d97
push 0
call dword [sym.imp.MSVCR100.dll__time64]
mov ecx, dword [esi + 0x68]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
add ecx, 0xe
push ecx
mov dword [ebp - 0x18], edx
call sym.libcurl.dll_curl_getdate
add esp, 0xc
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
cmp dword [edi + 0x37c], 0
je 0x10014edb
mov edx, eax
mov dword [edi + 0x48ec], edx
jmp 0x10014edb
mov eax, dword [esi + 0x68]
push 0x11
push eax
push str.WWW_Authenticate:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014db8
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x10014dd9
mov ecx, dword [esi + 0x68]
push 0x13
push ecx
push str.Proxy_authenticate:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014e2b
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x10014e2b
xor edx, edx
cmp eax, 0x197
mov eax, dword [esi + 0x68]
sete dl
push eax
mov dword [ebp - 8], edx
call fcn.10011540
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x100152da
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0xc]
push ebx
push ecx
push edx
call fcn.10011be0
push ebx
mov dword [ebp - 8], eax
call dword [0x1004b00c]
add esp, 0x10
cmp dword [ebp - 8], 0
je 0x10014edb
mov eax, dword [ebp - 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x10014eb7
cmp eax, 0x190
jge 0x10014eb7
mov eax, dword [esi + 0x68]
push 9
push eax
push str.Location:
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x10014eb7
cmp dword [edi + 0x108], 0
jne 0x10014eb7
mov ecx, dword [esi + 0x68]
push ecx
call fcn.10011540
add esp, 4
test eax, eax
je 0x100152da
cmp byte [eax], 0
jne 0x10014e85
push eax
call dword [0x1004b00c]
add esp, 4
jmp 0x10014edb
cmp dword [edi + 0x3a0], 0
mov dword [edi + 0x108], eax
je 0x10014edb
push eax
call dword [0x1004b014]
add esp, 4
mov dword [edi + 0x10c], eax
test eax, eax
je 0x100152da
push ebx
call fcn.10011780
add esp, 4
jmp 0x10014ed3
mov edx, dword [ebx + 0x440]
test dword [edx + 0x3c], 0x40000
je 0x10014edb
mov eax, dword [esi + 0x68]
push eax
push ebx
call fcn.10022110
add esp, 8
test eax, eax
jne 0x100153cb
cmp dword [edi + 0x3ac], 0
mov ebx, 2
je 0x10014eee
mov ebx, 3
cmp dword [edi + 0x3c4], 0
je 0x10014f0e
mov ecx, dword [ebp + 0xc]
mov edx, dword [esi + 0x58]
mov eax, dword [esi + 0x68]
push ecx
push edx
push eax
push 1
push edi
call fcn.10023080
add esp, 0x14
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x68]
mov eax, dword [ebp + 0xc]
push ecx
push edx
push ebx
push eax
call fcn.10023590
add esp, 0x10
test eax, eax
jne 0x100153cb
mov ecx, dword [esi + 0x58]
add dword [edi + 0x48f4], ecx
mov edx, dword [esi + 0x58]
mov eax, dword [edi + 0x6dc]
add dword [edi + 0x80], edx
mov dword [esi + 0x54], eax
jmp 0x100151cc
cmp cl, 0xd
jne 0x10014f54
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x10014f60
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x10014fba
cmp eax, 0xc7
jg 0x10014fba
sub eax, 0x64
je 0x10014f99
mov ecx, 1
sub eax, ecx
je 0x10014f88
mov dword [esi + 0x48], ecx
mov dword [esi + 0x50], edx
jmp 0x10015010
cmp dword [esi + 0x88], ecx
je 0x100151e8
mov dword [esi + 0x48], edx
jmp 0x10015010
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], edx
cmp dword [esi + 0x84], edx
jle 0x10015010
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], edx
jmp 0x10015010
mov ecx, dword [esi]
and ecx, dword [esi + 4]
mov dword [esi + 0x48], edx
cmp ecx, 0xffffffff
jne 0x10015010
cmp dword [esi + 0xc8], edx
jne 0x10015010
cmp dword [ebx + 0x39c], edx
jne 0x10015018
cmp dword [ebx + 0x178], 0xb
jne 0x10015010
mov eax, dword [ebx + 0x440]
test dword [eax + 0x3c], 0x40000
jne 0x10015010
cmp dword [edi + 0x268], 5
je 0x10015010
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push edi
call fcn.10023160
push 2
push ebx
call fcn.10002c00
add esp, 0x10
xor edx, edx
cmp dword [ebx + 0x39c], edx
je 0x10015056
mov eax, dword [edi + 0xc8]
cmp eax, 0x191
jne 0x1001502e
cmp dword [ebx + 0x4ec], 2
je 0x1001503e
cmp eax, 0x197
jne 0x10015056
cmp dword [ebx + 0x528], 2
jne 0x10015056
push str.Connection_closure_while_negotiating_auth__HTTP_1.0___n
push edi
call fcn.10023160
add esp, 8
mov dword [edi + 0x480c], 1
mov edx, ebx
call fcn.10011e40
test eax, eax
jne 0x100152e6
lea ecx, [eax + 2]
cmp dword [edi + 0x3ac], eax
je 0x10015073
lea ecx, [eax + 3]
mov eax, dword [edi + 0x6dc]
mov ebx, dword [esi + 0x68]
sub ebx, eax
push ebx
push eax
push ecx
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.10023590
add esp, 0x10
test eax, eax
jne 0x100153cb
add dword [edi + 0x80], ebx
add dword [edi + 0x48f4], ebx
mov eax, dword [esi + 0x78]
mov ecx, dword [edi + 0x80]
cmp eax, 0x64
jl 0x100150ba
cmp eax, 0xc7
jg 0x100150ba
mov eax, ecx
jmp 0x100150bc
xor eax, eax
mov edx, dword [ebp + 0xc]
push edx
mov dword [edi + 0x84], eax
call fcn.10012740
add esp, 4
test eax, eax
jne 0x100153cb
cmp dword [esi + 0x78], 0x12c
jl 0x100151b9
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0x3e0], 0
jne 0x10015198
mov ecx, eax
cmp dword [ecx + 0x39c], 0
jne 0x10015198
mov edx, eax
cmp dword [edx + 0x3e4], 0
jne 0x10015198
mov eax, dword [edi + 0x268]
add eax, 0xfffffffe
cmp eax, 2
ja 0x10015198
cmp dword [esi + 0xac], 0
jne 0x10015198
cmp dword [edi + 0x39c], 0
je 0x1001515b
push str.HTTP_error_before_end_of_send__keep_sending_n
push edi
call fcn.10023160
add esp, 8
cmp dword [esi + 0x84], 0
jle 0x10015198
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], 0
jmp 0x10015198
push str.HTTP_error_before_end_of_send__stop_sending_n
push edi
call fcn.10023160
mov eax, dword [ebp + 0xc]
push 2
push eax
call fcn.10002c00
and dword [esi + 0xa8], 0xfffffffd
add esp, 0x10
mov dword [esi + 0xac], 1
cmp dword [edi + 0x4854], 0
je 0x10015198
mov dword [esi + 0x84], 3
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 0x3e4], 0
je 0x100151b9
push str.Keep_sending_data_to_get_tossed_away__n
push edi
call fcn.10023160
add esp, 8
or dword [esi + 0xa8], 2
cmp dword [esi + 0x48], 0
je 0x10015304
mov edx, dword [edi + 0x6dc]
mov dword [esi + 0x54], edx
mov eax, dword [esi + 0x5c]
mov dword [esi + 0x58], 0
cmp byte [eax], 0
jne 0x10014480
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
push str.Received_101_n
push edi
call fcn.10023160
add esp, 8
mov eax, 1
pop edi
mov dword [esi + 0x88], 2
mov dword [esi + 0x48], eax
mov dword [esi + 0x50], 0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ecx]
push edx
call fcn.100125e0
add esp, 4
test eax, eax
jne 0x100153cb
cmp dword [esi + 0x50], eax
jne 0x100153c9
cmp dword [esi + 0x58], 5
jbe 0x100153c9
mov eax, dword [edi + 0x6dc]
mov ecx, dword [ebp + 0xc]
push edi
call fcn.100125b0
add esp, 4
test eax, eax
jne 0x100153c9
pop edi
mov dword [esi + 0x48], eax
mov dword [esi + 0x4c], 2
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x48], 0
cmp dword [eax], 0
je 0x10015286
pop edi
mov dword [esi + 0x4c], 1
pop esi
xor eax, eax
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
push ebx
call fcn.100126a0
add esp, 4
pop edi
pop esi
mov eax, 0x16
pop ebx
mov esp, ebp
pop ebp
ret
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.100231e0
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 edx, dword [esi + 0x78]
push edx
push str.The_requested_URL_returned_error:__d
push edi
call fcn.100231e0
add esp, 0xc
pop edi
pop esi
mov eax, 0x16
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x3b8], 0
mov eax, dword [ebp + 0x14]
je 0x1001531b
mov dword [eax], 1
or edx, 0xffffffff
jmp 0x10015363
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x440]
test dword [edx + 0x3c], 0x40000
je 0x1001534c
cmp dword [edi + 0x518], 2
jne 0x1001534c
or edx, 0xffffffff
cmp dword [esi + 4], edx
jg 0x1001534f
jl 0x10015344
cmp dword [esi], edx
ja 0x1001534f
mov dword [eax], 1
jmp 0x10015363
or edx, 0xffffffff
cmp dword [esi + 0xc8], 0
je 0x10015363
mov dword [esi], edx
mov dword [esi + 4], edx
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], edx
mov eax, dword [esi]
mov ecx, dword [esi + 4]
cmp eax, edx
jne 0x10015370
cmp ecx, edx
je 0x10015386
push ecx
push eax
push edi
call fcn.10020db0
mov eax, dword [esi]
mov ecx, dword [esi + 4]
add esp, 0xc
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], ecx
cmp dword [esi + 0x10], 0
jne 0x1001539d
cmp dword [esi + 0x14], 0
jne 0x1001539d
mov edx, dword [ebp + 0x14]
mov dword [edx], 1
jmp 0x100153a5
mov eax, dword [ebp + 0x14]
cmp dword [eax], 0
je 0x100153ac
and dword [esi + 0xa8], 0xfffffffe
cmp dword [edi + 0x3c4], 0
je 0x100153c9
mov ecx, dword [ebp + 0xc]
mov edx, dword [esi + 0x60]
push ecx
push ebx
push edx
push 1
push edi
call fcn.10023080
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret