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

Disassembly:
sub esp, 0x18
push ebx
push ebp
mov ebp, dword [esp + 0x28]
push esi
push edi
xor edi, edi
mov byte [esp + 0x12], 0
mov eax, dword [ebp + 0x540]
xor esi, esi
mov dword [esp + 0x18], edi
test byte [eax + 0x40], 3
je 0x49b73a
cmp byte [ebp + 0x50d], 0
je 0x49b716
cmp byte [ebp + 0x500], 0
jne 0x49b73a
mov ebx, dword [esp + 0x2c]
push dword [ebx + 0x78]
call fcn.00491fe0
add esp, 4
test al, al
je 0x49b73e
cmp dword [ebx + 0x844], 3
mov eax, 2
cmovge esi, eax
jmp 0x49b73e
mov ebx, dword [esp + 0x2c]
test esi, esi
setne al
test byte [ebx + 0xd70], 0x28
mov byte [esp + 0x30], al
je 0x49b760
mov eax, dword [ebp + 0x540]
test byte [eax + 0x40], 3
je 0x49b760
mov al, 1
jmp 0x49b762
xor al, al
cmp byte [ebp + 0x509], 0
mov byte [esp + 0x13], al
je 0x49b78b
test byte [ebx + 0xd80], 0x28
je 0x49b78b
mov eax, dword [ebp + 0x540]
test byte [eax + 0x40], 3
je 0x49b78b
mov byte [esp + 0x11], 1
jmp 0x49b791
xor al, al
mov byte [esp + 0x11], al
mov eax, dword [esp + 0x38]
mov byte [eax], 0
mov eax, dword [esp + 0x3c]
mov byte [eax], 0
lea eax, [esp + 0x20]
push eax
push dword [ebx + 0xcd0]
push ebp
call fcn.004996f0
mov edi, eax
add esp, 0xc
mov dword [esp + 0x24], edi
test edi, edi
je 0x49bfb5
cmp dword [edi], 2
mov eax, str.serially
mov ecx, str.can_multiplex
cmovne ecx, eax
push ecx
push edi
push dword [esp + 0x28]
push str.Found_bundle_for_host__s:__p___s__n
push ebx
call fcn.004a0980
add esp, 0x14
test esi, esi
je 0x49b879
mov eax, dword [edi]
test eax, eax
jne 0x49b836
cmp byte [ebx + 0xb25], al
je 0x49b820
push str.Server_doesnt_support_multiplex_yet__wait_n
push ebx
call fcn.004a0980
mov eax, dword [esp + 0x44]
push ebx
mov byte [eax], 1
call fcn.00499c30
add esp, 0xc
xor al, al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret
push str.Server_doesnt_support_multiplex__yet__n
push ebx
call fcn.004a0980
add esp, 8
xor al, al
mov byte [esp + 0x30], al
mov eax, dword [edi]
cmp eax, 2
jne 0x49b85e
push dword [ebx + 0x78]
call fcn.00491fe0
add esp, 4
test al, al
jne 0x49b85e
push str.Could_multiplex__but_not_asked_to__n
push ebx
call fcn.004a0980
add esp, 8
xor al, al
mov byte [esp + 0x30], al
cmp dword [edi], 0xffffffff
jne 0x49b879
push str.Can_not_multiplex__even_if_we_wanted_to__n
push ebx
call fcn.004a0980
add esp, 8
xor cl, cl
mov byte [esp + 0x30], cl
jmp 0x49b87d
mov cl, byte [esp + 0x30]
mov esi, dword [edi + 8]
test esi, esi
je 0x49bfb5
mov edi, dword [esi]
xor eax, eax
mov esi, dword [esi + 8]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], esi
cmp byte [edi + 0x51e], al
jne 0x49bf4f
cmp byte [edi + 0x500], al
jne 0x49bf4f
mov edx, dword [esp + 0x24]
cmp dword [edx], 2
jne 0x49b8c2
mov eax, dword [edi + 0x5d4]
mov dword [esp + 0x1c], eax
test cl, cl
jne 0x49b916
test eax, eax
jne 0x49bf4f
cmp byte [edi + 0x2c4], al
jne 0x49b8ef
push dword [edi + 0x2b0]
push str.Connection__ld_is_still_name_resolving__cant_reuse_n
push ebx
call fcn.004a0980
add esp, 0xc
jmp 0x49bf4b
cmp dword [edi + 0x420], 0xffffffff
jne 0x49b916
push dword [edi + 0x2b0]
mov byte [esp + 0x16], 1
push str.Connection__ld_isnt_open_enough__cant_reuse_n
push ebx
call fcn.004a0980
add esp, 0xc
jmp 0x49bf4b
mov ecx, dword [ebp + 0x7dc]
mov eax, dword [edi + 0x7dc]
test ecx, ecx
je 0x49b96b
test eax, eax
je 0x49bf4b
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x49b950
test dl, dl
je 0x49b94c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x49b950
add ecx, 2
add eax, 2
test dl, dl
jne 0x49b930
xor eax, eax
jmp 0x49b955
sbb eax, eax
or eax, 1
test eax, eax
jne 0x49bf4b
mov al, byte [ebp + 0x7e0]
cmp al, byte [edi + 0x7e0]
jmp 0x49b96d
test eax, eax
jne 0x49bf4b
mov ecx, dword [edi + 0x540]
mov edx, dword [ebp + 0x540]
mov eax, dword [ecx + 0x44]
xor eax, dword [edx + 0x44]
test al, 1
je 0x49b9aa
push dword [ecx + 0x40]
call fcn.0049ea50
add esp, 4
cmp eax, dword [edx + 0x40]
jne 0x49bf4b
cmp byte [edi + 0x7e1], 0
je 0x49bf4b
mov al, byte [ebp + 0x506]
cmp al, byte [edi + 0x506]
jne 0x49bf4b
mov al, byte [ebp + 0x507]
cmp al, byte [edi + 0x507]
jne 0x49bf4b
test al, al
je 0x49bace
mov eax, dword [ebp + 0x338]
cmp eax, dword [edi + 0x338]
jne 0x49bf4b
mov eax, dword [ebp + 0x334]
cmp eax, dword [edi + 0x334]
jne 0x49bf4b
push dword [edi + 0x32c]
push dword [ebp + 0x32c]
call fcn.004a4cb0
add esp, 8
test eax, eax
je 0x49bf4b
mov edx, dword [ebp + 0x33c]
xor ecx, ecx
mov esi, dword [edi + 0x33c]
test edx, edx
sete cl
xor eax, eax
test esi, esi
sete al
cmp ecx, eax
jne 0x49bf47
test edx, edx
je 0x49ba6d
test esi, esi
je 0x49ba6d
mov al, byte [edx]
cmp al, byte [esi]
jne 0x49ba60
test al, al
je 0x49ba5c
mov al, byte [edx + 1]
cmp al, byte [esi + 1]
jne 0x49ba60
add edx, 2
add esi, 2
test al, al
jne 0x49ba40
xor eax, eax
jmp 0x49ba65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x49bf47
mov edx, dword [ebp + 0x340]
xor ecx, ecx
mov esi, dword [edi + 0x340]
test edx, edx
sete cl
xor eax, eax
test esi, esi
sete al
cmp ecx, eax
jne 0x49bf47
test edx, edx
je 0x49baca
test esi, esi
je 0x49baca
mov al, byte [edx]
cmp al, byte [esi]
jne 0x49bab7
test al, al
je 0x49bab3
mov al, byte [edx + 1]
cmp al, byte [esi + 1]
jne 0x49bab7
add edx, 2
add esi, 2
test al, al
jne 0x49ba97
xor eax, eax
jmp 0x49babc
sbb eax, eax
or eax, 1
mov esi, dword [esp + 0x14]
test eax, eax
jne 0x49bf4b
jmp 0x49bace
mov esi, dword [esp + 0x14]
mov al, byte [ebp + 0x503]
cmp al, byte [edi + 0x503]
jne 0x49bf4b
mov al, byte [ebp + 0x504]
cmp al, byte [edi + 0x504]
jne 0x49bf4b
cmp byte [ebp + 0x506], 0
je 0x49bbb8
mov eax, dword [ebp + 0x358]
cmp eax, dword [edi + 0x358]
jne 0x49bf4b
mov eax, dword [ebp + 0x354]
cmp eax, dword [edi + 0x354]
jne 0x49bf4b
push dword [edi + 0x34c]
push dword [ebp + 0x34c]
call fcn.004a4cb0
add esp, 8
test eax, eax
je 0x49bf4b
mov al, byte [ebp + 0x50f]
cmp al, byte [edi + 0x50f]
jne 0x49bf4b
cmp dword [ebp + 0x358], 2
jne 0x49bbb8
mov eax, dword [ebp + 0x540]
test byte [eax + 0x44], 1
je 0x49bb8d
lea eax, [edi + 0x4d0]
push eax
lea eax, [ebp + 0x4d0]
push eax
call fcn.0049aaf0
add esp, 8
test al, al
je 0x49bf4b
cmp dword [edi + 0x480], 2
jmp 0x49bbb2
lea eax, [edi + 0x4a4]
push eax
lea eax, [ebp + 0x4a4]
push eax
call fcn.0049aaf0
add esp, 8
test al, al
je 0x49bf4b
cmp dword [edi + 0x460], 2
jne 0x49bf4b
mov cl, byte [esp + 0x30]
mov eax, dword [edi]
test cl, cl
jne 0x49bbcc
test eax, eax
jne 0x49bf4f
jmp 0x49bbdf
test eax, eax
je 0x49bbdf
mov ecx, dword [ebp]
mov eax, dword [eax + 0x78]
cmp eax, dword [ecx + 0x78]
jne 0x49bf4b
mov ecx, dword [ebp + 0x7c4]
test ecx, ecx
jne 0x49bbf2
cmp word [ebp + 0x7c8], cx
je 0x49bc5d
mov ax, word [edi + 0x7c8]
cmp ax, word [ebp + 0x7c8]
jne 0x49bf4b
mov eax, dword [edi + 0x7cc]
cmp eax, dword [ebp + 0x7cc]
jne 0x49bf4b
test ecx, ecx
je 0x49bc5d
mov eax, dword [edi + 0x7c4]
test eax, eax
je 0x49bf4b
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x49bc50
test dl, dl
je 0x49bc4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x49bc50
add eax, 2
add ecx, 2
test dl, dl
jne 0x49bc30
xor eax, eax
jmp 0x49bc55
sbb eax, eax
or eax, 1
test eax, eax
jne 0x49bf4b
mov esi, dword [ebp + 0x540]
mov ebx, dword [esi + 0x44]
test bl, bl
js 0x49bcdd
mov ecx, dword [edi + 0x3d8]
mov eax, dword [ebp + 0x3d8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x49bc96
test dl, dl
je 0x49bc92
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x49bc96
add eax, 2
add ecx, 2
test dl, dl
jne 0x49bc76
xor eax, eax
jmp 0x49bc9b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x49bf43
mov ecx, dword [edi + 0x3dc]
mov eax, dword [ebp + 0x3dc]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x49bcd0
test dl, dl
je 0x49bccc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x49bcd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x49bcb0
xor eax, eax
jmp 0x49bcd5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x49bf43
cmp byte [ebp + 0x506], 0
je 0x49bcf8
test bl, 1
jne 0x49bcf8
cmp byte [ebp + 0x50f], 0
je 0x49bde6
mov eax, dword [edi + 0x540]
push dword [eax]
push dword [esi]
call fcn.004a4ce0
add esp, 8
test eax, eax
jne 0x49bd3b
mov eax, dword [edi + 0x540]
push dword [eax + 0x40]
call fcn.0049ea50
mov ecx, dword [ebp + 0x540]
add esp, 4
cmp eax, dword [ecx + 0x40]
jne 0x49bf43
cmp byte [edi + 0x7e1], 0
je 0x49bf43
cmp byte [ebp + 0x503], 0
je 0x49bd60
push dword [edi + 0x31c]
push dword [ebp + 0x31c]
call fcn.004a4ce0
add esp, 8
test eax, eax
je 0x49bf43
cmp byte [ebp + 0x504], 0
je 0x49bd7b
mov eax, dword [ebp + 0x36c]
cmp eax, dword [edi + 0x36c]
jne 0x49bf43
push dword [edi + 0x304]
push dword [ebp + 0x304]
call fcn.004a4ce0
add esp, 8
test eax, eax
je 0x49bf43
mov eax, dword [ebp + 0x368]
cmp eax, dword [edi + 0x368]
jne 0x49bf43
mov eax, dword [ebp + 0x540]
test byte [eax + 0x44], 1
je 0x49bde6
lea eax, [edi + 0x4a4]
push eax
lea eax, [ebp + 0x4a4]
push eax
call fcn.0049aaf0
add esp, 8
test al, al
je 0x49bf43
cmp dword [edi + 0x460], 2
je 0x49bde6
mov byte [esp + 0x12], 1
jmp 0x49bf43
mov bh, byte [esp + 0x13]
test bh, bh
je 0x49be80
mov ecx, dword [edi + 0x3d8]
mov eax, dword [ebp + 0x3d8]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x49be20
test dl, dl
je 0x49be1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x49be20
add eax, 2
add ecx, 2
test dl, dl
jne 0x49be00
xor eax, eax
jmp 0x49be25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x49be5e
mov ecx, dword [edi + 0x3dc]
mov eax, dword [ebp + 0x3dc]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x49be55
test dl, dl
je 0x49be51
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x49be55
add eax, 2
add ecx, 2
test dl, dl
jne 0x49be35
xor eax, eax
jmp 0x49be5a
sbb eax, eax
or eax, 1
test eax, eax
je 0x49be8d
cmp dword [edi + 0x5e4], 0
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x14]
mov cl, byte [esp + 0x30]
jne 0x49bf4f
mov dword [esp + 0x18], edi
jmp 0x49bf4f
cmp dword [edi + 0x5e4], 0
jne 0x49bf43
mov al, byte [esp + 0x11]
test al, al
je 0x49bf59
mov eax, dword [edi + 0x35c]
test eax, eax
je 0x49bf43
mov edx, dword [edi + 0x360]
test edx, edx
je 0x49bf43
mov ecx, dword [ebp + 0x35c]
nop dword [eax + eax]
mov bl, byte [ecx]
cmp bl, byte [eax]
jne 0x49bee0
test bl, bl
je 0x49bedc
mov bl, byte [ecx + 1]
cmp bl, byte [eax + 1]
jne 0x49bee0
add ecx, 2
add eax, 2
test bl, bl
jne 0x49bec0
xor eax, eax
jmp 0x49bee5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x49bf43
mov eax, dword [ebp + 0x360]
nop
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x49bf10
test cl, cl
je 0x49bf0c
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x49bf10
add eax, 2
add edx, 2
test cl, cl
jne 0x49bef0
xor eax, eax
jmp 0x49bf15
sbb eax, eax
or eax, 1
test eax, eax
jne 0x49bf43
mov al, byte [esp + 0x11]
test bh, bh
jne 0x49bf25
test al, al
je 0x49bf64
mov dword [esp + 0x18], edi
test bh, bh
je 0x49bf36
cmp dword [edi + 0x5e4], 0
jne 0x49bf87
test al, al
je 0x49bf43
cmp dword [edi + 0x5e8], 0
jne 0x49bf87
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x14]
mov cl, byte [esp + 0x30]
test esi, esi
jne 0x49b888
jmp 0x49bf92
cmp dword [edi + 0x5e8], 0
jne 0x49bf43
jmp 0x49bf1d
mov al, byte [esp + 0x30]
mov ebx, dword [esp + 0x2c]
test al, al
je 0x49bf96
cmp dword [esp + 0x1c], 0
je 0x49bf96
push str.Multiplexed_connection_found__n
push ebx
call fcn.004a0980
add esp, 8
jmp 0x49bf96
mov eax, dword [esp + 0x38]
mov ebx, dword [esp + 0x2c]
mov byte [eax], 1
mov edi, dword [esp + 0x18]
test edi, edi
je 0x49bfb5
push ebx
mov dword [edi], ebx
call fcn.00499c30
mov eax, dword [esp + 0x38]
add esp, 4
mov dword [eax], edi
mov al, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret
push ebx
call fcn.00499c30
add esp, 4
cmp byte [esp + 0x12], 0
je 0x49bfe3
cmp byte [ebx + 0xb25], 0
je 0x49bfe3
push str.Found_pending_candidate_for_reuse_and_CURLOPT_PIPEWAIT_is_set_n
push ebx
call fcn.004a0980
mov eax, dword [esp + 0x44]
add esp, 8
mov byte [eax], 1
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x18
ret