Function at 0x471dc0
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 + 0x548]
xor esi, esi
mov dword [esp + 0x18], edi
test byte [eax + 0x40], 3
je 0x471e1a
cmp byte [ebp + 0x515], 0
je 0x471df6
cmp byte [ebp + 0x508], 0
jne 0x471e1a
mov ebx, dword [esp + 0x2c]
push dword [ebx + 0x78]
call fcn.00468a50
add esp, 4
test al, al
je 0x471e1e
cmp dword [ebx + 0x844], 3
mov eax, 2
cmovge esi, eax
jmp 0x471e1e
mov ebx, dword [esp + 0x2c]
test esi, esi
setne al
test byte [ebx + 0xd70], 0x28
mov byte [esp + 0x30], al
je 0x471e40
mov eax, dword [ebp + 0x548]
test byte [eax + 0x40], 3
je 0x471e40
mov al, 1
jmp 0x471e42
xor al, al
cmp byte [ebp + 0x511], 0
mov byte [esp + 0x13], al
je 0x471e6b
test byte [ebx + 0xd80], 0x28
je 0x471e6b
mov eax, dword [ebp + 0x548]
test byte [eax + 0x40], 3
je 0x471e6b
mov byte [esp + 0x11], 1
jmp 0x471e71
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.0046ff90
mov edi, eax
add esp, 0xc
mov dword [esp + 0x24], edi
test edi, edi
je 0x472692
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.00476e40
add esp, 0x14
test esi, esi
je 0x471f57
cmp dword [edi], 0
jne 0x471f14
cmp byte [ebx + 0xb25], 0
je 0x471f00
push str.Server_doesnt_support_multiplex_yet__wait_n
push ebx
call fcn.00476e40
mov eax, dword [esp + 0x44]
push ebx
mov byte [eax], 1
call fcn.004704d0
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.00476e40
add esp, 8
xor al, al
mov byte [esp + 0x30], al
cmp dword [edi], 2
jne 0x471f3c
push dword [ebx + 0x78]
call fcn.00468a50
add esp, 4
test al, al
jne 0x471f3c
push str.Could_multiplex__but_not_asked_to__n
push ebx
call fcn.00476e40
add esp, 8
xor al, al
mov byte [esp + 0x30], al
cmp dword [edi], 0xffffffff
jne 0x471f57
push str.Can_not_multiplex__even_if_we_wanted_to__n
push ebx
call fcn.00476e40
add esp, 8
xor cl, cl
mov byte [esp + 0x30], cl
jmp 0x471f5b
mov cl, byte [esp + 0x30]
mov esi, dword [edi + 8]
test esi, esi
je 0x472692
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 + 0x526], al
jne 0x4724b9
cmp byte [edi + 0x508], al
jne 0x4724b9
mov edx, dword [esp + 0x24]
cmp dword [edx], 2
jne 0x471fa0
mov eax, dword [edi + 0x5dc]
mov dword [esp + 0x1c], eax
test cl, cl
jne 0x471ff4
test eax, eax
jne 0x4724b9
cmp byte [edi + 0x2c4], al
jne 0x471fcd
push dword [edi + 0x2b0]
push str.Connection__ld_is_still_name_resolving__cant_reuse_n
push ebx
call fcn.00476e40
add esp, 0xc
jmp 0x4724b5
cmp dword [edi + 0x420], 0xffffffff
jne 0x471ff4
push dword [edi + 0x2b0]
mov byte [esp + 0x16], 1
push str.Connection__ld_isnt_open_enough__cant_reuse_n
push ebx
call fcn.00476e40
add esp, 0xc
jmp 0x4724b5
mov ecx, dword [ebp + 0x7e8]
mov eax, dword [edi + 0x7e8]
test ecx, ecx
je 0x47204b
test eax, eax
je 0x4724b5
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x472030
test dl, dl
je 0x47202c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x472030
add ecx, 2
add eax, 2
test dl, dl
jne 0x472010
xor eax, eax
jmp 0x472035
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4724b5
mov al, byte [ebp + 0x7ec]
cmp al, byte [edi + 0x7ec]
jmp 0x47204d
test eax, eax
jne 0x4724b5
mov ecx, dword [edi + 0x548]
mov edx, dword [ebp + 0x548]
mov eax, dword [ecx + 0x44]
xor eax, dword [edx + 0x44]
test al, 1
je 0x47208a
push dword [ecx + 0x40]
call fcn.00474f00
add esp, 4
cmp eax, dword [edx + 0x40]
jne 0x4724b5
cmp byte [edi + 0x7ed], 0
je 0x4724b5
mov al, byte [ebp + 0x50e]
cmp al, byte [edi + 0x50e]
jne 0x4724b5
mov al, byte [ebp + 0x50f]
cmp al, byte [edi + 0x50f]
jne 0x4724b5
test al, al
je 0x4721ae
mov eax, dword [ebp + 0x338]
cmp eax, dword [edi + 0x338]
jne 0x4724b5
mov eax, dword [ebp + 0x334]
cmp eax, dword [edi + 0x334]
jne 0x4724b5
push dword [edi + 0x32c]
push dword [ebp + 0x32c]
call fcn.0047b1d0
add esp, 8
test eax, eax
je 0x4724b5
mov esi, dword [edi + 0x33c]
xor ecx, ecx
mov edx, dword [ebp + 0x33c]
test esi, esi
sete cl
xor eax, eax
test edx, edx
sete al
cmp eax, ecx
jne 0x4724b1
test edx, edx
je 0x47214d
test esi, esi
je 0x47214d
mov al, byte [edx]
cmp al, byte [esi]
jne 0x472140
test al, al
je 0x47213c
mov al, byte [edx + 1]
cmp al, byte [esi + 1]
jne 0x472140
add edx, 2
add esi, 2
test al, al
jne 0x472120
xor eax, eax
jmp 0x472145
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4724b1
mov esi, dword [edi + 0x340]
xor ecx, ecx
mov edx, dword [ebp + 0x340]
test esi, esi
sete cl
xor eax, eax
test edx, edx
sete al
cmp eax, ecx
jne 0x4724b1
test edx, edx
je 0x4721aa
test esi, esi
je 0x4721aa
mov al, byte [edx]
cmp al, byte [esi]
jne 0x472197
test al, al
je 0x472193
mov al, byte [edx + 1]
cmp al, byte [esi + 1]
jne 0x472197
add edx, 2
add esi, 2
test al, al
jne 0x472177
xor eax, eax
jmp 0x47219c
sbb eax, eax
or eax, 1
mov esi, dword [esp + 0x14]
test eax, eax
jne 0x4724b5
jmp 0x4721ae
mov esi, dword [esp + 0x14]
mov al, byte [ebp + 0x50b]
cmp al, byte [edi + 0x50b]
jne 0x4724b5
mov al, byte [ebp + 0x50c]
cmp al, byte [edi + 0x50c]
jne 0x4724b5
cmp byte [ebp + 0x50e], 0
je 0x472298
mov eax, dword [ebp + 0x358]
cmp eax, dword [edi + 0x358]
jne 0x4724b5
mov eax, dword [ebp + 0x354]
cmp eax, dword [edi + 0x354]
jne 0x4724b5
push dword [edi + 0x34c]
push dword [ebp + 0x34c]
call fcn.0047b1d0
add esp, 8
test eax, eax
je 0x4724b5
mov al, byte [ebp + 0x517]
cmp al, byte [edi + 0x517]
jne 0x4724b5
cmp dword [ebp + 0x358], 2
jne 0x472298
mov eax, dword [ebp + 0x548]
test byte [eax + 0x44], 1
je 0x47226d
lea eax, [edi + 0x4d8]
push eax
lea eax, [ebp + 0x4d8]
push eax
call fcn.00471330
add esp, 8
test al, al
je 0x4724b5
cmp dword [edi + 0x488], 2
jmp 0x472292
lea eax, [edi + 0x4ac]
push eax
lea eax, [ebp + 0x4ac]
push eax
call fcn.00471330
add esp, 8
test al, al
je 0x4724b5
cmp dword [edi + 0x468], 2
jne 0x4724b5
mov cl, byte [esp + 0x30]
test cl, cl
jne 0x4722ab
cmp dword [edi], 0
jne 0x4724b9
jmp 0x4722c0
mov eax, dword [edi]
test eax, eax
je 0x4722c0
mov ecx, dword [ebp]
mov eax, dword [eax + 0x78]
cmp eax, dword [ecx + 0x78]
jne 0x4724b5
mov ecx, dword [ebp + 0x7cc]
test ecx, ecx
jne 0x4722d3
cmp word [ebp + 0x7d0], cx
je 0x47233d
mov ax, word [edi + 0x7d0]
cmp ax, word [ebp + 0x7d0]
jne 0x4724b5
mov eax, dword [edi + 0x7d4]
cmp eax, dword [ebp + 0x7d4]
jne 0x4724b5
test ecx, ecx
je 0x47233d
mov eax, dword [edi + 0x7cc]
test eax, eax
je 0x4724b5
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x472330
test dl, dl
je 0x47232c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x472330
add eax, 2
add ecx, 2
test dl, dl
jne 0x472310
xor eax, eax
jmp 0x472335
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4724b5
mov esi, dword [ebp + 0x548]
mov ebx, dword [esi + 0x44]
test bl, bl
js 0x4723bd
mov ecx, dword [edi + 0x3d8]
mov eax, dword [ebp + 0x3d8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x472376
test dl, dl
je 0x472372
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x472376
add eax, 2
add ecx, 2
test dl, dl
jne 0x472356
xor eax, eax
jmp 0x47237b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4724ad
mov ecx, dword [edi + 0x3dc]
mov eax, dword [ebp + 0x3dc]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4723b0
test dl, dl
je 0x4723ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4723b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x472390
xor eax, eax
jmp 0x4723b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4724ad
cmp byte [ebp + 0x50e], 0
je 0x4723d8
test bl, 1
jne 0x4723d8
cmp byte [ebp + 0x517], 0
je 0x4724c6
mov eax, dword [edi + 0x548]
push dword [eax]
push dword [esi]
call fcn.0047b200
add esp, 8
test eax, eax
jne 0x47241b
mov eax, dword [edi + 0x548]
push dword [eax + 0x40]
call fcn.00474f00
mov ecx, dword [ebp + 0x548]
add esp, 4
cmp eax, dword [ecx + 0x40]
jne 0x4724ad
cmp byte [edi + 0x7ed], 0
je 0x4724ad
cmp byte [ebp + 0x50b], 0
je 0x47243c
push dword [edi + 0x31c]
push dword [ebp + 0x31c]
call fcn.0047b200
add esp, 8
test eax, eax
je 0x4724ad
cmp byte [ebp + 0x50c], 0
je 0x472453
mov eax, dword [ebp + 0x36c]
cmp eax, dword [edi + 0x36c]
jne 0x4724ad
push dword [edi + 0x304]
push dword [ebp + 0x304]
call fcn.0047b200
add esp, 8
test eax, eax
je 0x4724ad
mov eax, dword [ebp + 0x368]
cmp eax, dword [edi + 0x368]
jne 0x4724ad
mov eax, dword [ebp + 0x548]
test byte [eax + 0x44], 1
je 0x4724c6
lea eax, [edi + 0x4ac]
push eax
lea eax, [ebp + 0x4ac]
push eax
call fcn.00471330
add esp, 8
test al, al
je 0x4724ad
cmp dword [edi + 0x468], 2
je 0x4724c6
mov byte [esp + 0x12], 1
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x14]
mov cl, byte [esp + 0x30]
test esi, esi
jne 0x471f66
jmp 0x47264c
mov bh, byte [esp + 0x13]
test bh, bh
je 0x472560
mov ecx, dword [edi + 0x3d8]
mov eax, dword [ebp + 0x3d8]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x472500
test dl, dl
je 0x4724fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x472500
add eax, 2
add ecx, 2
test dl, dl
jne 0x4724e0
xor eax, eax
jmp 0x472505
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47253e
mov ecx, dword [edi + 0x3dc]
mov eax, dword [ebp + 0x3dc]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x472535
test dl, dl
je 0x472531
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x472535
add eax, 2
add ecx, 2
test dl, dl
jne 0x472515
xor eax, eax
jmp 0x47253a
sbb eax, eax
or eax, 1
test eax, eax
je 0x47256d
cmp dword [edi + 0x5ec], 0
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x14]
mov cl, byte [esp + 0x30]
jne 0x4724b9
mov dword [esp + 0x18], edi
jmp 0x4724b9
cmp dword [edi + 0x5ec], 0
jne 0x4724ad
mov al, byte [esp + 0x11]
test al, al
je 0x472606
mov eax, dword [edi + 0x35c]
test eax, eax
je 0x4724ad
mov edx, dword [edi + 0x360]
test edx, edx
je 0x4724ad
mov ecx, dword [ebp + 0x35c]
nop dword [eax + eax]
mov bl, byte [ecx]
cmp bl, byte [eax]
jne 0x4725c0
test bl, bl
je 0x4725bc
mov bl, byte [ecx + 1]
cmp bl, byte [eax + 1]
jne 0x4725c0
add ecx, 2
add eax, 2
test bl, bl
jne 0x4725a0
xor eax, eax
jmp 0x4725c5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4724ad
mov eax, dword [ebp + 0x360]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4725f3
test cl, cl
je 0x4725ef
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4725f3
add eax, 2
add edx, 2
test cl, cl
jne 0x4725d3
xor eax, eax
jmp 0x4725f8
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4724ad
mov al, byte [esp + 0x11]
jmp 0x472613
cmp dword [edi + 0x5f0], 0
jne 0x4724ad
test bh, bh
jne 0x47261b
test al, al
je 0x47266f
mov dword [esp + 0x18], edi
test bh, bh
je 0x47262c
cmp dword [edi + 0x5ec], 0
jne 0x472641
test al, al
je 0x4724ad
cmp dword [edi + 0x5f0], 0
je 0x4724ad
mov eax, dword [esp + 0x38]
mov ebx, dword [esp + 0x2c]
mov byte [eax], 1
mov edi, dword [esp + 0x18]
test edi, edi
je 0x472692
push ebx
mov dword [edi], ebx
call fcn.004704d0
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
mov al, byte [esp + 0x30]
mov ebx, dword [esp + 0x2c]
test al, al
je 0x472650
cmp dword [esp + 0x1c], 0
je 0x472650
push str.Multiplexed_connection_found__n
push ebx
call fcn.00476e40
add esp, 8
jmp 0x472650
push ebx
call fcn.004704d0
add esp, 4
cmp byte [esp + 0x12], 0
je 0x4726c0
cmp byte [ebx + 0xb25], 0
je 0x4726c0
push str.Found_pending_candidate_for_reuse_and_CURLOPT_PIPEWAIT_is_set_n
push ebx
call fcn.00476e40
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