Function at 0x858bc0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x24
push ebx
push esi
mov esi, dword [esp + 0x34]
push edi
mov edi, dword [esp + 0x34]
xor ebx, ebx
push esi
push edi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x2c], ebx
call fcn.00859450
mov dl, byte [edi + 0xdf0]
mov dword [esp + 0x14], eax
mov al, 0x28
add esp, 8
test al, dl
mov cl, 3
je 0x858c07
mov edx, dword [esi + 0x5a8]
mov dword [esp + 0x14], 1
test byte [edx + 0x40], cl
jne 0x858c0b
mov dword [esp + 0x14], ebx
cmp dword [esi + 0x538], ebx
je 0x858c2e
test byte [edi + 0xe08], al
je 0x858c2e
mov eax, dword [esi + 0x5a8]
mov dword [esp + 0x10], 1
test byte [eax + 0x40], cl
jne 0x858c32
mov dword [esp + 0x10], ebx
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x2c]
mov dword [ecx], ebx
mov dword [edx], ebx
mov ecx, dword [edi + 0xd60]
push eax
push ecx
push esi
call fcn.008648e0
add esp, 0xc
cmp eax, ebx
mov dword [esp + 0x28], eax
je 0x859406
mov edi, eax
mov eax, dword [edi]
cmp eax, 2
mov eax, str.can_multiplex
je 0x858c72
mov eax, str.serially
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x34]
push eax
push edi
push edx
push str.Found_bundle_for_host__s:__p___s__n
push esi
call fcn.0085e5d0
mov eax, dword [esp + 0x20]
add esp, 0x14
cmp eax, ebx
je 0x858d1a
cmp dword [edi], ebx
jne 0x858cdc
cmp dword [esi + 0xbe0], ebx
je 0x858cca
push str.Server_doesnt_support_multiplex_yet__wait_n
push esi
call fcn.0085e5d0
mov eax, dword [esp + 0x4c]
push esi
mov dword [eax], 1
call fcn.00864880
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
add esp, 0x24
ret
push str.Server_doesnt_support_multiplex__yet__n
push esi
call fcn.0085e5d0
add esp, 8
mov dword [esp + 0xc], ebx
cmp dword [edi], 2
jne 0x858d03
mov ecx, dword [esi + 0x78]
push ecx
call fcn.0085c060
add esp, 4
test eax, eax
jne 0x858d03
push str.Could_multiplex__but_not_asked_to__n
push esi
call fcn.0085e5d0
add esp, 8
mov dword [esp + 0xc], ebx
cmp dword [edi], 0xffffffff
jne 0x858d1a
push str.Can_not_multiplex__even_if_we_wanted_to__n
push esi
call fcn.0085e5d0
add esp, 8
mov dword [esp + 0xc], ebx
mov edi, dword [edi + 8]
cmp edi, ebx
mov dword [esp + 0x18], edi
je 0x859406
push ebp
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x24], ebx
mov ebp, dword [eax]
mov edx, dword [eax + 8]
mov dword [esp + 0x1c], edx
cmp dword [ebp + 0x58c], ebx
jne 0x859396
cmp dword [ebp + 0x514], ebx
jne 0x859396
mov eax, dword [esp + 0x2c]
cmp dword [eax], 2
jne 0x858d66
mov ecx, dword [ebp + 0x630]
mov dword [esp + 0x24], ecx
cmp dword [esp + 0x10], ebx
jne 0x858dcd
cmp dword [esp + 0x24], ebx
jne 0x859396
mov al, byte [ebp + 0x2c4]
test al, al
jne 0x858d9e
mov edx, dword [ebp + 0x2b0]
mov eax, dword [esp + 0x38]
push edx
push str.Connection__ld_is_still_name_resolving__cant_reuse_n
push eax
call fcn.0085e5d0
add esp, 0xc
jmp 0x859396
cmp dword [ebp + 0x408], 0xffffffff
jne 0x858dcd
mov ecx, dword [ebp + 0x2b0]
mov edx, dword [esp + 0x38]
push ecx
push str.Connection__ld_isnt_open_enough__cant_reuse_n
push edx
mov dword [esp + 0x34], 1
call fcn.0085e5d0
add esp, 0xc
jmp 0x859396
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + 0x848]
cmp eax, ebx
je 0x858e34
mov esi, dword [ebp + 0x848]
cmp esi, ebx
je 0x859396
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x858e0d
test cl, cl
je 0x858e09
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x858e0d
add eax, 2
add esi, 2
test cl, cl
jne 0x858de9
xor eax, eax
jmp 0x858e12
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x859396
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + 0x84c]
mov eax, dword [ebp + 0x84c]
cmp ecx, eax
jne 0x859396
jmp 0x858e40
cmp dword [ebp + 0x848], ebx
jne 0x859396
mov esi, dword [esp + 0x3c]
mov eax, dword [ebp + 0x5a8]
mov edx, dword [esi + 0x5a8]
mov ecx, dword [eax + 0x44]
xor ecx, dword [edx + 0x44]
test cl, 1
je 0x858e82
mov edx, dword [eax + 0x40]
push edx
call fcn.0085b6c0
mov ecx, dword [esi + 0x5a8]
add esp, 4
cmp eax, dword [ecx + 0x40]
jne 0x859396
cmp dword [ebp + 0x850], ebx
je 0x859396
mov edx, dword [esi + 0x52c]
mov eax, dword [ebp + 0x52c]
cmp edx, eax
jne 0x859396
mov eax, dword [esp + 0x3c]
mov ecx, dword [ebp + 0x530]
mov eax, dword [eax + 0x530]
cmp eax, ecx
jne 0x859396
cmp eax, ebx
je 0x858ed4
mov edx, dword [esp + 0x3c]
lea ecx, [ebp + 0x324]
add edx, 0x324
push ecx
push edx
call fcn.008594f0
add esp, 8
test eax, eax
je 0x859396
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + 0x520]
mov eax, dword [ebp + 0x520]
cmp ecx, eax
jne 0x859396
mov edx, dword [esp + 0x3c]
mov ecx, dword [ebp + 0x524]
mov eax, dword [edx + 0x524]
cmp eax, ecx
jne 0x859396
mov ecx, edx
cmp dword [ecx + 0x52c], ebx
je 0x858fbd
lea edx, [ebp + 0x344]
add ecx, 0x344
push edx
push ecx
call fcn.008594b0
add esp, 8
test eax, eax
je 0x859396
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + 0x550]
mov eax, dword [ebp + 0x550]
cmp ecx, eax
jne 0x859396
mov ecx, dword [esp + 0x3c]
cmp dword [ecx + 0x358], 2
jne 0x858fbd
mov edx, dword [ecx + 0x5a8]
test byte [edx + 0x44], 1
je 0x858f8e
lea eax, [ebp + 0x4cc]
add ecx, 0x4cc
push eax
push ecx
call fcn.00855b20
add esp, 8
test eax, eax
je 0x859396
cmp dword [ebp + 0x470], 2
jne 0x859396
jmp 0x858fb9
lea edx, [ebp + 0x494]
add ecx, 0x494
push edx
push ecx
call fcn.00855b20
add esp, 8
test eax, eax
je 0x859396
cmp dword [ebp + 0x450], 2
jne 0x859396
mov ecx, dword [esp + 0x3c]
cmp dword [esp + 0x10], ebx
jne 0x858fd0
cmp dword [ebp], ebx
jne 0x859396
mov ecx, dword [esp + 0x3c]
mov eax, dword [ebp]
cmp eax, ebx
je 0x858fe9
mov ecx, dword [ecx]
mov edx, dword [eax + 0x78]
cmp edx, dword [ecx + 0x78]
jne 0x859396
mov ecx, dword [esp + 0x3c]
mov esi, dword [ecx + 0x82c]
cmp esi, ebx
jne 0x858ffc
cmp word [ecx + 0x830], bx
je 0x85906d
mov ax, word [ebp + 0x830]
cmp ax, word [ecx + 0x830]
jne 0x859396
mov edx, dword [esp + 0x3c]
mov ecx, dword [ebp + 0x834]
cmp ecx, dword [edx + 0x834]
jne 0x859396
cmp esi, ebx
je 0x859069
mov eax, dword [ebp + 0x82c]
cmp eax, ebx
je 0x859396
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x85905c
test cl, cl
je 0x859058
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x85905c
add eax, 2
add esi, 2
test cl, cl
jne 0x859038
xor eax, eax
jmp 0x859061
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x859396
mov ecx, dword [esp + 0x3c]
mov edi, dword [ecx + 0x5a8]
mov edx, dword [edi + 0x44]
test dl, 0x80
jne 0x859101
mov eax, dword [esp + 0x3c]
mov esi, dword [ebp + 0x3d8]
mov eax, dword [eax + 0x3d8]
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x8590b3
test cl, cl
je 0x8590af
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x8590b3
add eax, 2
add esi, 2
test cl, cl
jne 0x85908f
xor eax, eax
jmp 0x8590b8
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x859396
mov ecx, dword [esp + 0x3c]
mov esi, dword [ebp + 0x3dc]
mov eax, dword [ecx + 0x3dc]
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x8590f4
test cl, cl
je 0x8590f0
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x8590f4
add eax, 2
add esi, 2
test cl, cl
jne 0x8590d0
xor eax, eax
jmp 0x8590f9
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x859396
mov ebx, dword [esp + 0x3c]
mov eax, dword [ebx + 0x52c]
test eax, eax
je 0x859122
test dl, 1
jne 0x859122
mov eax, dword [ebx + 0x550]
test eax, eax
je 0x859221
mov edx, dword [ebp + 0x5a8]
mov ecx, dword [edi]
mov eax, dword [edx]
push eax
push ecx
call fcn.008650b0
add esp, 8
test eax, eax
jne 0x859169
mov edx, dword [ebp + 0x5a8]
mov eax, dword [edx + 0x40]
push eax
call fcn.0085b6c0
mov ecx, dword [ebx + 0x5a8]
add esp, 4
cmp eax, dword [ecx + 0x40]
jne 0x859396
mov eax, dword [ebp + 0x850]
test eax, eax
je 0x859396
mov eax, dword [ebx + 0x520]
test eax, eax
je 0x859191
mov edx, dword [ebp + 0x31c]
mov eax, dword [ebx + 0x31c]
push edx
push eax
call fcn.008650b0
add esp, 8
test eax, eax
je 0x859396
mov eax, dword [ebx + 0x524]
test eax, eax
je 0x8591af
mov ecx, dword [ebx + 0x36c]
mov eax, dword [ebp + 0x36c]
cmp ecx, eax
jne 0x859396
mov edx, dword [ebp + 0x304]
mov eax, dword [ebx + 0x304]
push edx
push eax
call fcn.008650b0
add esp, 8
test eax, eax
je 0x859396
mov ecx, dword [ebx + 0x368]
mov eax, dword [ebp + 0x368]
cmp ecx, eax
jne 0x859396
mov edx, dword [ebx + 0x5a8]
test byte [edx + 0x44], 1
je 0x859221
lea eax, [ebp + 0x494]
lea ecx, [ebx + 0x494]
push eax
push ecx
call fcn.00855b20
add esp, 8
test eax, eax
je 0x859396
cmp dword [ebp + 0x450], 2
je 0x859221
mov dword [esp + 0x28], 1
jmp 0x859396
mov eax, dword [esp + 0x18]
test eax, eax
je 0x8592b6
mov esi, dword [ebp + 0x3d8]
mov eax, dword [ebx + 0x3d8]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x85925d
test cl, cl
je 0x859259
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x85925d
add eax, 2
add esi, 2
test cl, cl
jne 0x859239
xor eax, eax
jmp 0x859262
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x85929f
mov esi, dword [ebp + 0x3dc]
mov eax, dword [ebx + 0x3dc]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x859296
test cl, cl
je 0x859292
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x859296
add eax, 2
add esi, 2
test cl, cl
jne 0x859272
xor eax, eax
jmp 0x85929b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x8592c4
mov eax, dword [ebp + 0x63c]
test eax, eax
jne 0x859396
mov dword [esp + 0x20], ebp
jmp 0x859396
mov eax, dword [ebp + 0x63c]
test eax, eax
jne 0x859396
mov eax, dword [esp + 0x14]
test eax, eax
je 0x859358
mov edi, dword [ebp + 0x35c]
test edi, edi
je 0x859396
mov esi, dword [ebp + 0x360]
test esi, esi
je 0x859396
mov eax, dword [ebx + 0x35c]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [edi]
jne 0x859316
test cl, cl
je 0x859312
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [edi + 1]
jne 0x859316
add eax, 2
add edi, 2
test cl, cl
jne 0x8592f2
xor eax, eax
jmp 0x85931b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x859396
mov eax, dword [ebx + 0x360]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x85934d
test cl, cl
je 0x859349
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x85934d
add eax, 2
add esi, 2
test cl, cl
jne 0x859325
xor eax, eax
jmp 0x859352
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x859364
jmp 0x859396
mov ecx, dword [ebp + 0x640]
test ecx, ecx
jne 0x859396
jmp 0x859368
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x859374
test eax, eax
je 0x8593aa
mov esi, ebp
test ecx, ecx
mov dword [esp + 0x20], esi
je 0x859388
mov ecx, dword [ebp + 0x63c]
test ecx, ecx
jne 0x8593d4
test eax, eax
je 0x859396
mov eax, dword [ebp + 0x640]
test eax, eax
jne 0x8593d4
mov eax, dword [esp + 0x1c]
xor ebx, ebx
cmp eax, ebx
jne 0x858d2a
mov esi, dword [esp + 0x20]
jmp 0x8593de
mov eax, dword [esp + 0x10]
test eax, eax
je 0x8593d0
mov eax, dword [esp + 0x24]
mov esi, ebp
test eax, eax
je 0x8593de
mov eax, dword [esp + 0x38]
push str.Multiplexed_connection_found__n
push eax
call fcn.0085e5d0
add esp, 8
jmp 0x8593de
mov esi, ebp
jmp 0x8593de
mov ecx, dword [esp + 0x44]
mov dword [ecx], 1
xor ebx, ebx
pop ebp
cmp esi, ebx
je 0x859406
mov eax, dword [esp + 0x34]
push eax
mov dword [esi], eax
call fcn.00864880
mov edx, dword [esp + 0x40]
add esp, 4
mov eax, 1
mov dword [edx], esi
pop edi
pop esi
pop ebx
add esp, 0x24
ret
mov esi, dword [esp + 0x34]
push esi
call fcn.00864880
mov eax, dword [esp + 0x28]
add esp, 4
cmp eax, ebx
je 0x85943b
cmp dword [esi + 0xbe0], ebx
je 0x85943b
push str.Found_pending_candidate_for_reuse_and_CURLOPT_PIPEWAIT_is_set_n
push esi
call fcn.0085e5d0
mov eax, dword [esp + 0x4c]
add esp, 8
mov dword [eax], 1
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x24
ret