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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x43c
mov eax, dword [0x444044]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, edx
xor edx, edx
mov dword [eax], edx
mov byte [ecx], dl
cmp dword [edi + 0x1c0], edx
mov dword [ebp - 0x420], edi
mov dword [ebp - 0x43c], esi
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x434], ecx
mov dword [ebp - 0x42c], edx
mov dword [ebp - 0x430], edx
jne 0x40eb5f
push 3
jmp 0x40eb7a
push 1
push 0x350
call dword [0x4452b4]
pop ecx
pop ecx
mov ebx, eax
xor ecx, ecx
cmp ebx, ecx
jne 0x40eb8a
mov dword [esi], ecx
push 0x1b
pop eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0041e1a0
leave
ret
mov dword [esi], ebx
or edx, 0xffffffff
mov dword [ebx], edi
mov dword [ebx + 0xa0], edx
mov dword [ebx + 0xa4], edx
mov dword [ebx + 4], edx
mov eax, dword [edi + 0x1c8]
cmp eax, ecx
je 0x40ebb9
cmp byte [eax], cl
je 0x40ebb9
cmp dword [edi + 0x160], ecx
jne 0x40ebb9
xor ecx, ecx
inc ecx
lea eax, [ebx + 0xe7]
mov dword [ebp - 0x428], eax
mov byte [eax], cl
mov byte [ebx + 0xe4], 1
mov dword [ebx + 0xa8], edx
mov dword [ebx + 0xac], edx
call fcn.0041346f
mov dword [ebx + 0x98], eax
mov dword [ebx + 0x9c], edx
xor eax, eax
cmp dword [edi + 0x48], eax
setne cl
mov byte [ebx + 0xec], cl
mov ecx, dword [edi + 0x48]
mov dword [ebx + 0x70], ecx
mov ecx, dword [edi + 0xb8]
mov dword [ebx + 0x78], ecx
mov ecx, dword [edi + 0xbc]
mov dword [ebx + 0x7c], ecx
cmp dword [edi + 0x3c], eax
setne cl
mov byte [ebx + 0xe8], cl
cmp dword [edi + 0x1c], eax
setne al
mov byte [ebx + 0xe9], al
mov al, byte [edi + 0x197]
mov byte [ebx + 0xf5], al
mov al, byte [edi + 0x18a]
mov byte [ebx + 0xf6], al
mov al, byte [edi + 0x1a9]
mov byte [ebx + 0xf9], al
mov al, byte [edi + 0x1aa]
mov byte [ebx + 0xfa], al
mov al, byte [edi + 0x1ab]
mov byte [ebx + 0xfb], al
push dword [edi + 0x1c0]
call fcn.0041f820
mov esi, eax
mov eax, 0x100
cmp esi, eax
pop ecx
jae 0x40ec7e
mov esi, eax
push esi
call dword [0x4452a4]
test eax, eax
pop ecx
mov dword [ebx + 0x4c], eax
je 0x40eb78
push esi
mov dword [ebx + 0x50], eax
call dword [0x4452a4]
test eax, eax
pop ecx
mov dword [ebx + 0x2c], eax
je 0x40eb78
mov dword [ebx + 0x34], eax
mov byte [eax], 0
push dword [ebx + 0x50]
lea esi, [ebx + 0x18]
push esi
push str._15_:_:___n_
push dword [edi + 0x1c0]
mov dword [ebp - 0x414], esi
call fcn.0042ffa5
add esp, 0x10
cmp eax, 2
jne 0x40ed6d
push str.file
push esi
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
je 0x40ed6d
mov eax, dword [ebx + 0x50]
cmp byte [eax], 0x2f
jne 0x40ed1a
cmp byte [eax + 1], 0x2f
jne 0x40ed1a
mov esi, eax
lea eax, [esi + 2]
push eax
call fcn.0041f820
pop ecx
inc eax
push eax
lea eax, [esi + 2]
push eax
push esi
call fcn.00423810
mov esi, dword [ebp - 0x414]
add esp, 0xc
mov eax, dword [ebx + 0x50]
cmp byte [eax], 0x2f
je 0x40ed5d
push 0x2f
push eax
call fcn.0042fe30
mov esi, eax
test esi, esi
pop ecx
pop ecx
je 0x40ed57
lea eax, [esi + 1]
mov cl, byte [eax]
test cl, cl
je 0x40ed42
cmp cl, 0x2f
jne 0x40ed42
mov esi, eax
push esi
call fcn.0041f820
pop ecx
inc eax
push eax
push esi
push dword [ebx + 0x50]
call fcn.00423810
add esp, 0xc
mov esi, dword [ebp - 0x414]
push str.file
push esi
call fcn.004201f0
jmp 0x40ee9b
mov eax, dword [ebx + 0x50]
mov byte [eax], 0
push dword [ebx + 0x50]
push dword [ebx + 0x34]
push esi
push str._15__n:_:_____n_____n_
push dword [edi + 0x1c0]
call fcn.0042ffa5
add esp, 0x14
cmp eax, 2
jge 0x40ee9d
push dword [ebx + 0x50]
push dword [ebx + 0x34]
push str.___n_____n_
push dword [edi + 0x1c0]
call fcn.0042ffa5
add esp, 0x10
cmp eax, 1
jge 0x40edc6
push str._url__malformed
mov esi, edi
call fcn.00409b0c
pop ecx
jmp 0x40eb5b
push str.GOPHER.
call fcn.0041f820
pop ecx
push eax
push dword [ebx + 0x34]
push str.GOPHER.
call fcn.004124f1
add esp, 0xc
test eax, eax
je 0x40edf0
push str.gopher
jmp 0x40ee91
push str.FTP.
call fcn.0041f820
pop ecx
push eax
push dword [ebx + 0x34]
push str.FTP.
call fcn.004124f1
add esp, 0xc
test eax, eax
je 0x40ee17
push 0x43d61c
jmp 0x40ee91
push str.TELNET.
call fcn.0041f820
pop ecx
push eax
push dword [ebx + 0x34]
push str.TELNET.
call fcn.004124f1
add esp, 0xc
test eax, eax
je 0x40ee3e
push str.telnet
jmp 0x40ee91
push str.DICT.
call fcn.0041f820
pop ecx
push eax
push dword [ebx + 0x34]
push str.DICT.
call fcn.004124f1
add esp, 0xc
test eax, eax
je 0x40ee65
push str.DICT
jmp 0x40ee91
push str.LDAP.
call fcn.0041f820
pop ecx
push eax
push dword [ebx + 0x34]
push str.LDAP.
call fcn.004124f1
add esp, 0xc
test eax, eax
je 0x40ee8c
push str.LDAP
jmp 0x40ee91
push str.http
push esi
call fcn.004201f0
or dword [ebx + 8], 1
pop ecx
pop ecx
push 0x40
push dword [ebx + 0x34]
call fcn.0042fe30
test eax, eax
pop ecx
pop ecx
push 0x3f
je 0x40eeb3
inc eax
push eax
jmp 0x40eeb6
push dword [ebx + 0x34]
call fcn.0042fe30
mov esi, eax
test esi, esi
pop ecx
pop ecx
je 0x40ef11
push esi
call fcn.0041f820
pop ecx
push dword [ebx + 0x50]
mov dword [ebp - 0x410], eax
call fcn.0041f820
pop ecx
mov ecx, dword [ebx + 0x50]
inc eax
push eax
mov eax, dword [ebp - 0x410]
push ecx
lea eax, [ecx + eax + 1]
push eax
call fcn.00423810
mov eax, dword [ebx + 0x50]
add esp, 0xc
push dword [ebp - 0x410]
inc eax
push esi
push eax
call fcn.0041f4b0
mov eax, dword [ebx + 0x50]
mov byte [eax], 0x2f
add esp, 0xc
mov byte [esi], 0
jmp 0x40ef26
mov eax, dword [ebx + 0x50]
cmp byte [eax], 0
jne 0x40ef26
push 0x43cff8
push eax
call fcn.004201f0
pop ecx
pop ecx
mov eax, dword [ebx + 0x50]
cmp byte [eax], 0x3f
jne 0x40ef4a
mov esi, eax
push esi
call fcn.0041f820
pop ecx
inc eax
push eax
push esi
inc esi
push esi
call fcn.00423810
mov eax, dword [ebx + 0x50]
add esp, 0xc
mov byte [eax], 0x2f
cmp byte [ebx + 0xe9], 0
je 0x40efe2
mov esi, 0xff
push esi
lea eax, [ebp - 0x107]
push 0
push eax
mov byte [ebp - 0x108], 0
call fcn.0041e790
add esp, 0xc
push esi
lea eax, [ebp - 0x407]
push 0
push eax
mov byte [ebp - 0x408], 0
call fcn.0041e790
add esp, 0xc
lea eax, [ebp - 0x408]
push eax
lea eax, [ebp - 0x108]
push eax
push str._255_:_:_255__n_
push dword [edi + 0x1c]
call fcn.0042ffa5
add esp, 0x10
xor eax, eax
lea ecx, [ebp - 0x108]
call fcn.0041bcf5
test eax, eax
mov dword [ebx + 0x88], eax
je 0x40eb78
xor eax, eax
lea ecx, [ebp - 0x408]
call fcn.0041bcf5
test eax, eax
mov dword [ebx + 0x8c], eax
je 0x40eb78
cmp dword [edi + 0x1c8], 0
jne 0x40f209
push str.no_proxy
call fcn.0041b32e
test eax, eax
pop ecx
mov dword [ebp - 0x40c], eax
jne 0x40f019
push str.NO_PROXY
call fcn.0041b32e
test eax, eax
pop ecx
mov dword [ebp - 0x40c], eax
je 0x40f055
push eax
push 0x43d684
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
jne 0x40f1f3
cmp dword [ebp - 0x40c], eax
je 0x40f055
mov eax, dword [ebp - 0x40c]
push 0x43d688
lea esi, [ebp - 0x41c]
call fcn.00415e6d
pop ecx
mov dword [ebp - 0x418], eax
jmp 0x40f05c
and dword [ebp - 0x418], 0
cmp dword [ebp - 0x418], 0
je 0x40f106
push 0x3a
push dword [ebx + 0x34]
call fcn.0042fe30
test eax, eax
pop ecx
pop ecx
je 0x40f07e
sub eax, dword [ebx + 0x34]
jmp 0x40f087
push dword [ebx + 0x34]
call fcn.0041f820
pop ecx
push dword [ebp - 0x418]
mov dword [ebp - 0x410], eax
call fcn.0041f820
cmp eax, dword [ebp - 0x410]
pop ecx
ja 0x40f0d8
push dword [ebp - 0x418]
call fcn.0041f820
mov esi, dword [ebx + 0x34]
add esi, dword [ebp - 0x410]
pop ecx
push dword [ebp - 0x418]
sub esi, eax
call fcn.0041f820
pop ecx
push eax
push esi
push dword [ebp - 0x418]
call fcn.004124f1
add esp, 0xc
test eax, eax
jne 0x40f0f9
push 0x43d688
lea esi, [ebp - 0x41c]
xor eax, eax
call fcn.00415e6d
test eax, eax
pop ecx
mov dword [ebp - 0x418], eax
jne 0x40f069
cmp dword [ebp - 0x418], 0
jne 0x40f1f3
mov ecx, dword [ebp - 0x414]
mov al, byte [ecx]
test al, al
lea esi, [ebp - 0x88]
je 0x40f140
mov dword [ebp - 0x410], ecx
mov ecx, esi
sub dword [ebp - 0x410], ecx
movsx eax, al
push eax
call fcn.0042f047
mov byte [esi], al
mov eax, dword [ebp - 0x410]
inc esi
mov al, byte [eax + esi]
test al, al
pop ecx
jne 0x40f126
push str._proxy
push esi
call fcn.004201f0
lea eax, [ebp - 0x88]
push eax
call fcn.0041b32e
add esp, 0xc
test eax, eax
jne 0x40f1a6
lea eax, [ebp - 0x88]
push eax
push str.http_proxy
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
jne 0x40f1ab
cmp byte [ebp - 0x88], al
lea esi, [ebp - 0x88]
je 0x40f195
movsx eax, byte [esi]
push eax
call fcn.004306c5
mov byte [esi], al
inc esi
cmp byte [esi], 0
pop ecx
jne 0x40f183
lea eax, [ebp - 0x88]
push eax
call fcn.0041b32e
test eax, eax
pop ecx
je 0x40f1ab
cmp byte [eax], 0
jne 0x40f1c5
push str.all_proxy
call fcn.0041b32e
test eax, eax
pop ecx
jne 0x40f1c9
push str.ALL_PROXY
call fcn.0041b32e
pop ecx
test eax, eax
je 0x40f1f3
cmp byte [eax], 0
je 0x40f1f3
mov ecx, dword [ebx + 8]
mov dword [edi + 0x1c8], eax
mov eax, dword [ebp - 0x428]
and ecx, 0x408
mov byte [edi + 0x1cc], 1
or ecx, 4
mov byte [eax], 1
mov dword [ebx + 8], ecx
cmp dword [ebp - 0x40c], 0
je 0x40f209
push dword [ebp - 0x40c]
call dword [0x4452a8]
pop ecx
test byte [ebx + 8], 1
je 0x40f241
push dword [edi + 0x1c0]
push dword [ebp - 0x414]
push str._s:___s
call fcn.00411657
add esp, 0xc
test eax, eax
je 0x40eb78
mov dword [edi + 0x1c0], eax
mov byte [edi + 0x1c4], 1
and dword [ebx + 8], 0xfffffffe
mov eax, dword [ebx + 0x78]
mov ecx, dword [ebx + 0x7c]
mov edx, eax
or edx, ecx
je 0x40f27e
cmp byte [ebx + 0xec], 0
jne 0x40f27e
push ecx
push eax
push str._lld_
call fcn.00411657
add esp, 0xc
test eax, eax
mov dword [ebx + 0x70], eax
je 0x40eb78
mov byte [ebx + 0xed], 1
mov byte [ebx + 0xec], 1
push str.HTTP
push dword [ebp - 0x414]
mov dword [ebx + 0x28], 1
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
je 0x40f2d3
or dword [ebx + 8], 4
and dword [ebx + 0x108], 0
push 0x50
pop eax
mov dword [ebx + 0x54], eax
mov word [ebx + 0x58], ax
mov dword [ebx + 0x100], 0x414742
mov dword [ebx + 0x104], 0x414586
mov dword [ebx + 0x10c], 0x414529
jmp 0x40f535
push str.HTTPS
push dword [ebp - 0x414]
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
je 0x40f2fe
push str.libcurl_was_built_with_SSL_disabled__https:_not_supported_
mov esi, edi
call fcn.00409b0c
xor eax, eax
pop ecx
inc eax
jmp 0x40eb7b
push str.GOPHER
push dword [ebp - 0x414]
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
je 0x40f36f
push 0x46
pop eax
mov dword [ebx + 0x54], eax
mov word [ebx + 0x58], ax
mov eax, dword [ebx + 0x50]
movsx eax, byte [eax + 1]
push eax
call fcn.0042e564
test eax, eax
pop ecx
je 0x40f34b
mov eax, dword [ebx + 0x50]
inc eax
push 0x2f
push eax
call fcn.0042fe30
test eax, eax
pop ecx
pop ecx
mov dword [ebx + 0x50], eax
jne 0x40f34b
mov eax, dword [ebx + 0x4c]
mov dword [ebx + 0x50], eax
or dword [ebx + 8], 2
and dword [ebx + 0x108], 0
mov dword [ebx + 0x100], 0x414742
mov dword [ebx + 0x104], 0x414586
jmp 0x40f535
push 0x43d71c
push dword [ebp - 0x414]
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
mov esi, str.FTPS
jne 0x40f58f
push esi
push dword [ebp - 0x414]
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
jne 0x40f58f
mov esi, dword [ebp - 0x414]
push str.TELNET
push esi
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
je 0x40f3e2
or dword [ebx + 8], 0x20
push 0x17
pop eax
mov dword [ebx + 0x54], eax
mov word [ebx + 0x58], ax
mov dword [ebx + 0x100], 0x41ac9d
mov dword [ebx + 0x104], 0x41ac75
jmp 0x40f535
push str.DICT
push esi
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
je 0x40f410
or dword [ebx + 8], 0x40
mov dword [ebx + 0x54], 0xa44
mov word [ebx + 0x58], 0xa44
mov dword [ebx + 0x100], 0x41b0c8
jmp 0x40f43f
push str.LDAP
push esi
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
je 0x40f44b
or dword [ebx + 8], 0x80
mov dword [ebx + 0x54], 0x185
mov word [ebx + 0x58], 0x185
mov dword [ebx + 0x100], 0x4197fd
and dword [ebx + 0x104], 0
jmp 0x40f535
push str.FILE
push esi
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
je 0x40f4a6
or dword [ebx + 8], 0x100
mov dword [ebx + 0x100], 0x419562
mov dword [ebx + 0x104], fcn.004193f4
call fcn.00419328
xor ecx, ecx
cmp eax, ecx
jne 0x40eb7b
push ecx
push ecx
push ecx
or ecx, 0xffffffff
push ecx
push ecx
mov esi, ecx
mov eax, ebx
mov byte [ebx + 0xf2], 1
call fcn.0040bdb7
add esp, 0x14
jmp 0x40eb7b
push str.TFTP
push esi
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
je 0x40f57c
or dword [ebx + 8], 0x800
push 0x45
pop eax
mov esi, str._mode
push esi
push dword [ebx + 0x50]
mov dword [ebx + 0x28], 2
mov dword [ebx + 0x54], eax
mov word [ebx + 0x58], ax
mov dword [ebx + 0x10c], 0x41b99a
mov dword [ebx + 0x100], 0x41ba5e
mov dword [ebx + 0x104], 0x41ba28
call fcn.004300d0
test eax, eax
pop ecx
pop ecx
jne 0x40f514
push esi
push dword [ebx + 0x2c]
call fcn.004300d0
test eax, eax
pop ecx
pop ecx
je 0x40f535
mov byte [eax], 0
movsx eax, byte [eax + 6]
push eax
call fcn.004306c5
cmp al, 0x41
pop ecx
je 0x40f52e
cmp al, 0x4e
jne 0x40f68a
mov byte [edi + 0x18c], 1
mov eax, dword [edi + 0x1c8]
test eax, eax
je 0x40f813
cmp byte [eax], 0
je 0x40f813
push eax
call dword [0x4452b0]
test eax, eax
pop ecx
mov dword [ebp - 0x418], eax
mov esi, eax
mov dword [ebp - 0x40c], eax
jne 0x40f6a2
push str.memory_shortage
mov esi, edi
call fcn.00409b0c
pop ecx
jmp 0x40eb78
push esi
push str.Unsupported_protocol:__s
mov esi, edi
call fcn.00409b0c
pop ecx
jmp 0x40f2f5
push esi
push dword [ebp - 0x414]
call fcn.004124dc
test eax, eax
pop ecx
pop ecx
je 0x40f5ab
push str.libcurl_was_built_with_SSL_disabled__ftps:_not_supported_
jmp 0x40f2ee
or dword [ebx + 8], 0x10
push 0x15
pop eax
mov dword [ebx + 0x54], eax
mov word [ebx + 0x58], ax
mov eax, dword [edi + 0x1c8]
test eax, eax
je 0x40f5ee
cmp byte [eax], 0
je 0x40f5ee
cmp byte [edi + 0x18a], 0
jne 0x40f5ee
mov dword [ebx + 0x100], 0x414742
mov dword [ebx + 0x104], 0x414586
mov dword [ebx + 8], 4
jmp 0x40f645
mov eax, 0x4166cb
mov dword [ebx + 0x100], 0x418816
mov dword [ebx + 0x108], fcn.00418702
mov dword [ebx + 0x104], fcn.00418240
mov dword [ebx + 0x10c], 0x41814e
mov dword [ebx + 0x110], fcn.0041800a
mov dword [ebx + 0x114], 0x4191e6
mov dword [ebx + 0x118], eax
mov dword [ebx + 0x11c], eax
mov dword [ebx + 0x120], 0x418a3d
inc dword [ebx + 0x50]
mov eax, dword [ebx + 0x50]
mov esi, str._type
push esi
push eax
call fcn.004300d0
test eax, eax
pop ecx
pop ecx
jne 0x40f670
push esi
push dword [ebx + 0x2c]
call fcn.004300d0
test eax, eax
pop ecx
pop ecx
je 0x40f535
mov byte [eax], 0
movsx eax, byte [eax + 6]
push eax
call fcn.004306c5
cmp al, 0x41
pop ecx
je 0x40f52e
cmp al, 0x44
je 0x40f696
mov byte [edi + 0x18c], 0
jmp 0x40f535
mov byte [edi + 0x18d], 1
jmp 0x40f535
push 0x43d7b8
push eax
call fcn.004300d0
test eax, eax
pop ecx
pop ecx
je 0x40f6bc
lea esi, [eax + 3]
mov dword [ebp - 0x40c], esi
push 0x40
push esi
call fcn.0042fe30
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0x41c], eax
je 0x40f76c
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x408]
push eax
push str._255_:_:_255___
push esi
call fcn.0042ffa5
add esp, 0x10
cmp eax, 2
jne 0x40f76c
lea esi, [ebx + 0x88]
push dword [esi]
call fcn.0040d014
pop ecx
xor eax, eax
lea ecx, [ebp - 0x408]
call fcn.0041bcf5
test eax, eax
mov dword [esi], eax
je 0x40f786
lea esi, [ebx + 0x8c]
push dword [esi]
call fcn.0040d014
pop ecx
xor eax, eax
lea ecx, [ebp - 0x108]
call fcn.0041bcf5
test eax, eax
mov dword [esi], eax
je 0x40f786
mov eax, dword [ebp - 0x41c]
inc eax
push eax
mov byte [ebx + 0xe9], 1
call dword [0x4452b0]
mov esi, eax
test esi, esi
pop ecx
je 0x40f786
push dword [ebp - 0x418]
call dword [0x4452a8]
pop ecx
mov dword [ebp - 0x40c], esi
mov dword [ebp - 0x418], esi
cmp byte [esi], 0x5b
mov dword [ebp - 0x410], esi
jne 0x40f7bf
mov esi, dword [ebp - 0x40c]
inc esi
mov dword [ebp - 0x40c], esi
jmp 0x40f7ab
push dword [ebp - 0x418]
call dword [0x4452a8]
jmp 0x40f576
movsx eax, byte [esi]
push eax
call fcn.0042e5e1
test eax, eax
pop ecx
jne 0x40f7aa
cmp byte [esi], 0x3a
jne 0x40f7b0
inc esi
cmp byte [esi], 0
jne 0x40f797
cmp byte [esi], 0x5d
jne 0x40f7bf
mov byte [esi], 0
inc esi
mov dword [ebp - 0x410], esi
push 0x3a
push dword [ebp - 0x410]
call fcn.0042fe30
test eax, eax
pop ecx
pop ecx
je 0x40f7df
mov byte [eax], 0
inc eax
push eax
call fcn.0042e33c
pop ecx
jmp 0x40f7e6
mov eax, dword [edi + 0x20]
test eax, eax
je 0x40f7e9
mov dword [ebx + 0x54], eax
push dword [ebp - 0x40c]
call dword [0x4452b0]
pop ecx
push dword [ebp - 0x418]
mov dword [ebx + 0x3c], eax
mov dword [ebx + 0x44], eax
call dword [0x4452a8]
cmp dword [ebx + 0x3c], 0
pop ecx
je 0x40eb78
test word [ebx + 8], 0x400
je 0x40f82d
mov eax, dword [ebp - 0x428]
cmp byte [eax], 0
je 0x40f82d
mov byte [ebx + 0xf6], 1
mov byte [ebp - 0x308], 0
mov byte [ebp - 0x208], 0
test byte [ebx + 8], 0x14
je 0x40f92f
push 0x40
push dword [ebx + 0x34]
call fcn.0042fe30
test eax, eax
pop ecx
pop ecx
mov ecx, dword [ebx + 0x34]
je 0x40f92f
inc eax
mov dword [ebx + 0x34], eax
cmp dword [edi + 0x19c], 2
je 0x40f92f
mov byte [ebx + 0xe8], 1
cmp byte [ecx], 0x3a
lea eax, [ebp - 0x208]
push eax
je 0x40f897
lea eax, [ebp - 0x308]
push eax
push str._127_:__:_127___
push ecx
call fcn.0042ffa5
add esp, 0x10
jmp 0x40f8a5
push str.:_127___
push ecx
call fcn.0042ffa5
add esp, 0xc
cmp byte [ebp - 0x308], 0
je 0x40f8ea
xor eax, eax
lea ecx, [ebp - 0x308]
call fcn.0041bcf5
mov esi, eax
test esi, esi
je 0x40eb78
push esi
call fcn.0041f820
cmp eax, 0x100
pop ecx
jae 0x40f8e2
lea eax, [ebp - 0x308]
push esi
push eax
call fcn.004201f0
pop ecx
pop ecx
push esi
call dword [0x4452a8]
pop ecx
cmp byte [ebp - 0x208], 0
je 0x40f92f
xor eax, eax
lea ecx, [ebp - 0x208]
call fcn.0041bcf5
mov esi, eax
test esi, esi
je 0x40eb78
push esi
call fcn.0041f820
cmp eax, 0x100
pop ecx
jae 0x40f927
lea eax, [ebp - 0x208]
push esi
push eax
call fcn.004201f0
pop ecx
pop ecx
push esi
call dword [0x4452a8]
pop ecx
lea eax, [ebp - 0x421]
push eax
push str.__39_0_9a_fA_F:.__c
push dword [ebx + 0x34]
call fcn.0042ffa5
add esp, 0xc
cmp eax, 1
jne 0x40f979
cmp byte [ebp - 0x421], 0x5d
jne 0x40f979
inc dword [ebx + 0x34]
mov byte [ebx + 0xea], al
mov eax, dword [ebx + 0x34]
push 0x5d
push eax
call fcn.0042fe30
mov esi, eax
mov byte [esi], 0
inc esi
cmp byte [esi], 0x3a
pop ecx
pop ecx
je 0x40f987
xor esi, esi
jmp 0x40f987
push 0x3a
push dword [ebx + 0x34]
call fcn.0042ff10
pop ecx
pop ecx
mov esi, eax
cmp dword [edi + 0x38], 0
je 0x40fa03
cmp byte [edi + 0x831c], 0
je 0x40fa03
test esi, esi
mov ax, word [edi + 0x38]
mov word [ebx + 0x58], ax
je 0x40f9a5
mov byte [esi], 0
mov eax, dword [ebp - 0x428]
cmp byte [eax], 0
je 0x40fa4f
push dword [ebx + 0x50]
movzx eax, word [ebx + 0x58]
push eax
push dword [ebx + 0x34]
push str.http:___s:_d_s
call fcn.00411657
add esp, 0x10
test eax, eax
mov dword [ebp - 0x41c], eax
je 0x40eb78
lea esi, [edi + 0x1c4]
cmp byte [esi], 0
je 0x40f9f2
push dword [edi + 0x1c0]
call dword [0x4452a8]
pop ecx
mov eax, dword [ebp - 0x41c]
mov dword [edi + 0x1c0], eax
mov byte [esi], 1
jmp 0x40fa4f
test esi, esi
je 0x40fa4f
push 0xa
lea ecx, [ebp - 0x41c]
lea eax, [esi + 1]
push ecx
push eax
call fcn.0042d96c
mov edx, dword [ebp - 0x41c]
lea ecx, [esi + 1]
add esp, 0xc
cmp edx, ecx
je 0x40fa4f
cmp byte [edx], 0
jne 0x40fa4f
cmp eax, 0xffff
jbe 0x40fa48
push eax
push str.Port_number_too_large:__lu
mov esi, edi
call fcn.00409b0c
pop ecx
jmp 0x40edc0
mov byte [esi], 0
mov word [ebx + 0x58], ax
mov eax, dword [edi + 0x3c]
test eax, eax
je 0x40fa72
lea ecx, [ebp - 0x208]
push ecx
lea ecx, [ebp - 0x308]
push ecx
push str._255_:_:_255__n_
push eax
call fcn.0042ffa5
add esp, 0x10
mov byte [ebx + 0xfc], 0
cmp dword [edi + 0x19c], 0
je 0x40facd
mov eax, edi
push dword [eax + 0x1a0]
lea eax, [ebp - 0x208]
push eax
push dword [ebx + 0x34]
lea edi, [ebp - 0x308]
call fcn.0041c4af
mov edi, dword [ebp - 0x420]
add esp, 0xc
test eax, eax
je 0x40fabf
push dword [ebx + 0x34]
mov esi, edi
push str.Couldnt_find_host__s_in_the__netrc_file__using_defaults_n
call fcn.00409aa3
pop ecx
pop ecx
jmp 0x40facd
mov byte [ebx + 0xfc], 1
mov byte [ebx + 0xe8], 1
test byte [ebx + 8], 0x10
je 0x40faf6
cmp byte [ebx + 0xe8], 0
jne 0x40faf6
push str.anonymous
call dword [0x4452b0]
mov dword [ebx + 0x80], eax
mov dword [esp], str.curl_by_daniel_haxx.se
jmp 0x40fb11
lea eax, [ebp - 0x308]
push eax
call dword [0x4452b0]
mov dword [ebx + 0x80], eax
pop ecx
lea eax, [ebp - 0x208]
push eax
call dword [0x4452b0]
cmp dword [ebx + 0x80], 0
mov dword [ebx + 0x84], eax
pop ecx
je 0x40eb78
test eax, eax
je 0x40eb78
lea esi, [ebx + 0xb4]
lea eax, [edi + 0x130]
mov dword [ebp - 0x41c], esi
call fcn.0040bf37
test al, al
je 0x40eb78
cmp byte [edi + 0x1a7], 0
je 0x40fb68
cmp byte [edi + 0x8300], 0
je 0x40fdcf
lea eax, [ebp - 0x430]
push eax
push ebx
push edi
call fcn.0040e28c
add esp, 0xc
test al, al
je 0x40fdcf
mov esi, ebx
mov ebx, dword [ebx + 0x3c]
test ebx, ebx
mov dword [ebp - 0x410], esi
je 0x40fb98
push ebx
call dword [0x4452a8]
pop ecx
mov eax, dword [ebp - 0x41c]
call fcn.0040bfc0
mov al, byte [esi + 0xe8]
test al, al
mov ebx, dword [ebp - 0x430]
mov byte [ebx + 0xe8], al
je 0x40fbf7
lea edi, [ebx + 0x80]
push dword [edi]
call fcn.0040d014
pop ecx
push dword [ebx + 0x84]
call fcn.0040d014
lea eax, [esi + 0x80]
pop ecx
mov ecx, dword [eax]
mov dword [edi], ecx
mov edi, dword [ebp - 0x420]
lea ecx, [esi + 0x84]
mov edx, dword [ecx]
mov dword [ebx + 0x84], edx
and dword [eax], 0
and dword [ecx], 0
mov al, byte [esi + 0xe9]
test al, al
mov byte [ebx + 0xe9], al
je 0x40fc45
lea edi, [ebx + 0x88]
push dword [edi]
call fcn.0040d014
pop ecx
push dword [ebx + 0x8c]
call fcn.0040d014
lea eax, [esi + 0x88]
pop ecx
mov ecx, dword [eax]
mov dword [edi], ecx
mov edi, dword [ebp - 0x420]
lea ecx, [esi + 0x8c]
mov edx, dword [ecx]
mov dword [ebx + 0x8c], edx
and dword [eax], 0
and dword [ecx], 0
lea eax, [ebx + 0xe7]
cmp byte [eax], 0
mov dword [ebp - 0x428], eax
je 0x40fc7b
lea edi, [ebx + 0x2c]
push dword [edi]
call dword [0x4452a8]
mov eax, dword [ebp - 0x428]
add esi, 0x2c
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x410]
mov edi, dword [ebp - 0x420]
pop ecx
cmp byte [eax], 0
mov cl, byte [esi + 0xf5]
mov byte [ebx + 0xf5], cl
jne 0x40fc96
push dword [esi + 0x2c]
call dword [0x4452a8]
pop ecx
push dword [ebx + 0x4c]
call dword [0x4452a8]
mov eax, dword [esi + 0x4c]
mov dword [ebx + 0x4c], eax
mov eax, dword [esi + 0x50]
or dword [ebx + 0xa8], 0xffffffff
or dword [ebx + 0xac], 0xffffffff
pop ecx
mov dword [ebx + 0x50], eax
mov byte [ebx + 0xe5], 1
mov byte [ebx + 0xe6], 0
push dword [esi + 0x80]
call fcn.0040d014
pop ecx
push dword [esi + 0x84]
call fcn.0040d014
pop ecx
push dword [esi + 0x88]
call fcn.0040d014
pop ecx
push dword [esi + 0x8c]
call fcn.0040d014
cmp byte [esi + 0xed], 0
pop ecx
je 0x40fd0b
push dword [esi + 0x70]
call dword [0x4452a8]
pop ecx
push esi
call dword [0x4452a8]
mov eax, dword [edi + 0xb8]
mov dword [ebx + 0x78], eax
mov eax, dword [edi + 0xbc]
mov dword [ebx + 0x7c], eax
mov eax, dword [ebx + 0x78]
or eax, dword [ebx + 0x7c]
pop ecx
je 0x40fd6e
cmp byte [ebx + 0xed], 1
jne 0x40fd40
push dword [ebx + 0x70]
call dword [0x4452a8]
pop ecx
push dword [ebx + 0x7c]
push dword [ebx + 0x78]
push str._lld_
call fcn.00411657
add esp, 0xc
test eax, eax
mov dword [ebx + 0x70], eax
je 0x40eb78
mov byte [ebx + 0xec], 1
mov byte [ebx + 0xed], 1
jmp 0x40fd9f
mov eax, dword [edi + 0x48]
test eax, eax
je 0x40fd98
push eax
call dword [0x4452b0]
test eax, eax
pop ecx
mov dword [ebx + 0x70], eax
je 0x40eb78
mov byte [ebx + 0xed], 1
mov byte [ebx + 0xec], 1
jmp 0x40fd9f
mov byte [ebx + 0xec], 0
mov eax, dword [ebp - 0x43c]
mov dword [eax], ebx
mov eax, dword [ebp - 0x428]
cmp byte [eax], 0
je 0x40fdb7
mov eax, dword [ebx + 0x48]
jmp 0x40fdba
mov eax, dword [ebx + 0x38]
push eax
push dword [ebx + 4]
mov esi, edi
push str.Re_using_existing_connection____ld__with_host__s_n
call fcn.00409aa3
add esp, 0xc
jmp 0x40fde0
mov eax, dword [ebp - 0x420]
call fcn.0040e4d3
mov edi, dword [ebp - 0x420]
test byte [ebx + 8], 4
mov eax, dword [edi + 0x80]
mov dword [ebx + 0x200], eax
mov eax, dword [edi + 0x28]
mov dword [ebx + 0x204], eax
je 0x40fe20
cmp byte [edi + 0x199], 0
je 0x40fe20
mov eax, dword [edi + 0xa8]
and eax, dword [edi + 0xac]
cmp eax, 0xffffffff
jne 0x40fe20
xor eax, eax
inc eax
cmp dword [edi + 0x124], eax
jne 0x40fe22
xor eax, eax
cmp byte [ebx + 0xe5], 0
mov byte [ebx + 0xef], al
je 0x40fe52
mov eax, dword [ebp - 0x428]
and dword [ebp - 0x40c], 0
cmp byte [eax], 0
je 0x40fefb
mov eax, dword [ebx + 0x34]
mov dword [ebx + 0x38], eax
jmp 0x40fefb
mov eax, dword [ebx + 0x34]
mov dword [ebx + 0x38], eax
mov eax, dword [edi + 0x1c8]
test eax, eax
je 0x40feac
cmp byte [eax], 0
je 0x40feac
mov eax, dword [ebx + 0x44]
mov dword [ebx + 0x48], eax
lea eax, [ebp - 0x40c]
push eax
push dword [ebx + 0x54]
push dword [ebx + 0x44]
push ebx
call fcn.0041034c
add esp, 0x10
cmp eax, 1
je 0x40fecc
cmp dword [ebp - 0x40c], 0
jne 0x40fefb
push dword [ebx + 0x48]
mov esi, edi
push str.Couldnt_resolve_proxy__s
call fcn.00409b0c
mov dword [ebp - 0x42c], 5
jmp 0x40fef9
movzx eax, word [ebx + 0x58]
lea ecx, [ebp - 0x40c]
push ecx
push eax
push dword [ebx + 0x34]
mov dword [ebx + 0x54], eax
push ebx
call fcn.0041034c
add esp, 0x10
cmp eax, 1
jne 0x40fed7
mov eax, dword [ebp - 0x434]
mov byte [eax], 1
jmp 0x40fefb
cmp dword [ebp - 0x40c], 0
jne 0x40fefb
push dword [ebx + 0x38]
mov esi, edi
push str.Couldnt_resolve_host__s
call fcn.00409b0c
mov dword [ebp - 0x42c], 6
pop ecx
pop ecx
mov eax, dword [ebp - 0x438]
mov ecx, dword [ebp - 0x40c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x42c]
jmp 0x40eb7b