Function at 0x879f50
Capabilities:
Check http status code
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x28
push ebx
mov ebx, dword [esp + 0x38]
push ebp
push esi
mov eax, dword [ebx]
push edi
mov edi, dword [esp + 0x3c]
mov dword [esp + 0x1c], eax
mov eax, dword [edi + 0xd8]
lea esi, [edi + 0x88]
mov dword [esp + 0x20], eax
mov dword [esi + 0x54], eax
mov ecx, dword [ebx]
push ecx
push 0xa
push eax
call fcn.00891470
mov ebp, dword [esp + 0x4c]
add esp, 0xc
test eax, eax
mov dword [esi + 0x58], eax
je 0x87ae75
mov edx, dword [esi + 0x50]
mov eax, dword [esi + 0x58]
sub edx, eax
mov eax, dword [ebx]
dec edx
add eax, edx
mov dword [ebx], eax
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x54]
inc eax
mov dword [esi + 0x50], eax
sub eax, ecx
push eax
push esi
push edi
call fcn.0087b210
add esp, 0xc
test eax, eax
jne 0x87b0cd
mov eax, dword [esi + 0x48]
mov dword [esi + 0x58], eax
mov eax, dword [esi + 0x44]
mov ecx, dword [edi + 0xd70]
test eax, eax
mov dword [esi + 0x5c], ecx
jne 0x879ff7
mov edx, dword [esi + 0x4c]
mov eax, dword [edi + 0xd70]
push edx
push eax
push ebp
push edi
call fcn.0087b1a0
add esp, 0x10
cmp eax, 2
je 0x87aee2
mov eax, dword [esi + 0x5c]
mov cl, byte [eax]
cmp cl, 0xa
je 0x87aa2b
cmp cl, 0xd
je 0x87aa30
mov ecx, dword [esi + 0x44]
test ecx, ecx
lea edx, [ecx + 1]
mov dword [esi + 0x44], edx
jne 0x87a2f5
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx + 0x5a8]
mov ecx, dword [edx + 0x40]
test cl, 3
je 0x87a159
mov ecx, dword [esp + 0x40]
lea ebx, [esi + 0x68]
lea edx, [esp + 0x3c]
push ebx
lea ebp, [ecx + 0x3e8]
push edx
lea ecx, [esp + 0x1c]
push ebp
push ecx
push str._HTTP__1d._1d_c_3d
push eax
call fcn.00842af6
add esp, 0x18
cmp eax, 1
jne 0x87a09a
cmp dword [esp + 0x14], 2
jl 0x87af51
mov eax, dword [esi + 0x5c]
lea edx, [esp + 0x12]
push ebx
push edx
push str._HTTP__1_23___d
push eax
call fcn.00842af6
add esp, 0x10
cmp eax, 2
jne 0x87af51
mov dword [ebp], 0
mov byte [esp + 0x3c], 0x20
jmp 0x87a0aa
cmp eax, 4
jne 0x87a105
cmp byte [esp + 0x3c], 0x20
jne 0x87af51
mov eax, dword [esp + 0x14]
mov edx, dword [ebp]
lea ecx, [eax + eax*4]
shl ecx, 1
add edx, ecx
mov dword [ebp], edx
mov ecx, dword [esi + 0x78]
cmp ecx, 2
mov eax, edx
jne 0x87a0d8
cmp eax, 0x14
je 0x87a0d8
push str.Lying_server__not_serving_HTTP_2_n
push edi
call fcn.00857870
add esp, 8
cmp dword [ebp], 0x14
jge 0x87a1cc
mov edx, dword [esp + 0x40]
push str.Mark_bundle_as_not_supporting_multiuse_n
push edi
mov eax, dword [edx + 0x83c]
mov dword [eax], 0xffffffff
call fcn.00857870
add esp, 8
jmp 0x87a1cc
test eax, eax
jne 0x87af51
mov ecx, dword [esi + 0x5c]
lea eax, [esi + 0x68]
push eax
push str._HTTP__3d
push ecx
call fcn.00842af6
mov ebx, eax
add esp, 0xc
test ebx, ebx
mov dword [ebp], 0xa
jne 0x87a1cc
mov edx, dword [esi + 0x4c]
mov eax, dword [esi + 0x5c]
push edx
push eax
push edi
call fcn.0087b0e0
add esp, 0xc
cmp eax, 1
jne 0x87a1c4
mov dword [esi + 0x68], 0xc8
mov dword [ebp], 0xa
jmp 0x87a1cc
test ecx, 0x40000
je 0x87af82
mov edx, dword [esp + 0x40]
lea ecx, [esi + 0x68]
push ecx
lea ecx, [esp + 0x15]
lea ebp, [edx + 0x3ec]
push ecx
lea edx, [esp + 0x20]
push ebp
push edx
push str._RTSP__1d._1d_c_3d
push eax
call fcn.00842af6
mov ebx, eax
add esp, 0x18
cmp ebx, 4
jne 0x87af82
cmp byte [esp + 0x11], 0x20
jne 0x87af82
mov eax, dword [esp + 0x18]
mov ecx, dword [ebp]
lea eax, [eax + eax*4]
shl eax, 1
add ecx, eax
mov dword [ebp], ecx
mov ecx, dword [esp + 0x40]
lea ebp, [ecx + 0x3e8]
mov dword [ebp], 0xb
test ebx, ebx
je 0x87af82
mov edx, dword [esi + 0x68]
xor ebx, ebx
mov dword [edi + 0x1058], edx
mov eax, dword [ebp]
mov dword [edi + 0x1060], eax
mov eax, dword [edi + 0xf7c]
cmp eax, ebx
je 0x87a1ef
cmp eax, dword [ebp]
jle 0x87a1f8
mov ecx, dword [ebp]
mov dword [edi + 0xf7c], ecx
mov edx, dword [edi + 0xf88]
mov eax, dword [edi + 0xf8c]
or edx, eax
mov edx, 1
je 0x87a226
cmp dword [edi + 0x82c], edx
jne 0x87a226
cmp dword [esi + 0x68], 0x1a0
jne 0x87a226
mov dword [esi + 0x4e8], edx
jmp 0x87a266
cmp dword [edi + 0xb6c], ebx
je 0x87a266
mov eax, dword [esi + 0x68]
cmp eax, 0x190
jl 0x87a266
cmp eax, 0x191
jne 0x87a24b
mov ecx, dword [esp + 0x40]
cmp dword [ecx + 0x534], ebx
jne 0x87a266
cmp eax, 0x197
jne 0x87af6c
mov eax, dword [esp + 0x40]
cmp dword [eax + 0x538], ebx
je 0x87af6c
mov ebp, dword [ebp]
cmp ebp, 0xa
jne 0x87a28f
push str.HTTP_1.0__assume_close_after_body_n
push edi
call fcn.00857870
mov ecx, dword [esp + 0x48]
push 1
push ecx
call fcn.0085d9d0
add esp, 0x10
mov edx, 1
jmp 0x87a2af
cmp ebp, 0x14
je 0x87a29f
cmp dword [esi + 0x78], edx
jne 0x87a2af
cmp dword [esi + 0x68], 0x65
jne 0x87a2af
mov ecx, dword [esp + 0x40]
mov eax, dword [ecx + 0x83c]
mov dword [eax], 2
mov eax, dword [esi + 0x68]
cmp eax, 0x64
jl 0x87a2c2
cmp eax, 0xc8
jge 0x87a2c2
mov ecx, edx
jmp 0x87a2c4
xor ecx, ecx
sub eax, 0xcc
mov dword [esi + 0x4ec], ecx
je 0x87a2e4
sub eax, 0x64
jne 0x87a2f5
cmp dword [edi + 0x824], ebx
je 0x87a2e4
mov dword [edi + 0x1110], edx
mov dword [esi], ebx
mov dword [esi + 8], ebx
mov dword [esi + 4], ebx
mov dword [esi + 0xc], ebx
mov dword [esi + 0x4ec], edx
mov eax, dword [esi + 0x4ec]
test eax, eax
jne 0x87a3cb
mov eax, dword [edi + 0xbac]
test eax, eax
jne 0x87a3cb
mov ecx, dword [esi + 0x5c]
push 0xf
push ecx
push str.Content_Length:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a3cb
mov eax, dword [esi + 0x5c]
lea edx, [esp + 0x30]
push edx
push 0xa
add eax, 0xf
push 0
push eax
call fcn.00885250
add esp, 0x10
test eax, eax
jne 0x87a38f
mov ebx, dword [edi + 0x948]
mov edx, dword [edi + 0x94c]
mov eax, dword [esp + 0x30]
mov ecx, ebx
or ecx, edx
mov ecx, dword [esp + 0x34]
je 0x87a374
cmp ecx, edx
jg 0x87af96
jl 0x87a374
cmp eax, ebx
ja 0x87af96
push ecx
push eax
mov dword [esi], eax
mov dword [esi + 8], eax
push edi
mov dword [esi + 4], ecx
mov dword [esi + 0xc], ecx
call fcn.00864f10
add esp, 0xc
jmp 0x87a987
cmp eax, 1
jne 0x87afb1
mov edx, dword [edi + 0x948]
mov eax, dword [edi + 0x94c]
or edx, eax
jne 0x87af96
mov ebx, dword [esp + 0x40]
push 2
push ebx
call fcn.0085d9d0
push str.Overflow_Content_Length:_value__n
push edi
call fcn.00857870
add esp, 0x10
jmp 0x87a98b
mov eax, dword [esi + 0x5c]
push 0xd
push eax
push str.Content_Type:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a427
mov ecx, dword [esi + 0x5c]
push ecx
call fcn.00876af0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x87afd6
cmp byte [ebx], 0
jne 0x87a40c
push ebx
call dword [0x8c9934]
add esp, 4
jmp 0x87a987
mov edx, dword [edi + 0x1084]
push edx
call dword [0x8c9934]
add esp, 4
mov dword [edi + 0x1084], ebx
jmp 0x87a987
mov ebx, dword [esp + 0x40]
mov ebp, 0xa
cmp dword [ebx + 0x3e8], ebp
jne 0x87a477
mov eax, dword [ebx + 0x52c]
test eax, eax
je 0x87a477
mov eax, dword [esi + 0x5c]
push str.keep_alive
push str.Proxy_Connection:
push eax
call fcn.00877cd0
add esp, 0xc
test eax, eax
je 0x87a477
push 0
push ebx
call fcn.0085d9d0
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push edi
call fcn.00857870
add esp, 0x10
jmp 0x87a98b
cmp dword [ebx + 0x3e8], 0xb
jne 0x87a4bf
mov eax, dword [ebx + 0x52c]
test eax, eax
je 0x87a4bf
mov ecx, dword [esi + 0x5c]
push str.close
push str.Proxy_Connection:
push ecx
call fcn.00877cd0
add esp, 0xc
test eax, eax
je 0x87a4bf
push 1
push ebx
call fcn.0085d9d0
push str.HTTP_1.1_proxy_connection_set_close__n
push edi
call fcn.00857870
add esp, 0x10
jmp 0x87a98b
cmp dword [ebx + 0x3e8], ebp
jne 0x87a4fc
mov edx, dword [esi + 0x5c]
push str.keep_alive
push str.Connection:
push edx
call fcn.00877cd0
add esp, 0xc
test eax, eax
je 0x87a4fc
push 0
push ebx
call fcn.0085d9d0
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
call fcn.00857870
add esp, 0x10
jmp 0x87a98b
mov eax, dword [esi + 0x5c]
push str.close
push str.Connection:
push eax
call fcn.00877cd0
add esp, 0xc
test eax, eax
je 0x87a526
push 2
push ebx
call fcn.0085d9d0
add esp, 8
jmp 0x87a98b
mov eax, dword [esi + 0x4ec]
test eax, eax
jne 0x87a59c
mov ecx, dword [esi + 0x5c]
push 0x12
push ecx
push str.Transfer_Encoding:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a566
mov edx, dword [esi + 0x5c]
push 1
add edx, 0x12
push edx
push ebx
call fcn.0085e780
add esp, 0xc
test eax, eax
jne 0x87b0cd
jmp 0x87a98b
mov eax, dword [esi + 0x4ec]
test eax, eax
jne 0x87a59c
mov eax, dword [esi + 0x5c]
push 0x11
push eax
push str.Content_Encoding:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a59c
mov eax, dword [edi + 0x9a0]
test eax, eax
je 0x87a59c
mov ecx, dword [esi + 0x5c]
push 0
add ecx, 0x11
push ecx
jmp 0x87a550
mov edx, dword [esi + 0x5c]
push 0xc
push edx
push str.Retry_After:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a624
xor eax, eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov eax, dword [esi + 0x5c]
add eax, 0xc
push eax
call fcn.008851e0
mov ebp, eax
add esp, 4
cmp ebp, 0xffffffff
jne 0x87a604
mov edx, dword [esi + 0x5c]
lea ecx, [esp + 0x28]
push ecx
push 0xa
add edx, 0xc
push 0
push edx
call fcn.00885250
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov dword [edi + 0x1090], eax
add esp, 0x10
mov dword [edi + 0x1094], edx
jmp 0x87a98b
push 0
call fcn.00842300
add esp, 4
sub ebp, eax
mov eax, ebp
cdq
mov dword [edi + 0x1090], eax
mov dword [edi + 0x1094], edx
jmp 0x87a98b
mov eax, dword [esi + 0x4ec]
test eax, eax
jne 0x87a6e8
mov eax, dword [esi + 0x5c]
push 0xe
push eax
push str.Content_Range:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a6e8
mov ebp, dword [esi + 0x5c]
add ebp, 0xe
mov al, byte [ebp]
test al, al
je 0x87a67a
and eax, 0xff
push eax
call fcn.00886500
add esp, 4
test eax, eax
jne 0x87a67a
cmp byte [ebp], 0x2a
je 0x87a67a
mov al, byte [ebp + 1]
inc ebp
test al, al
jne 0x87a65a
xor ecx, ecx
mov cl, byte [ebp]
push ecx
call fcn.00886500
add esp, 4
test eax, eax
je 0x87a6d5
lea ebx, [esi + 0x60]
push ebx
push 0xa
push 0
push ebp
call fcn.00885250
add esp, 0x10
test eax, eax
jne 0x87a987
mov edx, dword [edi + 0xf88]
mov eax, dword [ebx]
cmp edx, eax
jne 0x87a987
mov eax, dword [edi + 0xf8c]
mov ecx, dword [ebx + 4]
cmp eax, ecx
jne 0x87a987
mov dword [esi + 0x4e0], 1
jmp 0x87a987
xor eax, eax
mov dword [edi + 0xf88], eax
mov dword [edi + 0xf8c], eax
jmp 0x87a98b
mov eax, dword [edi + 0xc2c]
test eax, eax
je 0x87a76f
mov eax, dword [edi + 0x1028]
test eax, eax
je 0x87a76f
mov ecx, dword [esi + 0x5c]
push 0xb
push ecx
push str.Set_Cookie:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a76f
push 2
push 2
push edi
call fcn.0085e4d0
mov eax, dword [ebx + 0x5e4]
add esp, 0xc
test eax, eax
jne 0x87a730
mov eax, dword [ebx + 0x304]
mov edx, dword [ebx + 0x5a8]
mov ecx, dword [edx + 0x40]
mov edx, dword [edi + 0xfd8]
shr ecx, 1
and ecx, 1
push ecx
mov ecx, dword [edi + 0xc2c]
push edx
push eax
mov eax, dword [esi + 0x5c]
add eax, 0xb
push eax
push 0
push 1
push ecx
push edi
call fcn.00858520
push 2
push edi
call fcn.0085e520
add esp, 0x28
jmp 0x87a98b
mov eax, dword [esi + 0x4ec]
test eax, eax
jne 0x87a7d2
mov edx, dword [esi + 0x5c]
push 0xe
push edx
push str.Last_Modified:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a7d2
mov eax, dword [edi + 0x824]
test eax, eax
jne 0x87a7a4
mov eax, dword [edi + 0xb40]
test eax, eax
je 0x87a7d2
mov eax, dword [esi + 0x5c]
add eax, 0xe
push eax
call fcn.008851e0
mov dword [esi + 0x80], eax
mov ecx, dword [edi + 0xb40]
add esp, 4
test ecx, ecx
je 0x87a987
mov dword [edi + 0x1064], eax
jmp 0x87a98b
mov ecx, dword [esi + 0x5c]
push 0x11
push ecx
push str.WWW_Authenticate:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a7f3
mov eax, dword [esi + 0x68]
cmp eax, 0x191
je 0x87a814
mov edx, dword [esi + 0x5c]
push 0x13
push edx
push str.Proxy_authenticate:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a859
mov eax, dword [esi + 0x68]
cmp eax, 0x197
jne 0x87a859
xor ebx, ebx
cmp eax, 0x197
mov eax, dword [esi + 0x5c]
push eax
sete bl
call fcn.00876af0
mov ebp, eax
add esp, 4
test ebp, ebp
je 0x87afd6
mov ecx, dword [esp + 0x40]
push ebp
push ebx
push ecx
call fcn.00877500
push ebp
mov ebx, eax
call dword [0x8c9934]
add esp, 0x10
test ebx, ebx
jne 0x87afcc
jmp 0x87a987
mov edx, dword [esi + 0x5c]
push 0xf
push edx
push str.Persistent_Auth
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a8d2
cmp dword [edi + 0xdf4], 4
jne 0x87a987
mov eax, dword [esi + 0x5c]
push eax
call fcn.00876af0
mov ebp, eax
add esp, 4
test ebp, ebp
je 0x87afd6
push 5
push ebp
push str.false
call fcn.0085e4b0
neg eax
sbb eax, eax
push ebp
neg eax
push eax
push str.Negotiate:_noauthpersist_____d__header_part:__s
push edi
mov dword [ebx + 0x700], eax
mov dword [ebx + 0x704], 1
call fcn.00857870
push ebp
call dword [0x8c9934]
add esp, 0x20
jmp 0x87a98b
mov eax, dword [esi + 0x68]
cmp eax, 0x12c
jl 0x87a963
cmp eax, 0x190
jge 0x87a963
mov ecx, dword [esi + 0x5c]
push 9
push ecx
push str.Location:
call fcn.0085e4b0
add esp, 0xc
test eax, eax
je 0x87a963
mov eax, dword [edi + 0x118]
test eax, eax
jne 0x87a963
mov edx, dword [esi + 0x5c]
push edx
call fcn.00876af0
add esp, 4
test eax, eax
je 0x87afd6
cmp byte [eax], 0
jne 0x87a92d
push eax
call dword [0x8c9934]
add esp, 4
jmp 0x87a98b
mov ecx, dword [edi + 0xb74]
mov dword [edi + 0x118], eax
test ecx, ecx
je 0x87a987
push eax
call dword [0x8c993c]
add esp, 4
mov dword [edi + 0x11c], eax
test eax, eax
je 0x87afd6
push ebx
call fcn.00876ea0
add esp, 4
jmp 0x87a559
mov eax, dword [ebx + 0x5a8]
test dword [eax + 0x40], 0x40000
je 0x87a987
mov ecx, dword [esi + 0x5c]
push ecx
push ebx
call fcn.00867240
add esp, 8
test eax, eax
jne 0x87b0cd
mov ebx, dword [esp + 0x40]
mov eax, dword [edi + 0xb80]
mov ebp, 2
test eax, eax
je 0x87a99f
mov ebp, 3
mov eax, dword [edi + 0xb94]
test eax, eax
je 0x87a9bc
mov edx, dword [esi + 0x4c]
mov eax, dword [esi + 0x5c]
push edx
push eax
push 1
push edi
call fcn.00858220
add esp, 0x10
mov ecx, dword [esi + 0x4c]
mov edx, dword [esi + 0x5c]
push ecx
push edx
push ebp
push ebx
call fcn.00857e60
add esp, 0x10
test eax, eax
jne 0x87b0cd
mov eax, dword [esi + 0x4c]
mov ebp, dword [edi + 0x1068]
cdq
add ebp, eax
mov ecx, dword [edi + 0xa8]
mov dword [edi + 0x1068], ebp
mov ebx, dword [edi + 0x106c]
adc ebx, edx
mov dword [edi + 0x106c], ebx
mov eax, dword [esi + 0x4c]
cdq
add ecx, eax
mov dword [edi + 0xa8], ecx
mov eax, dword [edi + 0xac]
adc eax, edx
mov dword [edi + 0xac], eax
mov eax, dword [edi + 0xd70]
mov dword [esi + 0x48], eax
mov dword [esi + 0x4c], 0
jmp 0x87ae11
cmp cl, 0xd
jne 0x87aa34
inc eax
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x5c]
cmp byte [eax], 0xa
jne 0x87aa40
inc eax
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x68]
cmp eax, 0x64
jl 0x87aac5
cmp eax, 0xc7
jg 0x87aac5
sub eax, 0x64
je 0x87aa86
dec eax
je 0x87aa6d
mov dword [esi + 0x4dc], 1
mov dword [esi + 0x44], 0
jmp 0x87ab26
cmp dword [esi + 0x78], 1
je 0x87ae46
mov dword [esi + 0x4dc], 0
jmp 0x87ab26
mov eax, dword [esi + 0x74]
mov dword [esi + 0x4dc], 1
test eax, eax
mov dword [esi + 0x44], 0
jle 0x87ab26
mov ebx, dword [esi + 0x8c]
push 0
or ebx, 2
push edi
mov dword [esi + 0x74], 0
mov dword [esi + 0x8c], ebx
call fcn.008576d0
add esp, 8
jmp 0x87ab26
mov ecx, dword [esi]
mov edx, dword [esi + 4]
and ecx, edx
mov dword [esi + 0x4dc], 0
cmp ecx, 0xffffffff
jne 0x87ab26
mov eax, dword [esi + 0x4f0]
test eax, eax
jne 0x87ab26
mov eax, dword [ebp + 0x514]
test eax, eax
jne 0x87ab34
cmp dword [ebp + 0x3e8], 0xb
jne 0x87ab26
mov edx, dword [ebp + 0x5a8]
test dword [edx + 0x40], 0x40000
jne 0x87ab26
cmp dword [edi + 0x82c], 6
je 0x87ab26
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push edi
call fcn.00857870
push 2
push ebp
call fcn.0085d9d0
add esp, 0x10
mov eax, dword [ebp + 0x514]
test eax, eax
je 0x87abba
mov eax, dword [edi + 0xf0]
cmp eax, 0x191
jne 0x87ab4a
cmp dword [ebp + 0x63c], 2
je 0x87ab5a
cmp eax, 0x197
jne 0x87ab72
cmp dword [ebp + 0x640], 2
jne 0x87ab72
push str.Connection_closure_while_negotiating_auth__HTTP_1.0___n
push edi
call fcn.00857870
add esp, 8
mov dword [edi + 0x1000], 1
mov eax, dword [ebp + 0x514]
test eax, eax
je 0x87abba
mov eax, dword [edi + 0xf0]
cmp eax, 0x191
jne 0x87ab92
cmp dword [ebp + 0x6bc], 1
je 0x87aba2
cmp eax, 0x197
jne 0x87abba
cmp dword [ebp + 0x6c0], 1
jne 0x87abba
push str.Connection_closure_while_negotiating_auth__HTTP_1.0___n
push edi
call fcn.00857870
add esp, 8
mov dword [edi + 0x1000], 1
mov ecx, dword [ebp + 0x6bc]
mov eax, 3
cmp ecx, eax
jne 0x87abdf
cmp dword [edi + 0xf0], 0x191
je 0x87abdf
mov dword [ebp + 0x6bc], 4
cmp dword [ebp + 0x6c0], eax
jne 0x87abfd
cmp dword [edi + 0xf0], 0x197
je 0x87abfd
mov dword [ebp + 0x6c0], 4
push ebp
call fcn.00877790
add esp, 4
test eax, eax
jne 0x87afe3
mov eax, dword [edi + 0xb80]
mov ecx, 2
test eax, eax
je 0x87ac22
mov ecx, 3
mov eax, dword [edi + 0xd70]
mov ebx, dword [esi + 0x5c]
sub ebx, eax
push ebx
push eax
push ecx
push ebp
mov dword [esp + 0x34], ebx
call fcn.00857e60
add esp, 0x10
test eax, eax
jne 0x87b0cd
mov ecx, dword [edi + 0x1068]
mov eax, ebx
cdq
add ecx, eax
mov dword [edi + 0x1068], ecx
mov ebx, dword [edi + 0x106c]
mov ecx, dword [edi + 0xa8]
adc ebx, edx
add ecx, eax
mov dword [edi + 0x106c], ebx
mov dword [edi + 0xa8], ecx
mov ebx, dword [edi + 0xac]
adc ebx, edx
mov dword [edi + 0xac], ebx
mov eax, dword [esi + 0x68]
cmp eax, 0x64
jl 0x87ac99
cmp eax, 0xc7
jg 0x87ac99
mov eax, dword [edi + 0xa8]
mov ecx, ebx
jmp 0x87ac9d
xor eax, eax
xor ecx, ecx
mov dword [edi + 0xb0], eax
push ebp
mov dword [edi + 0xb4], ecx
call fcn.00876bc0
xor ebx, ebx
add esp, 4
cmp eax, ebx
jne 0x87b0cd
cmp dword [esi + 0x68], 0x12c
jl 0x87adf9
cmp dword [ebp + 0x554], ebx
jne 0x87add5
cmp dword [ebp + 0x514], ebx
jne 0x87add5
cmp dword [ebp + 0x558], ebx
jne 0x87addd
mov eax, dword [edi + 0x82c]
cmp eax, 2
jl 0x87add5
cmp eax, 5
jg 0x87add5
push ebx
push edi
call fcn.008576d0
mov eax, dword [esi + 0x4e4]
add esp, 8
cmp eax, ebx
jne 0x87add5
cmp dword [esi + 0x68], 0x1a1
jne 0x87ad65
cmp dword [edi + 0x100c], ebx
je 0x87ad65
push str.Got_417_while_waiting_for_a_100_n
push edi
call fcn.00857870
mov dword [edi + 0x1010], 1
mov eax, dword [ebp]
mov ecx, dword [eax + 0xc10]
push ecx
call dword [0x8c993c]
push esi
push ebp
mov dword [edi + 0x11c], eax
call fcn.0087ee30
add esp, 0x14
jmp 0x87add5
cmp dword [edi + 0xb70], ebx
je 0x87ad95
push str.HTTP_error_before_end_of_send__keep_sending_n
push edi
call fcn.00857870
mov eax, dword [esi + 0x74]
add esp, 8
cmp eax, ebx
jle 0x87add5
mov eax, dword [esi + 0x8c]
mov dword [esi + 0x74], ebx
or al, 2
mov dword [esi + 0x8c], eax
jmp 0x87add5
push str.HTTP_error_before_end_of_send__stop_sending_n
push edi
call fcn.00857870
push 2
push ebp
call fcn.0085d9d0
push esi
push ebp
call fcn.0087ee30
add esp, 0x18
cmp eax, ebx
jne 0x87b0cd
mov dword [esi + 0x4e4], 1
mov eax, dword [edi + 0x100c]
cmp eax, ebx
je 0x87add5
mov dword [esi + 0x74], 3
cmp dword [ebp + 0x558], ebx
je 0x87adf9
push str.Keep_sending_data_to_get_tossed_away__n
push edi
call fcn.00857870
mov eax, dword [esi + 0x8c]
add esp, 8
or al, 2
mov dword [esi + 0x8c], eax
cmp dword [esi + 0x4dc], ebx
je 0x87b002
mov edx, dword [edi + 0xd70]
mov dword [esi + 0x4c], ebx
mov dword [esi + 0x48], edx
mov eax, dword [esi + 0x50]
cmp byte [eax], 0
je 0x87b0cb
mov ecx, dword [esp + 0x44]
mov dword [esi + 0x54], eax
mov edx, dword [ecx]
push edx
push 0xa
push eax
call fcn.00891470
add esp, 0xc
mov dword [esi + 0x58], eax
test eax, eax
je 0x87ae75
mov ebp, dword [esp + 0x40]
mov ebx, dword [esp + 0x44]
jmp 0x879f95
push str.Received_101_n
push edi
call fcn.00857870
add esp, 8
mov eax, 1
mov dword [esi + 0x78], 2
mov dword [esi + 0x4dc], eax
mov dword [esi + 0x44], 0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
mov eax, dword [esp + 0x44]
mov ecx, dword [eax]
push ecx
push esi
push edi
call fcn.0087b210
add esp, 0xc
test eax, eax
jne 0x87b0cd
mov eax, dword [esi + 0x44]
test eax, eax
jne 0x87b0cb
mov edx, dword [esi + 0x4c]
mov eax, dword [edi + 0xd70]
mov ebx, dword [esp + 0x40]
push edx
push eax
push ebx
push edi
call fcn.0087b1a0
add esp, 0x10
cmp eax, 2
jne 0x87b0cb
push eax
push ebx
mov dword [esi + 0x4dc], 0
mov dword [esi + 0x40], eax
call fcn.0085d9d0
mov eax, dword [edi + 0xc04]
add esp, 8
test eax, eax
jne 0x87b0cb
jmp 0x87aef7
push 2
push ebp
call fcn.0085d9d0
mov eax, dword [edi + 0xc04]
add esp, 8
test eax, eax
jne 0x87af12
push str.Received_HTTP_0.9_when_not_allowed_n
push edi
call fcn.00857930
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
mov dword [esi + 0x4dc], 0
mov eax, dword [ebx]
test eax, eax
je 0x87af33
mov dword [esi + 0x40], 1
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x28
ret
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov dword [esi + 0x40], 2
mov dword [ebx], ecx
mov dword [esi + 0x50], edx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x28
ret
push str.Unsupported_HTTP_version_in_response
push edi
call fcn.00857930
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
push edi
call fcn.0087b2e0
add esp, 4
mov eax, 0x16
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
mov dword [esi + 0x4dc], 0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x28
ret
push str.Maximum_file_size_exceeded
push edi
call fcn.00857930
add esp, 8
mov eax, 0x3f
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
push str.Invalid_Content_Length:_value
push edi
call fcn.00857930
add esp, 8
mov eax, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
pop edi
pop esi
mov eax, ebx
pop ebp
pop ebx
add esp, 0x28
ret
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0x28
ret
mov eax, dword [esi + 0x68]
push eax
push str.The_requested_URL_returned_error:__d
push edi
call fcn.00857930
add esp, 0xc
mov eax, 0x16
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
mov eax, dword [edi + 0xb8c]
mov ebx, dword [esp + 0x48]
test eax, eax
je 0x87b01b
mov dword [ebx], 1
or edx, 0xffffffff
jmp 0x87b063
mov ecx, dword [ebp + 0x5a8]
test dword [ecx + 0x40], 0x40000
je 0x87b04b
cmp dword [edi + 0xac4], 2
jne 0x87b04b
mov eax, dword [esi + 4]
or edx, 0xffffffff
cmp eax, edx
jg 0x87b04e
jl 0x87b043
cmp dword [esi], edx
ja 0x87b04e
mov dword [ebx], 1
jmp 0x87b063
or edx, 0xffffffff
mov eax, dword [esi + 0x4f0]
test eax, eax
je 0x87b063
mov dword [esi], edx
mov dword [esi + 8], edx
mov dword [esi + 4], edx
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov ecx, dword [esi + 4]
cmp eax, edx
jne 0x87b070
cmp ecx, edx
je 0x87b086
push ecx
push eax
push edi
call fcn.00864f10
mov edx, dword [esi]
mov eax, dword [esi + 4]
mov dword [esi + 8], edx
add esp, 0xc
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
test eax, eax
jne 0x87b09a
mov eax, dword [esi + 0xc]
test eax, eax
jne 0x87b09a
mov dword [ebx], 1
cmp dword [ebx], 0
je 0x87b0ad
mov eax, dword [esi + 0x8c]
and al, 0xfe
mov dword [esi + 0x8c], eax
mov eax, dword [edi + 0xb94]
test eax, eax
je 0x87b0cb
mov ecx, dword [esp + 0x24]
mov edx, dword [esi + 0x54]
push ecx
push edx
push 1
push edi
call fcn.00858220
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret