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

Disassembly:
sub esp, 0x20
mov eax, dword [0x517728]
xor eax, esp
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x2c]
push ebx
push ebp
mov ebp, dword [esp + 0x30]
push esi
push edi
mov edi, dword [esp + 0x34]
mov byte [eax], 0
mov dword [ebp], 0
mov dword [esp + 0x14], eax
cmp dword [edi + 0xc54], 0
mov byte [esp + 0x12], 1
mov byte [esp + 0x13], 0
jne 0x429739
pop edi
pop esi
mov ebx, 3
pop ebp
mov eax, ebx
pop ebx
mov ecx, dword [esp + 0x1c]
xor ecx, esp
call fcn.004b90ac
add esp, 0x20
ret
push edi
call fcn.004294c0
mov esi, eax
add esp, 4
test esi, esi
jne 0x429762
pop edi
pop esi
mov ebx, 0x1b
pop ebp
mov eax, ebx
pop ebx
mov ecx, dword [esp + 0x1c]
xor ecx, esp
call fcn.004b90ac
add esp, 0x20
ret
push esi
push edi
mov dword [ebp], esi
call fcn.0042b020
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x429ff3
mov eax, dword [edi + 0x5c8]
test eax, eax
je 0x429797
push eax
call dword [0x51700c]
add esp, 4
mov dword [esi + 0x16c], eax
test eax, eax
je 0x429748
mov eax, dword [edi + 0x5b4]
test eax, eax
je 0x4297b5
push eax
call dword [0x51700c]
add esp, 4
mov dword [esi + 0x170], eax
test eax, eax
je 0x429748
mov eax, dword [edi + 0x5b8]
test eax, eax
je 0x4297e3
push eax
call dword [0x51700c]
add esp, 4
mov dword [esi + 0x3d0], eax
test eax, eax
je 0x429748
mov al, byte [edi + 0x6ac]
mov byte [esi + 0x2aa], al
push esi
push edi
call fcn.0042a010
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x429ff3
mov eax, dword [esi + 0x2b8]
test byte [eax + 0x50], 1
je 0x429812
cmp byte [esi + 0x290], bl
je 0x429812
mov byte [esi + 0x293], 1
movzx eax, word [edi + 0x168]
test ax, ax
je 0x42985e
cmp byte [edi + 0xd0c], 0
je 0x42985e
push eax
push 0x4eadcc
mov dword [esi + 0x3e0], eax
lea eax, [esp + 0x20]
push 0x10
push eax
call fcn.00442210
push 0
lea eax, [esp + 0x2c]
push eax
push 6
push dword [edi + 0xc30]
call fcn.00458740
add esp, 0x20
test eax, eax
jne 0x429748
push esi
push edi
call fcn.0042a430
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x429ff3
mov eax, dword [esi + 0x2b4]
mov ecx, str.anonymous
mov ebx, str.ftp_example.com
test byte [eax + 0x50], 0x20
je 0x429891
cmp dword [edi + 0xcf0], 0
je 0x429898
mov ecx, 0x50a6ab
mov ebx, ecx
cmp dword [esi + 0x160], 0
jne 0x4298b9
push ecx
call dword [0x51700c]
add esp, 4
mov dword [esi + 0x160], eax
test eax, eax
je 0x429748
cmp dword [esi + 0x164], 0
jne 0x4298da
push ebx
call dword [0x51700c]
add esp, 4
mov dword [esi + 0x164], eax
test eax, eax
je 0x429748
push dword [edi + 0x3a0]
push esi
push edi
call fcn.0042a890
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x429ff3
cmp byte [esi + 0x290], al
je 0x429910
lea eax, [esi + 0x78]
push eax
call fcn.0045abf0
add esp, 4
test eax, eax
jne 0x429ff5
cmp byte [esi + 0x291], 0
je 0x42992d
lea eax, [esi + 0x58]
push eax
call fcn.0045abf0
add esp, 4
test eax, eax
jne 0x429ff5
cmp byte [esi + 0x298], 0
je 0x42996b
lea eax, [esi + 0x48]
push eax
call fcn.0045abf0
add esp, 4
test eax, eax
jne 0x429ff5
cmp byte [esi + 0x298], al
je 0x42996b
push dword [esi + 0x38]
push dword [esi + 0x50]
call fcn.00432e20
add esp, 8
test eax, eax
je 0x42996b
mov byte [esi + 0x298], 0
mov cl, byte [esi + 0x299]
test cl, cl
je 0x42998c
mov eax, dword [esi + 0x3e4]
cmp eax, dword [esi + 0x3e0]
jne 0x42998c
mov byte [esi + 0x299], 0
xor cl, cl
cmp byte [esi + 0x298], 0
jne 0x429999
test cl, cl
je 0x4299a9
cmp byte [esi + 0x290], 0
je 0x4299a9
mov byte [esi + 0x293], 1
mov ecx, dword [esi + 0x2b4]
mov eax, dword [ecx + 4]
test eax, eax
je 0x4299cd
push esi
push edi
call eax
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x429ff3
mov ecx, dword [esi + 0x2b4]
mov eax, dword [esi + 0xf4]
test eax, eax
jns 0x4299e0
mov eax, dword [ecx + 0x44]
mov dword [esi + 0xf4], eax
cmp byte [esi + 0x290], 0
je 0x4299fa
cmp byte [esi + 0x293], 0
jne 0x4299fa
mov ecx, dword [esi + 0x80]
jmp 0x429a11
cmp byte [esi + 0x298], 0
mov eax, dword [esi + 0x3e0]
je 0x429a0e
mov ecx, dword [esi + 0x50]
jmp 0x429a11
mov ecx, dword [esi + 0x38]
push ecx
push eax
push dword [esi + 0x3e8]
push str._u__d__s
call fcn.00442170
mov edx, eax
add esp, 0x10
mov dword [esi + 0x20], edx
test edx, edx
je 0x429748
mov ecx, edx
lea ebx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x429a38
sub ecx, ebx
push ecx
push edx
push edx
lea eax, [ecx + 1]
mov dword [esi + 0x24], eax
call fcn.00432d40
mov eax, dword [esi + 0x2b4]
add esp, 0xc
test byte [eax + 0x50], 0x10
je 0x429b11
mov eax, dword [eax]
lea ecx, [esp + 0x12]
mov dword [edi + 0xdd4], eax
mov eax, dword [esi + 0x2b4]
push ecx
push edi
mov eax, dword [eax + 0x48]
and eax, 0x3ffffff
mov dword [edi + 0xdd8], eax
mov eax, dword [esi + 0x2b4]
mov eax, dword [eax + 0x14]
call eax
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x429af2
push esi
push edi
call fcn.0041cc60
push esi
push edi
call fcn.00426280
mov ebx, eax
add esp, 0x10
test ebx, ebx
jne 0x429ff3
push edi
call fcn.0042b850
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x429ae9
mov eax, dword [esi + 0x2b4]
push 0
push ebx
push edi
mov eax, dword [eax + 0xc]
call eax
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1c]
xor ecx, esp
call fcn.004b90ac
add esp, 0x20
ret
push edi
call fcn.004369f0
add esp, 4
push esi
push edi
call fcn.00428e80
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1c]
xor ecx, esp
call fcn.004b90ac
add esp, 0x20
ret
mov dword [esi + 0x1b0], 0x42d190
mov dword [esi + 0x1b8], 0x42d1f0
mov dword [esi + 0x1b4], 0x42d190
mov dword [esi + 0x1bc], 0x42d1f0
mov al, byte [edi + 0x6a5]
push edi
mov byte [esi + 0x2a7], al
call fcn.00427e60
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x429ff3
push edi
call fcn.00426dc0
add esp, 4
cmp byte [edi + 0x69c], bl
je 0x429b75
cmp dword [edi + 0x8b4], ebx
je 0x429e37
cmp byte [edi + 0x67d], 0
jne 0x429e37
mov eax, dword [esi + 0x2b4]
xorps xmm0, xmm0
movups xmmword [esp + 0x18], xmm0
mov dword [esp + 0x28], 0
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], esi
test byte [eax + 0x48], 3
je 0x429bd7
cmp byte [esi + 0x29d], 0
je 0x429bb8
cmp byte [esi + 0x295], 0
jne 0x429bd7
push dword [edi + 0x88]
call fcn.0041d8e0
add esp, 4
test al, al
je 0x429bd7
cmp byte [edi + 0xd04], 3
jb 0x429bd7
mov al, 1
jmp 0x429bd9
xor al, al
test byte [edi + 0x900], 8
mov byte [esp + 0x24], al
je 0x429bf6
mov eax, dword [esi + 0x2b4]
test byte [eax + 0x48], 3
je 0x429bf6
mov al, 1
jmp 0x429bf8
xor al, al
cmp byte [esi + 0x292], 0
mov byte [esp + 0x25], al
je 0x429c1e
test byte [edi + 0x910], 8
je 0x429c1e
mov eax, dword [esi + 0x2b4]
test byte [eax + 0x48], 3
je 0x429c1e
mov al, 1
jmp 0x429c20
xor al, al
mov byte [esp + 0x26], al
lea eax, [esp + 0x18]
push eax
push 0x42c270
push 0x42b9d0
push dword [esi + 0x24]
push dword [esi + 0x20]
push edi
call fcn.00426ad0
mov ebx, dword [esp + 0x30]
add esp, 0x18
mov cl, byte [esp + 0x27]
test al, al
je 0x429e3b
cmp dword [esi + 0x160], 0
je 0x429cb6
push dword [ebx + 0x160]
call dword [0x517004]
push dword [ebx + 0x164]
mov dword [ebx + 0x160], 0
call dword [0x517004]
mov dword [ebx + 0x164], 0
add esp, 8
mov eax, dword [esi + 0x160]
mov dword [ebx + 0x160], eax
mov eax, dword [esi + 0x164]
mov dword [ebx + 0x164], eax
mov dword [esi + 0x160], 0
mov dword [esi + 0x164], 0
mov al, byte [esi + 0x292]
mov byte [ebx + 0x292], al
test al, al
je 0x429d5f
push dword [ebx + 0x90]
call dword [0x517004]
push dword [ebx + 0x70]
mov dword [ebx + 0x90], 0
call dword [0x517004]
push dword [ebx + 0x94]
mov dword [ebx + 0x70], 0
call dword [0x517004]
push dword [ebx + 0x74]
mov dword [ebx + 0x94], 0
call dword [0x517004]
mov dword [ebx + 0x74], 0
add esp, 0x10
mov eax, dword [esi + 0x90]
mov dword [ebx + 0x90], eax
mov eax, dword [esi + 0x70]
mov dword [ebx + 0x70], eax
mov eax, dword [esi + 0x94]
mov dword [ebx + 0x94], eax
mov eax, dword [esi + 0x74]
mov dword [ebx + 0x74], eax
mov dword [esi + 0x90], 0
mov dword [esi + 0x70], 0
mov dword [esi + 0x94], 0
mov dword [esi + 0x74], 0
push dword [ebx + 0x30]
call dword [0x517004]
push dword [ebx + 0x48]
mov dword [ebx + 0x30], 0
call dword [0x517004]
mov dword [ebx + 0x48], 0
movups xmm0, xmmword [esi + 0x30]
movups xmmword [ebx + 0x30], xmm0
mov dword [esi + 0x30], 0
movups xmm0, xmmword [esi + 0x48]
mov dword [esi + 0x34], 0
movups xmmword [ebx + 0x48], xmm0
mov eax, dword [esi + 0x3e4]
mov dword [esi + 0x48], 0
push dword [ebx + 0x40]
mov dword [ebx + 0x3e4], eax
mov eax, dword [esi + 0x3e0]
mov dword [ebx + 0x3e0], eax
call dword [0x517004]
mov dword [ebx + 0x40], 0
mov eax, dword [esi + 0x40]
mov dword [ebx + 0x40], eax
push esi
mov dword [esi + 0x40], 0
push edi
mov byte [ebx + 0x296], 1
call fcn.00428830
add esp, 0x14
mov dword [ebp], ebx
cmp dword [ebx + 0x60], 0
mov esi, ebx
je 0x429dfa
mov eax, dword [ebx + 0x64]
jmp 0x429e0e
cmp dword [ebx + 0x80], 0
je 0x429e0b
mov eax, dword [ebx + 0x84]
jmp 0x429e0e
mov eax, dword [ebx + 0x3c]
cmp byte [ebx + 0x294], 0
mov ecx, str.host
push eax
mov eax, str.proxy
cmove eax, ecx
push eax
push str.Re_using_existing_connection_with__s__s
push edi
call fcn.0042e300
add esp, 0x10
jmp 0x429f3d
mov cl, byte [esp + 0x13]
mov eax, dword [esi + 0x2b4]
test dword [eax + 0x50], 0x100
je 0x429e5a
cmp byte [edi + 0x6a6], 0
je 0x429e5a
mov byte [esi + 0x2a8], 1
test cl, cl
jne 0x429fd2
push esi
push edi
call fcn.00426440
add esp, 8
sub eax, 1
je 0x429fc4
sub eax, 1
jne 0x429eb2
cmp dword [edi + 0x65c], eax
jl 0x429e93
jg 0x429e8c
cmp dword [edi + 0x658], eax
jb 0x429e93
mov eax, str.Allowing_DoH_to_override_max_connection_limit
jmp 0x429e9d
mov byte [esp + 0x12], 0
mov eax, str.No_connections_available_in_cache
push eax
push edi
call fcn.0042e300
add esp, 8
cmp byte [esp + 0x12], 0
je 0x429fd2
push esi
push edi
call fcn.00427d50
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x429ff3
push esi
push edi
call fcn.0041cc60
push esi
push edi
call fcn.00426280
mov ebx, eax
add esp, 0x10
test ebx, ebx
jne 0x429ff3
test byte [edi + 0x904], 8
je 0x429f0c
cmp byte [edi + 0x90c], al
je 0x429f0c
push str.NTLM_picked_AND_auth_done_set__clear_picked
push edi
call fcn.0042e300
add esp, 8
mov dword [edi + 0x904], ebx
mov byte [edi + 0x90c], bl
test byte [edi + 0x914], 8
je 0x429f3d
cmp byte [edi + 0x91c], 0
je 0x429f3d
push str.NTLM_proxy_picked_AND_auth_done_set__clear_picked
push edi
call fcn.0042e300
add esp, 8
mov dword [edi + 0x914], 0
mov byte [edi + 0x91c], 0
push esi
push edi
call fcn.00428e80
push edi
call fcn.0042b850
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x429ff3
mov eax, dword [esp + 0x14]
cmp byte [esi + 0x296], bl
je 0x429f67
mov byte [eax], bl
jmp 0x429f78
push eax
push esi
push edi
call fcn.0042b630
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x429ff3
mov eax, dword [esi + 0x2b4]
push edi
mov eax, dword [eax]
mov dword [edi + 0xdd4], eax
mov eax, dword [esi + 0x2b4]
mov eax, dword [eax + 0x48]
and eax, 0x3ffffff
mov dword [edi + 0xdd8], eax
mov al, byte [esi + 0x294]
mov byte [edi + 0xde9], al
call fcn.0042da30
add esp, 4
mov ebx, eax
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1c]
xor ecx, esp
call fcn.004b90ac
add esp, 0x20
ret
push str.No_more_connections_allowed_to_host
push edi
call fcn.0042e300
add esp, 8
push str.No_connections_available.
push edi
call fcn.0042e300
push esi
push edi
call fcn.00428830
add esp, 0x10
mov dword [ebp], 0
mov ebx, 0x59
mov eax, ebx
mov ecx, dword [esp + 0x2c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004b90ac
add esp, 0x20
ret