Function at 0x41dab0
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 0x41db0a
cmp byte [ebp + 0x515], 0
je 0x41dae6
cmp byte [ebp + 0x508], 0
jne 0x41db0a
mov ebx, dword [esp + 0x2c]
push dword [ebx + 0x78]
call fcn.00414730
add esp, 4
test al, al
je 0x41db0e
cmp dword [ebx + 0x844], 3
mov eax, 2
cmovge esi, eax
jmp 0x41db0e
mov ebx, dword [esp + 0x2c]
test esi, esi
setne al
test byte [ebx + 0xd70], 0x28
mov byte [esp + 0x30], al
je 0x41db30
mov eax, dword [ebp + 0x548]
test byte [eax + 0x40], 3
je 0x41db30
mov al, 1
jmp 0x41db32
xor al, al
cmp byte [ebp + 0x511], 0
mov byte [esp + 0x13], al
je 0x41db5b
test byte [ebx + 0xd80], 0x28
je 0x41db5b
mov eax, dword [ebp + 0x548]
test byte [eax + 0x40], 3
je 0x41db5b
mov byte [esp + 0x11], 1
jmp 0x41db61
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.0041bc40
mov edi, eax
add esp, 0xc
mov dword [esp + 0x24], edi
test edi, edi
je 0x41e385
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.00422b10
add esp, 0x14
test esi, esi
je 0x41dc49
mov eax, dword [edi]
test eax, eax
jne 0x41dc06
cmp byte [ebx + 0xb25], al
je 0x41dbf0
push str.Server_doesnt_support_multiplex_yet__wait_n
push ebx
call fcn.00422b10
mov eax, dword [esp + 0x44]
push ebx
mov byte [eax], 1
call fcn.0041c180
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.00422b10
add esp, 8
xor al, al
mov byte [esp + 0x30], al
mov eax, dword [edi]
cmp eax, 2
jne 0x41dc2e
push dword [ebx + 0x78]
call fcn.00414730
add esp, 4
test al, al
jne 0x41dc2e
push str.Could_multiplex__but_not_asked_to__n
push ebx
call fcn.00422b10
add esp, 8
xor al, al
mov byte [esp + 0x30], al
cmp dword [edi], 0xffffffff
jne 0x41dc49
push str.Can_not_multiplex__even_if_we_wanted_to__n
push ebx
call fcn.00422b10
add esp, 8
xor cl, cl
mov byte [esp + 0x30], cl
jmp 0x41dc4d
mov cl, byte [esp + 0x30]
mov esi, dword [edi + 8]
test esi, esi
je 0x41e385
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 0x41e31f
cmp byte [edi + 0x508], al
jne 0x41e31f
mov edx, dword [esp + 0x24]
cmp dword [edx], 2
jne 0x41dc92
mov eax, dword [edi + 0x5dc]
mov dword [esp + 0x1c], eax
test cl, cl
jne 0x41dce6
test eax, eax
jne 0x41e31f
cmp byte [edi + 0x2c4], al
jne 0x41dcbf
push dword [edi + 0x2b0]
push str.Connection__ld_is_still_name_resolving__cant_reuse_n
push ebx
call fcn.00422b10
add esp, 0xc
jmp 0x41e31b
cmp dword [edi + 0x420], 0xffffffff
jne 0x41dce6
push dword [edi + 0x2b0]
mov byte [esp + 0x16], 1
push str.Connection__ld_isnt_open_enough__cant_reuse_n
push ebx
call fcn.00422b10
add esp, 0xc
jmp 0x41e31b
mov ecx, dword [ebp + 0x7e8]
mov eax, dword [edi + 0x7e8]
test ecx, ecx
je 0x41dd3b
test eax, eax
je 0x41e31b
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x41dd20
test dl, dl
je 0x41dd1c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x41dd20
add ecx, 2
add eax, 2
test dl, dl
jne 0x41dd00
xor eax, eax
jmp 0x41dd25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e31b
mov al, byte [ebp + 0x7ec]
cmp al, byte [edi + 0x7ec]
jmp 0x41dd3d
test eax, eax
jne 0x41e31b
mov ecx, dword [edi + 0x548]
mov edx, dword [ebp + 0x548]
mov eax, dword [ecx + 0x44]
xor eax, dword [edx + 0x44]
test al, 1
je 0x41dd7a
push dword [ecx + 0x40]
call fcn.00420bd0
add esp, 4
cmp eax, dword [edx + 0x40]
jne 0x41e31b
cmp byte [edi + 0x7ed], 0
je 0x41e31b
mov al, byte [ebp + 0x50e]
cmp al, byte [edi + 0x50e]
jne 0x41e31b
mov al, byte [ebp + 0x50f]
cmp al, byte [edi + 0x50f]
jne 0x41e31b
test al, al
je 0x41de9e
mov eax, dword [ebp + 0x338]
cmp eax, dword [edi + 0x338]
jne 0x41e31b
mov eax, dword [ebp + 0x334]
cmp eax, dword [edi + 0x334]
jne 0x41e31b
push dword [edi + 0x32c]
push dword [ebp + 0x32c]
call fcn.004259e0
add esp, 8
test eax, eax
je 0x41e31b
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 0x41e317
test edx, edx
je 0x41de3d
test esi, esi
je 0x41de3d
mov al, byte [edx]
cmp al, byte [esi]
jne 0x41de30
test al, al
je 0x41de2c
mov al, byte [edx + 1]
cmp al, byte [esi + 1]
jne 0x41de30
add edx, 2
add esi, 2
test al, al
jne 0x41de10
xor eax, eax
jmp 0x41de35
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e317
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 0x41e317
test edx, edx
je 0x41de9a
test esi, esi
je 0x41de9a
mov al, byte [edx]
cmp al, byte [esi]
jne 0x41de87
test al, al
je 0x41de83
mov al, byte [edx + 1]
cmp al, byte [esi + 1]
jne 0x41de87
add edx, 2
add esi, 2
test al, al
jne 0x41de67
xor eax, eax
jmp 0x41de8c
sbb eax, eax
or eax, 1
mov esi, dword [esp + 0x14]
test eax, eax
jne 0x41e31b
jmp 0x41de9e
mov esi, dword [esp + 0x14]
mov al, byte [ebp + 0x50b]
cmp al, byte [edi + 0x50b]
jne 0x41e31b
mov al, byte [ebp + 0x50c]
cmp al, byte [edi + 0x50c]
jne 0x41e31b
cmp byte [ebp + 0x50e], 0
je 0x41df88
mov eax, dword [ebp + 0x358]
cmp eax, dword [edi + 0x358]
jne 0x41e31b
mov eax, dword [ebp + 0x354]
cmp eax, dword [edi + 0x354]
jne 0x41e31b
push dword [edi + 0x34c]
push dword [ebp + 0x34c]
call fcn.004259e0
add esp, 8
test eax, eax
je 0x41e31b
mov al, byte [ebp + 0x517]
cmp al, byte [edi + 0x517]
jne 0x41e31b
cmp dword [ebp + 0x358], 2
jne 0x41df88
mov eax, dword [ebp + 0x548]
test byte [eax + 0x44], 1
je 0x41df5d
lea eax, [edi + 0x4d8]
push eax
lea eax, [ebp + 0x4d8]
push eax
call fcn.0041d010
add esp, 8
test al, al
je 0x41e31b
cmp dword [edi + 0x488], 2
jmp 0x41df82
lea eax, [edi + 0x4ac]
push eax
lea eax, [ebp + 0x4ac]
push eax
call fcn.0041d010
add esp, 8
test al, al
je 0x41e31b
cmp dword [edi + 0x468], 2
jne 0x41e31b
mov cl, byte [esp + 0x30]
mov eax, dword [edi]
test cl, cl
jne 0x41df9c
test eax, eax
jne 0x41e31f
jmp 0x41dfaf
test eax, eax
je 0x41dfaf
mov ecx, dword [ebp]
mov eax, dword [eax + 0x78]
cmp eax, dword [ecx + 0x78]
jne 0x41e31b
mov ecx, dword [ebp + 0x7cc]
test ecx, ecx
jne 0x41dfc2
cmp word [ebp + 0x7d0], cx
je 0x41e02d
mov ax, word [edi + 0x7d0]
cmp ax, word [ebp + 0x7d0]
jne 0x41e31b
mov eax, dword [edi + 0x7d4]
cmp eax, dword [ebp + 0x7d4]
jne 0x41e31b
test ecx, ecx
je 0x41e02d
mov eax, dword [edi + 0x7cc]
test eax, eax
je 0x41e31b
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41e020
test dl, dl
je 0x41e01c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41e020
add eax, 2
add ecx, 2
test dl, dl
jne 0x41e000
xor eax, eax
jmp 0x41e025
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e31b
mov esi, dword [ebp + 0x548]
mov ebx, dword [esi + 0x44]
test bl, bl
js 0x41e0ad
mov ecx, dword [edi + 0x3d8]
mov eax, dword [ebp + 0x3d8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41e066
test dl, dl
je 0x41e062
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41e066
add eax, 2
add ecx, 2
test dl, dl
jne 0x41e046
xor eax, eax
jmp 0x41e06b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e313
mov ecx, dword [edi + 0x3dc]
mov eax, dword [ebp + 0x3dc]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41e0a0
test dl, dl
je 0x41e09c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41e0a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x41e080
xor eax, eax
jmp 0x41e0a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e313
cmp byte [ebp + 0x50e], 0
je 0x41e0c8
test bl, 1
jne 0x41e0c8
cmp byte [ebp + 0x517], 0
je 0x41e1b6
mov eax, dword [edi + 0x548]
push dword [eax]
push dword [esi]
call fcn.00425a10
add esp, 8
test eax, eax
jne 0x41e10b
mov eax, dword [edi + 0x548]
push dword [eax + 0x40]
call fcn.00420bd0
mov ecx, dword [ebp + 0x548]
add esp, 4
cmp eax, dword [ecx + 0x40]
jne 0x41e313
cmp byte [edi + 0x7ed], 0
je 0x41e313
cmp byte [ebp + 0x50b], 0
je 0x41e130
push dword [edi + 0x31c]
push dword [ebp + 0x31c]
call fcn.00425a10
add esp, 8
test eax, eax
je 0x41e313
cmp byte [ebp + 0x50c], 0
je 0x41e14b
mov eax, dword [ebp + 0x36c]
cmp eax, dword [edi + 0x36c]
jne 0x41e313
push dword [edi + 0x304]
push dword [ebp + 0x304]
call fcn.00425a10
add esp, 8
test eax, eax
je 0x41e313
mov eax, dword [ebp + 0x368]
cmp eax, dword [edi + 0x368]
jne 0x41e313
mov eax, dword [ebp + 0x548]
test byte [eax + 0x44], 1
je 0x41e1b6
lea eax, [edi + 0x4ac]
push eax
lea eax, [ebp + 0x4ac]
push eax
call fcn.0041d010
add esp, 8
test al, al
je 0x41e313
cmp dword [edi + 0x468], 2
je 0x41e1b6
mov byte [esp + 0x12], 1
jmp 0x41e313
mov bh, byte [esp + 0x13]
test bh, bh
je 0x41e250
mov ecx, dword [edi + 0x3d8]
mov eax, dword [ebp + 0x3d8]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41e1f0
test dl, dl
je 0x41e1ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41e1f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x41e1d0
xor eax, eax
jmp 0x41e1f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e22e
mov ecx, dword [edi + 0x3dc]
mov eax, dword [ebp + 0x3dc]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41e225
test dl, dl
je 0x41e221
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41e225
add eax, 2
add ecx, 2
test dl, dl
jne 0x41e205
xor eax, eax
jmp 0x41e22a
sbb eax, eax
or eax, 1
test eax, eax
je 0x41e25d
cmp dword [edi + 0x5ec], 0
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x14]
mov cl, byte [esp + 0x30]
jne 0x41e31f
mov dword [esp + 0x18], edi
jmp 0x41e31f
cmp dword [edi + 0x5ec], 0
jne 0x41e313
mov al, byte [esp + 0x11]
test al, al
je 0x41e329
mov eax, dword [edi + 0x35c]
test eax, eax
je 0x41e313
mov edx, dword [edi + 0x360]
test edx, edx
je 0x41e313
mov ecx, dword [ebp + 0x35c]
nop dword [eax + eax]
mov bl, byte [ecx]
cmp bl, byte [eax]
jne 0x41e2b0
test bl, bl
je 0x41e2ac
mov bl, byte [ecx + 1]
cmp bl, byte [eax + 1]
jne 0x41e2b0
add ecx, 2
add eax, 2
test bl, bl
jne 0x41e290
xor eax, eax
jmp 0x41e2b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e313
mov eax, dword [ebp + 0x360]
nop
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x41e2e0
test cl, cl
je 0x41e2dc
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x41e2e0
add eax, 2
add edx, 2
test cl, cl
jne 0x41e2c0
xor eax, eax
jmp 0x41e2e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41e313
mov al, byte [esp + 0x11]
test bh, bh
jne 0x41e2f5
test al, al
je 0x41e334
mov dword [esp + 0x18], edi
test bh, bh
je 0x41e306
cmp dword [edi + 0x5ec], 0
jne 0x41e357
test al, al
je 0x41e313
cmp dword [edi + 0x5f0], 0
jne 0x41e357
mov ebx, dword [esp + 0x2c]
mov esi, dword [esp + 0x14]
mov cl, byte [esp + 0x30]
test esi, esi
jne 0x41dc58
jmp 0x41e362
cmp dword [edi + 0x5f0], 0
jne 0x41e313
jmp 0x41e2ed
mov al, byte [esp + 0x30]
mov ebx, dword [esp + 0x2c]
test al, al
je 0x41e366
cmp dword [esp + 0x1c], 0
je 0x41e366
push str.Multiplexed_connection_found__n
push ebx
call fcn.00422b10
add esp, 8
jmp 0x41e366
mov eax, dword [esp + 0x38]
mov ebx, dword [esp + 0x2c]
mov byte [eax], 1
mov edi, dword [esp + 0x18]
test edi, edi
je 0x41e385
push ebx
mov dword [edi], ebx
call fcn.0041c180
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.0041c180
add esp, 4
cmp byte [esp + 0x12], 0
je 0x41e3b3
cmp byte [ebx + 0xb25], 0
je 0x41e3b3
push str.Found_pending_candidate_for_reuse_and_CURLOPT_PIPEWAIT_is_set_n
push ebx
call fcn.00422b10
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