Function at 0x436770
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 0x4367ca
cmp byte [ebp + 0x50d], 0
je 0x4367a6
cmp byte [ebp + 0x500], 0
jne 0x4367ca
mov ebx, dword [esp + 0x2c]
push dword [ebx + 0x78]
call fcn.0042d010
add esp, 4
test al, al
je 0x4367ce
cmp dword [ebx + 0x844], 3
mov eax, 2
cmovge esi, eax
jmp 0x4367ce
mov ebx, dword [esp + 0x2c]
test esi, esi
setne al
test byte [ebx + 0xd70], 0x28
mov byte [esp + 0x30], al
je 0x4367f0
mov eax, dword [ebp + 0x540]
test byte [eax + 0x40], 3
je 0x4367f0
mov al, 1
jmp 0x4367f2
xor al, al
cmp byte [ebp + 0x509], 0
mov byte [esp + 0x13], al
je 0x43681b
test byte [ebx + 0xd80], 0x28
je 0x43681b
mov eax, dword [ebp + 0x540]
test byte [eax + 0x40], 3
je 0x43681b
mov byte [esp + 0x11], 1
jmp 0x436821
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.00434780
mov edi, eax
add esp, 0xc
mov dword [esp + 0x24], edi
test edi, edi
je 0x437045
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.0043ba20
add esp, 0x14
test esi, esi
je 0x436909
mov eax, dword [edi]
test eax, eax
jne 0x4368c6
cmp byte [ebx + 0xb25], al
je 0x4368b0
push str.Server_doesnt_support_multiplex_yet__wait_n
push ebx
call fcn.0043ba20
mov eax, dword [esp + 0x44]
push ebx
mov byte [eax], 1
call fcn.00434cc0
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.0043ba20
add esp, 8
xor al, al
mov byte [esp + 0x30], al
mov eax, dword [edi]
cmp eax, 2
jne 0x4368ee
push dword [ebx + 0x78]
call fcn.0042d010
add esp, 4
test al, al
jne 0x4368ee
push str.Could_multiplex__but_not_asked_to__n
push ebx
call fcn.0043ba20
add esp, 8
xor al, al
mov byte [esp + 0x30], al
cmp dword [edi], 0xffffffff
jne 0x436909
push str.Can_not_multiplex__even_if_we_wanted_to__n
push ebx
call fcn.0043ba20
add esp, 8
xor cl, cl
mov byte [esp + 0x30], cl
jmp 0x43690d
mov cl, byte [esp + 0x30]
mov esi, dword [edi + 8]
test esi, esi
je 0x437045
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 0x436fdf
cmp byte [edi + 0x500], al
jne 0x436fdf
mov edx, dword [esp + 0x24]
cmp dword [edx], 2
jne 0x436952
mov eax, dword [edi + 0x5d4]
mov dword [esp + 0x1c], eax
test cl, cl
jne 0x4369a6
test eax, eax
jne 0x436fdf
cmp byte [edi + 0x2c4], al
jne 0x43697f
push dword [edi + 0x2b0]
push str.Connection__ld_is_still_name_resolving__cant_reuse_n
push ebx
call fcn.0043ba20
add esp, 0xc
jmp 0x436fdb
cmp dword [edi + 0x420], 0xffffffff
jne 0x4369a6
push dword [edi + 0x2b0]
mov byte [esp + 0x16], 1
push str.Connection__ld_isnt_open_enough__cant_reuse_n
push ebx
call fcn.0043ba20
add esp, 0xc
jmp 0x436fdb
mov ecx, dword [ebp + 0x7dc]
mov eax, dword [edi + 0x7dc]
test ecx, ecx
je 0x4369fb
test eax, eax
je 0x436fdb
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4369e0
test dl, dl
je 0x4369dc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4369e0
add ecx, 2
add eax, 2
test dl, dl
jne 0x4369c0
xor eax, eax
jmp 0x4369e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436fdb
mov al, byte [ebp + 0x7e0]
cmp al, byte [edi + 0x7e0]
jmp 0x4369fd
test eax, eax
jne 0x436fdb
mov ecx, dword [edi + 0x540]
mov edx, dword [ebp + 0x540]
mov eax, dword [ecx + 0x44]
xor eax, dword [edx + 0x44]
test al, 1
je 0x436a3a
push dword [ecx + 0x40]
call fcn.00439af0
add esp, 4
cmp eax, dword [edx + 0x40]
jne 0x436fdb
cmp byte [edi + 0x7e1], 0
je 0x436fdb
mov al, byte [ebp + 0x506]
cmp al, byte [edi + 0x506]
jne 0x436fdb
mov al, byte [ebp + 0x507]
cmp al, byte [edi + 0x507]
jne 0x436fdb
test al, al
je 0x436b5e
mov eax, dword [ebp + 0x338]
cmp eax, dword [edi + 0x338]
jne 0x436fdb
mov eax, dword [ebp + 0x334]
cmp eax, dword [edi + 0x334]
jne 0x436fdb
push dword [edi + 0x32c]
push dword [ebp + 0x32c]
call fcn.0043fd70
add esp, 8
test eax, eax
je 0x436fdb
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 0x436fd7
test edx, edx
je 0x436afd
test esi, esi
je 0x436afd
mov al, byte [edx]
cmp al, byte [esi]
jne 0x436af0
test al, al
je 0x436aec
mov al, byte [edx + 1]
cmp al, byte [esi + 1]
jne 0x436af0
add edx, 2
add esi, 2
test al, al
jne 0x436ad0
xor eax, eax
jmp 0x436af5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436fd7
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 0x436fd7
test edx, edx
je 0x436b5a
test esi, esi
je 0x436b5a
mov al, byte [edx]
cmp al, byte [esi]
jne 0x436b47
test al, al
je 0x436b43
mov al, byte [edx + 1]
cmp al, byte [esi + 1]
jne 0x436b47
add edx, 2
add esi, 2
test al, al
jne 0x436b27
xor eax, eax
jmp 0x436b4c
sbb eax, eax
or eax, 1
mov esi, dword [esp + 0x14]
test eax, eax
jne 0x436fdb
jmp 0x436b5e
mov esi, dword [esp + 0x14]
mov al, byte [ebp + 0x503]
cmp al, byte [edi + 0x503]
jne 0x436fdb
mov al, byte [ebp + 0x504]
cmp al, byte [edi + 0x504]
jne 0x436fdb
cmp byte [ebp + 0x506], 0
je 0x436c48
mov eax, dword [ebp + 0x358]
cmp eax, dword [edi + 0x358]
jne 0x436fdb
mov eax, dword [ebp + 0x354]
cmp eax, dword [edi + 0x354]
jne 0x436fdb
push dword [edi + 0x34c]
push dword [ebp + 0x34c]
call fcn.0043fd70
add esp, 8
test eax, eax
je 0x436fdb
mov al, byte [ebp + 0x50f]
cmp al, byte [edi + 0x50f]
jne 0x436fdb
cmp dword [ebp + 0x358], 2
jne 0x436c48
mov eax, dword [ebp + 0x540]
test byte [eax + 0x44], 1
je 0x436c1d
lea eax, [edi + 0x4d0]
push eax
lea eax, [ebp + 0x4d0]
push eax
call fcn.00435b80
add esp, 8
test al, al
je 0x436fdb
cmp dword [edi + 0x480], 2
jmp 0x436c42
lea eax, [edi + 0x4a4]
push eax
lea eax, [ebp + 0x4a4]
push eax
call fcn.00435b80
add esp, 8
test al, al
je 0x436fdb
cmp dword [edi + 0x460], 2
jne 0x436fdb
mov cl, byte [esp + 0x30]
mov eax, dword [edi]
test cl, cl
jne 0x436c5c
test eax, eax
jne 0x436fdf
jmp 0x436c6f
test eax, eax
je 0x436c6f
mov ecx, dword [ebp]
mov eax, dword [eax + 0x78]
cmp eax, dword [ecx + 0x78]
jne 0x436fdb
mov ecx, dword [ebp + 0x7c4]
test ecx, ecx
jne 0x436c82
cmp word [ebp + 0x7c8], cx
je 0x436ced
mov ax, word [edi + 0x7c8]
cmp ax, word [ebp + 0x7c8]
jne 0x436fdb
mov eax, dword [edi + 0x7cc]
cmp eax, dword [ebp + 0x7cc]
jne 0x436fdb
test ecx, ecx
je 0x436ced
mov eax, dword [edi + 0x7c4]
test eax, eax
je 0x436fdb
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436ce0
test dl, dl
je 0x436cdc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436ce0
add eax, 2
add ecx, 2
test dl, dl
jne 0x436cc0
xor eax, eax
jmp 0x436ce5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436fdb
mov esi, dword [ebp + 0x540]
mov ebx, dword [esi + 0x44]
test bl, bl
js 0x436d6d
mov ecx, dword [edi + 0x3d8]
mov eax, dword [ebp + 0x3d8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436d26
test dl, dl
je 0x436d22
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436d26
add eax, 2
add ecx, 2
test dl, dl
jne 0x436d06
xor eax, eax
jmp 0x436d2b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436fd3
mov ecx, dword [edi + 0x3dc]
mov eax, dword [ebp + 0x3dc]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436d60
test dl, dl
je 0x436d5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436d60
add eax, 2
add ecx, 2
test dl, dl
jne 0x436d40
xor eax, eax
jmp 0x436d65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436fd3
cmp byte [ebp + 0x506], 0
je 0x436d88
test bl, 1
jne 0x436d88
cmp byte [ebp + 0x50f], 0
je 0x436e76
mov eax, dword [edi + 0x540]
push dword [eax]
push dword [esi]
call fcn.0043fda0
add esp, 8
test eax, eax
jne 0x436dcb
mov eax, dword [edi + 0x540]
push dword [eax + 0x40]
call fcn.00439af0
mov ecx, dword [ebp + 0x540]
add esp, 4
cmp eax, dword [ecx + 0x40]
jne 0x436fd3
cmp byte [edi + 0x7e1], 0
je 0x436fd3
cmp byte [ebp + 0x503], 0
je 0x436df0
push dword [edi + 0x31c]
push dword [ebp + 0x31c]
call fcn.0043fda0
add esp, 8
test eax, eax
je 0x436fd3
cmp byte [ebp + 0x504], 0
je 0x436e0b
mov eax, dword [ebp + 0x36c]
cmp eax, dword [edi + 0x36c]
jne 0x436fd3
push dword [edi + 0x304]
push dword [ebp + 0x304]
call fcn.0043fda0
add esp, 8
test eax, eax
je 0x436fd3
mov eax, dword [ebp + 0x368]
cmp eax, dword [edi + 0x368]
jne 0x436fd3
mov eax, dword [ebp + 0x540]
test byte [eax + 0x44], 1
je 0x436e76
lea eax, [edi + 0x4a4]
push eax
lea eax, [ebp + 0x4a4]
push eax
call fcn.00435b80
add esp, 8
test al, al
je 0x436fd3
cmp dword [edi + 0x460], 2
je 0x436e76
mov byte [esp + 0x12], 1
jmp 0x436fd3
mov bh, byte [esp + 0x13]
test bh, bh
je 0x436f10
mov ecx, dword [edi + 0x3d8]
mov eax, dword [ebp + 0x3d8]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436eb0
test dl, dl
je 0x436eac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436eb0
add eax, 2
add ecx, 2
test dl, dl
jne 0x436e90
xor eax, eax
jmp 0x436eb5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436eee
mov ecx, dword [edi + 0x3dc]
mov eax, dword [ebp + 0x3dc]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x436ee5
test dl, dl
je 0x436ee1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x436ee5
add eax, 2
add ecx, 2
test dl, dl
jne 0x436ec5
xor eax, eax
jmp 0x436eea
sbb eax, eax
or eax, 1
test eax, eax
je 0x436f1d
cmp dword [edi + 0x5e4], 0
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x14]
mov cl, byte [esp + 0x30]
jne 0x436fdf
mov dword [esp + 0x18], edi
jmp 0x436fdf
cmp dword [edi + 0x5e4], 0
jne 0x436fd3
mov al, byte [esp + 0x11]
test al, al
je 0x436fe9
mov eax, dword [edi + 0x35c]
test eax, eax
je 0x436fd3
mov edx, dword [edi + 0x360]
test edx, edx
je 0x436fd3
mov ecx, dword [ebp + 0x35c]
nop dword [eax + eax]
mov bl, byte [ecx]
cmp bl, byte [eax]
jne 0x436f70
test bl, bl
je 0x436f6c
mov bl, byte [ecx + 1]
cmp bl, byte [eax + 1]
jne 0x436f70
add ecx, 2
add eax, 2
test bl, bl
jne 0x436f50
xor eax, eax
jmp 0x436f75
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436fd3
mov eax, dword [ebp + 0x360]
nop
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x436fa0
test cl, cl
je 0x436f9c
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x436fa0
add eax, 2
add edx, 2
test cl, cl
jne 0x436f80
xor eax, eax
jmp 0x436fa5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x436fd3
mov al, byte [esp + 0x11]
test bh, bh
jne 0x436fb5
test al, al
je 0x436ff4
mov dword [esp + 0x18], edi
test bh, bh
je 0x436fc6
cmp dword [edi + 0x5e4], 0
jne 0x437017
test al, al
je 0x436fd3
cmp dword [edi + 0x5e8], 0
jne 0x437017
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x14]
mov cl, byte [esp + 0x30]
test esi, esi
jne 0x436918
jmp 0x437022
cmp dword [edi + 0x5e8], 0
jne 0x436fd3
jmp 0x436fad
mov al, byte [esp + 0x30]
mov ebx, dword [esp + 0x2c]
test al, al
je 0x437026
cmp dword [esp + 0x1c], 0
je 0x437026
push str.Multiplexed_connection_found__n
push ebx
call fcn.0043ba20
add esp, 8
jmp 0x437026
mov eax, dword [esp + 0x38]
mov ebx, dword [esp + 0x2c]
mov byte [eax], 1
mov edi, dword [esp + 0x18]
test edi, edi
je 0x437045
push ebx
mov dword [edi], ebx
call fcn.00434cc0
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.00434cc0
add esp, 4
cmp byte [esp + 0x12], 0
je 0x437073
cmp byte [ebx + 0xb25], 0
je 0x437073
push str.Found_pending_candidate_for_reuse_and_CURLOPT_PIPEWAIT_is_set_n
push ebx
call fcn.0043ba20
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