Function at 0x410657
Capabilities:
Create tcp socket
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x44ef21
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
mov eax, dword [0x463140]
xor eax, esp
mov dword [esp + 0xc0], eax
push ebx
push esi
push edi
mov eax, dword [0x463140]
xor eax, esp
push eax
lea eax, [esp + 0xd8]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov ebx, ecx
mov dword [esp + 0x1c], eax
mov eax, dword [ebx]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x18], esi
call dword [eax + 0x6c]
push 0x10
lea eax, [ebx + 0xe4]
xor ecx, ecx
pop edx
mov dword [eax + 0x10], ecx
cmp dword [eax + 0x14], edx
jb 0x4106c5
mov eax, dword [eax]
mov byte [eax], cl
lea eax, [ebx + 0x110]
mov dword [eax + 0x10], ecx
cmp dword [eax + 0x14], edx
jb 0x4106d7
mov eax, dword [eax]
mov byte [eax], cl
lea eax, [ebx + 0xac]
mov dword [eax + 0x10], ecx
cmp dword [eax + 0x14], edx
jb 0x4106e9
mov eax, dword [eax]
mov byte [eax], cl
lea eax, [ebx + 0xc8]
mov dword [eax + 0x10], ecx
cmp dword [eax + 0x14], edx
jb 0x4106fb
mov eax, dword [eax]
lea edi, [ebx + 0x100]
mov byte [eax], cl
call fcn.00413176
lea edi, [ebx + 0x12c]
call fcn.00413176
mov ax, word [ebp + 0xc]
push esi
mov word [ebx + 8], ax
call fcn.00439ae0
pop ecx
mov ecx, dword [esp + 0x18]
lea esi, [ebx + 0x90]
call fcn.004012c4
push 6
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebx + 0xc], eax
cmp eax, 0xffffffff
je 0x410d69
mov esi, ebx
call fcn.00410560
test eax, eax
je 0x410d69
xor edi, edi
cmp dword [ebx + 0x18], edi
je 0x410d3c
mov esi, str._r_n_r_n
push esi
call fcn.00439ae0
pop ecx
push eax
push esi
push dword [esp + 0x24]
xor eax, eax
call fcn.00413356
cmp eax, 0xffffffff
je 0x410d69
add eax, 2
push eax
push edi
push dword [esp + 0x24]
lea esi, [esp + 0xa4]
call fcn.00412fc9
lea esi, [esp + 0x30]
mov dword [esp + 0xe0], edi
call fcn.00412ff4
mov ebx, 0x4583b0
push ebx
mov byte [esp + 0xe4], 1
call fcn.00439ae0
pop ecx
push eax
push ebx
lea eax, [esp + 0xa0]
push eax
xor eax, eax
call fcn.00413356
push ebx
lea esi, [eax + 2]
call fcn.00439ae0
pop ecx
push eax
push ebx
lea eax, [esp + 0xa0]
push eax
mov eax, esi
call fcn.00413356
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
je 0x4109e9
jmp 0x4107fd
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
sub eax, esi
push eax
push esi
lea eax, [esp + 0xa0]
push eax
lea esi, [esp + 0xc0]
call fcn.00412fc9
mov esi, 0x4583b4
push esi
mov byte [esp + 0xe4], 2
call fcn.00439ae0
pop ecx
push eax
push esi
lea eax, [esp + 0xbc]
push eax
xor eax, eax
call fcn.00413356
mov dword [esp + 0x24], eax
cmp eax, 0xffffffff
je 0x41099f
push eax
push 0
lea eax, [esp + 0xbc]
push eax
lea esi, [esp + 0x4c]
call fcn.00412fc9
mov edi, 0x4583a4
push edi
mov byte [esp + 0xe4], 3
call fcn.00439ae0
pop ecx
push eax
mov eax, esi
call fcn.004133df
xor ecx, ecx
call fcn.0040132d
push edi
call fcn.00439ae0
pop ecx
push eax
mov eax, esi
call fcn.0041343d
lea ecx, [eax + 1]
or eax, 0xffffffff
call fcn.0040132d
cmp dword [esp + 0x50], 0
je 0x410992
mov eax, dword [esp + 0x24]
push 0xffffffffffffffff
inc eax
push eax
lea eax, [esp + 0xbc]
push eax
lea esi, [esp + 0x68]
call fcn.00412fc9
push edi
mov byte [esp + 0xe4], 4
call fcn.00439ae0
pop ecx
push eax
mov eax, esi
call fcn.004133df
xor ecx, ecx
call fcn.0040132d
push edi
call fcn.00439ae0
pop ecx
push eax
mov eax, esi
call fcn.0041343d
lea ecx, [eax + 1]
or eax, 0xffffffff
call fcn.0040132d
mov ecx, dword [esp + 0x40]
push 0x10
pop esi
mov edx, ecx
cmp dword [esp + 0x54], esi
jae 0x410d62
lea edx, [esp + 0x40]
mov eax, edx
add eax, dword [esp + 0x50]
cmp dword [esp + 0x54], esi
jae 0x41091f
lea ecx, [esp + 0x40]
push edx
push eax
push ecx
lea eax, [esp + 0x38]
push eax
call fcn.00413a4f
mov eax, dword [esp + 0x50]
add esp, 0x10
cmp dword [esp + 0x54], esi
jae 0x41093d
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x7c]
call fcn.00404c23
mov byte [esp + 0xe0], 5
mov edi, dword [esp + 0x5c]
cmp dword [esp + 0x70], esi
jae 0x41095d
lea edi, [esp + 0x5c]
lea edx, [esp + 0x78]
lea ecx, [esp + 0x30]
call fcn.0041301f
push edi
mov esi, eax
call fcn.00439ae0
pop ecx
mov ecx, edi
call fcn.004012c4
push 1
xor edi, edi
lea esi, [esp + 0x7c]
call fcn.00401614
push 1
lea esi, [esp + 0x60]
call fcn.00401614
push 1
xor edi, edi
lea esi, [esp + 0x44]
call fcn.00401614
mov esi, dword [esp + 0x14]
add esi, 2
push ebx
mov dword [esp + 0x28], esi
call fcn.00439ae0
pop ecx
push eax
push ebx
lea eax, [esp + 0xa0]
push eax
mov eax, esi
call fcn.00413356
push 1
xor edi, edi
lea esi, [esp + 0xb8]
mov dword [esp + 0x18], eax
mov byte [esp + 0xe4], 1
call fcn.00401614
cmp dword [esp + 0x14], 0xffffffff
jne 0x4107f9
push str.host
lea eax, [esp + 0x7c]
call fcn.00404c23
mov byte [esp + 0xe0], 6
mov eax, dword [esp + 0x34]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x78]
push eax
lea edi, [esp + 0x30]
lea esi, [esp + 0x34]
call fcn.0041319b
mov ecx, dword [esp + 0x24]
cmp ecx, dword [eax]
push 1
sete byte [esp + 0x27]
xor edi, edi
lea esi, [esp + 0x7c]
mov byte [esp + 0xe4], 1
call fcn.00401614
cmp byte [esp + 0x23], 0
je 0x410a83
push str.host
lea eax, [esp + 0x7c]
call fcn.00404c23
lea edx, [esp + 0x78]
lea ecx, [esp + 0x30]
mov byte [esp + 0xe0], 7
call fcn.004130cf
push dword [esp + 0x18]
mov esi, eax
call fcn.00439ae0
pop ecx
mov ecx, dword [esp + 0x18]
call fcn.004012c4
push 1
lea esi, [esp + 0x7c]
call fcn.00401614
mov esi, 0x4583c0
push esi
call fcn.00439ae0
pop ecx
push eax
push esi
push dword [esp + 0x24]
xor eax, eax
call fcn.00413356
mov dword [esp + 0x18], eax
cmp eax, 0xffffffff
je 0x410b98
and dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0xf
mov byte [esp + 0x5c], 0
mov esi, str.http:__
push esi
mov byte [esp + 0xe4], 8
call fcn.00439ae0
pop ecx
mov ecx, esi
lea esi, [esp + 0x5c]
call fcn.004012c4
push str.host
lea eax, [esp + 0x7c]
call fcn.00404c23
lea edx, [esp + 0x78]
lea ecx, [esp + 0x30]
mov byte [esp + 0xe0], 9
call fcn.004130cf
push 0
push eax
or eax, 0xffffffff
call fcn.00406a33
push 1
xor edi, edi
lea esi, [esp + 0x7c]
mov byte [esp + 0xe4], 8
call fcn.00401614
mov eax, dword [section..data]
mov ecx, section..data
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x14], eax
movzx eax, word [ebp + 0xc]
push eax
lea eax, [esp + 0x18]
push str.:_ld
push eax
mov byte [esp + 0xec], 0xa
call fcn.00413a3b
add esp, 0xc
push dword [esp + 0x14]
call fcn.00439ae0
pop ecx
push dword [esp + 0x14]
mov edi, eax
lea eax, [esp + 0x60]
call fcn.004069a3
mov edi, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
push 0xffffffffffffffff
push 0
lea eax, [esp + 0x64]
push eax
call fcn.0041323b
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
call fcn.0040507e
push 1
xor edi, edi
lea esi, [esp + 0x60]
call fcn.00401614
push ebx
call fcn.00439ae0
pop ecx
push eax
push ebx
push dword [esp + 0x24]
xor eax, eax
call fcn.00413356
mov dword [esp + 0x18], eax
cmp eax, 0xffffffff
je 0x410d1a
and dword [esp + 0x6c], 0
push 0xf
pop edi
mov dword [esp + 0x70], edi
mov byte [esp + 0x5c], 0
mov esi, str.Proxy_Connection:_Keep_Alive_r_n
push esi
mov byte [esp + 0xe4], 0xb
call fcn.00439ae0
pop ecx
mov ecx, esi
lea esi, [esp + 0x5c]
call fcn.004012c4
mov esi, dword [esp + 0x28]
xor eax, eax
cmp dword [esi + 0x4c], eax
je 0x410cf5
cmp dword [esi + 0x68], eax
je 0x410cf5
mov dword [esp + 0x54], edi
mov dword [esp + 0x50], eax
mov byte [esp + 0x40], al
push 0xffffffffffffffff
push eax
lea eax, [esi + 0x3c]
lea ecx, [esp + 0x48]
mov byte [esp + 0xe8], 0xc
call fcn.00401579
mov edi, 0x4583b4
push edi
call fcn.00439ae0
pop ecx
push edi
mov edi, eax
lea eax, [esp + 0x44]
call fcn.004069a3
xor edi, edi
push edi
add esi, 0x58
push esi
or eax, 0xffffffff
lea esi, [esp + 0x48]
call fcn.00406a33
mov dword [esp + 0x78], edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], edi
mov dword [esp + 0x88], edi
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], edi
mov esi, str.Proxy_Authorization:_Basic
push esi
mov byte [esp + 0xe4], 0xd
call fcn.00439ae0
pop ecx
mov edi, eax
push esi
lea eax, [esp + 0x60]
call fcn.004069a3
cmp dword [esp + 0x54], 0x10
mov eax, dword [esp + 0x40]
jae 0x410ca2
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x7c]
push eax
call fcn.00420350
mov esi, eax
push esi
call fcn.00439ae0
pop ecx
mov edi, eax
push esi
lea eax, [esp + 0x60]
call fcn.004069a3
push ebx
call fcn.00439ae0
pop ecx
mov edi, eax
push ebx
lea eax, [esp + 0x60]
call fcn.004069a3
lea esi, [esp + 0x78]
call fcn.00420250
push 1
xor edi, edi
lea esi, [esp + 0x44]
mov byte [esp + 0xe4], 0xb
call fcn.00401614
xor eax, eax
mov edi, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
push 0xffffffffffffffff
push eax
lea eax, [esp + 0x64]
push eax
add edi, 2
call fcn.0041323b
push 1
xor edi, edi
lea esi, [esp + 0x60]
call fcn.00401614
lea eax, [esp + 0x30]
push eax
mov byte [esp + 0xe4], 0
call fcn.0040fe28
push 1
xor edi, edi
lea esi, [esp + 0x9c]
call fcn.00401614
mov eax, dword [esp + 0x1c]
cmp dword [eax + 0x14], 0x10
mov edi, dword [eax + 0x10]
jb 0x410d4b
mov eax, dword [eax]
mov esi, dword [esp + 0x28]
push edi
mov ebx, eax
call fcn.0040ff36
xor ecx, ecx
cmp edi, eax
sete cl
mov eax, ecx
jmp 0x410d6b
mov eax, ecx
jmp 0x410911
xor eax, eax
mov ecx, dword [esp + 0xd8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.00437608
mov esp, ebp
pop ebp
ret 0xc