Function at 0x100dad70
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Receive data
Receive data on socket
Resolve dns
Send data
Send data on socket
Set socket configuration

Disassembly:
mov eax, 0x2264
call fcn.10125a20
mov eax, dword [0x1018c630]
xor eax, esp
mov dword [esp + 0x225c], eax
mov eax, dword [esp + 0x2268]
push ebx
push ebp
push esi
push edi
xor ebx, ebx
push 0x7f
mov edi, edx
lea edx, [esp + 0xed]
push ebx
push edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x28], ecx
mov byte [esp + 0xf4], bl
call fcn.10112c40
push 0xff
lea eax, [esp + 0x179]
push ebx
push eax
mov byte [esp + 0x180], bl
call fcn.10112c40
add esp, 0x18
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x16c]
push edx
lea edx, [esp + 0xf0]
mov dword [esp + 0x1c], 0x50
call fcn.100daa50
test al, al
jne 0x100dae00
or eax, 0xffffffff
jmp 0x100db285
lea eax, [esp + 0xe8]
push eax
call sub.WS2_32.dll_inet_addr
mov esi, eax
cmp esi, 0xffffffff
jne 0x100dae36
lea ecx, [esp + 0xe8]
push ecx
call sub.WS2_32.dll_gethostbyname
cmp eax, ebx
jne 0x100dae2f
mov eax, 0xfffffffe
jmp 0x100db285
mov edx, dword [eax + 0xc]
mov eax, dword [edx]
mov esi, dword [eax]
push 6
push 1
push 2
call sub.WS2_32.dll_socket
mov ebp, eax
cmp ebp, ebx
mov dword [esp + 0x18], ebp
jg 0x100dae55
mov eax, 0xfffffffd
jmp 0x100db285
mov ecx, 2
mov eax, ecx
mov word [esp + 0x28], cx
mov ecx, dword [esp + 0x14]
xor edx, edx
push ecx
mov word [esp + 0x2e], dx
mov dword [esp + 0x30], ebx
mov word [esp + 0x3c], ax
call sub.WS2_32.dll_htons
push 0x10
lea edx, [esp + 0x2c]
push edx
push ebp
mov word [esp + 0x46], ax
mov dword [esp + 0x48], esi
call sub.WS2_32.dll_bind
test eax, eax
je 0x100daea5
push ebp
call sub.WS2_32.dll_closesocket
mov eax, 0xfffffffc
jmp 0x100db285
push 4
lea eax, [esp + 0x24]
push eax
push 0x1006
push 0xffff
push ebp
mov dword [esp + 0x34], 0x7530
call sub.WS2_32.dll_setsockopt
test eax, eax
je 0x100daed8
push ebp
call sub.WS2_32.dll_closesocket
mov eax, 0xfffffffb
jmp 0x100db285
push 0x10
lea ecx, [esp + 0x3c]
push ecx
push ebp
call sub.WS2_32.dll_connect
test eax, eax
je 0x100daef9
push ebp
call sub.WS2_32.dll_closesocket
mov eax, 0xfffffffa
jmp 0x100db285
mov edi, dword [esp + 0x24]
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x100daf02
sub eax, edx
push ebx
mov esi, eax
push esi
push edi
push ebp
call sub.WS2_32.dll_send
cmp eax, esi
je 0x100daf2a
push ebp
call sub.WS2_32.dll_closesocket
mov eax, 0xfffffff9
jmp 0x100db285
xor eax, eax
push 0x3f
lea edx, [esp + 0x6d]
push ebx
push edx
xor edi, edi
mov dword [esp + 0x20], 0xffffffff
mov byte [esp + 0x64], bl
mov dword [esp + 0x65], eax
mov dword [esp + 0x69], eax
mov dword [esp + 0x6d], eax
mov word [esp + 0x71], ax
mov byte [esp + 0x73], al
mov byte [esp + 0x74], bl
call fcn.10112c40
push 0x2000
lea eax, [esp + 0x278]
push ebx
push eax
call fcn.10112c40
add esp, 0x18
xor esi, esi
jmp 0x100daf80
push ebx
push 1
lea ecx, [esp + edi + 0x270]
push ecx
push ebp
call sub.WS2_32.dll_recv
add edi, eax
cmp eax, ebx
jle 0x100dafba
cmp edi, 4
jle 0x100dafb1
mov eax, dword [esp + edi + 0x264]
cmp eax, 0xd0a0d0a
je 0x100dafca
cmp eax, 0xa0d0a0d
je 0x100dafca
inc esi
cmp esi, 0x1f40
jl 0x100daf80
push ebp
call sub.WS2_32.dll_closesocket
mov eax, 0xfffffff8
jmp 0x100db285
push 0x3f
lea edx, [esp + 0xad]
push ebx
push edx
mov byte [esp + 0xb4], bl
call fcn.10112c40
add esp, 0xc
lea eax, [esp + 0xa8]
push eax
lea ebx, [esp + 0x26c]
call 0x10c599b8
mov esi, eax
cmp esi, 0xc8
je 0x100db037
lea ecx, [esi - 0x12c]
cmp ecx, 0x63
ja 0x100db028
mov edx, dword [esp + 0x227c]
mov eax, dword [esp + 0x1c]
push edx
push eax
push str.Location
push edi
mov ecx, ebx
push ecx
call 0x10c596c8
push ebp
call sub.WS2_32.dll_closesocket
mov eax, esi
neg eax
jmp 0x100db285
push 0x10
lea edx, [esp + 0x5c]
push edx
push str.Content_Length
push edi
lea eax, [esp + 0x278]
push eax
call 0x10c596c8
cmp byte [esp + 0x58], 0
je 0x100db070
lea ecx, [esp + 0x58]
push ecx
mov edi, 1
call fcn.1010a7fa
add esp, 4
mov dword [esp + 0x14], eax
jmp 0x100db0a5
push 0x40
lea edx, [esp + 0x6c]
push edx
push str.Transfer_Encoding
push edi
lea eax, [esp + 0x278]
push eax
call 0x10c596c8
lea ecx, [esp + 0x68]
push str.chunked
push ecx
call fcn.10109800
add esp, 8
mov edi, eax
neg edi
sbb edi, edi
add edi, 3
xor esi, esi
xor ebx, ebx
cmp edi, 1
jne 0x100db14d
push 0x2000
lea edx, [esp + 0x26c]
push ebx
push edx
call fcn.10112c40
add esp, 0xc
cmp dword [esp + 0x14], ebx
jle 0x100db27d
mov eax, dword [esp + 0x14]
sub eax, ebx
cmp eax, 0x2000
jle 0x100db0e4
mov eax, 0x2000
push 0
push eax
lea eax, [esp + 0x270]
push eax
push ebp
call sub.WS2_32.dll_recv
cmp eax, 1
jl 0x100db27d
mov edx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x227c]
lea edi, [esi + eax]
add ebx, eax
add edx, esi
lea ecx, [esp + 0x268]
cmp edi, ebp
ja 0x100db137
push eax
push ecx
push edx
call fcn.10112cc0
mov ebp, dword [esp + 0x24]
add esp, 0xc
cmp ebx, dword [esp + 0x14]
mov esi, edi
jl 0x100db0d2
jmp 0x100db27d
mov eax, ebp
sub eax, esi
push eax
push ecx
push edx
call fcn.10112cc0
add esp, 0xc
mov esi, ebp
jmp 0x100db279
cmp edi, 2
jne 0x100db27d
mov ax, word [0x1016d4e4]
mov cl, byte [0x1016d4e6]
mov word [esp + 0x48], ax
xor eax, eax
push ebp
lea ebx, [esp + 0x4e]
mov byte [esp + 0x4e], cl
mov dword [esp + 0x4f], eax
mov dword [esp + 0x53], eax
mov dword [esp + 0x57], eax
mov byte [esp + 0x5b], al
call fcn.100d08e0
add esp, 4
cmp eax, 1
jl 0x100db27d
lea edx, [esp + 0x48]
push edx
call fcn.100db5a0
mov ebp, eax
add esp, 4
cmp ebp, 1
jl 0x100db279
xor ebx, ebx
lea ecx, [ecx]
mov eax, ebp
sub eax, ebx
cmp eax, 0x2000
jle 0x100db1c0
mov eax, 0x2000
mov ecx, dword [esp + 0x18]
push 0
push eax
lea eax, [esp + 0x270]
push eax
push ecx
call sub.WS2_32.dll_recv
cmp eax, 1
jl 0x100db22b
mov ecx, dword [esp + 0x227c]
lea edi, [esi + eax]
add ebx, eax
cmp edi, ecx
ja 0x100db20a
push eax
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x26c]
push edx
add eax, esi
push eax
call fcn.10112cc0
add esp, 0xc
cmp ebx, ebp
mov esi, edi
jl 0x100db1b0
jmp 0x100db22b
mov edx, dword [esp + 0x1c]
sub ecx, esi
push ecx
lea ecx, [esp + 0x26c]
push ecx
add edx, esi
push edx
call fcn.10112cc0
mov esi, dword [esp + 0x2288]
add esp, 0xc
mov ecx, dword [esp + 0x18]
call fcn.100ba9b0
test al, al
je 0x100db279
mov ax, word [0x1016d4e4]
mov edx, dword [esp + 0x18]
mov cl, byte [0x1016d4e6]
mov word [esp + 0x48], ax
xor eax, eax
push edx
lea ebx, [esp + 0x4e]
mov byte [esp + 0x4e], cl
mov dword [esp + 0x4f], eax
mov dword [esp + 0x53], eax
mov dword [esp + 0x57], eax
mov byte [esp + 0x5b], al
call fcn.100d08e0
add esp, 4
cmp eax, 1
jge 0x100db193
mov ebp, dword [esp + 0x18]
push ebp
call sub.WS2_32.dll_closesocket
mov eax, esi
mov ecx, dword [esp + 0x226c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1010ccf3
add esp, 0x2264
ret 8