Function at 0x42a4a0
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create thread
Create udp socket
Get socket status
Receive data
Receive data on socket
Resolve dns
Send data
Send data on socket
Send http request
Send http request with host header
Set socket configuration

Disassembly:
mov eax, 0x22c0
call fcn.0044f9c0
mov eax, dword [0x4835f0]
xor eax, esp
mov dword [esp + 0x22bc], eax
mov eax, dword [esp + 0x22c4]
push ebx
push ebp
push esi
push edi
push str.http:__
push eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x2c], edx
mov byte [esp + 0x1f], 0
call fcn.0044c860
mov esi, eax
add esp, 8
test esi, esi
je 0x42a709
add esi, 7
lea edi, [esi + 7]
push 0x475594
push edi
call fcn.0044c860
add esp, 8
test eax, eax
je 0x42a526
mov edi, eax
sub edi, esi
push edi
push esi
lea eax, [esp + 0x260]
push 0x65
push eax
call fcn.0044cdbc
add esp, 0x10
mov byte [esp + edi + 0x258], 0
jmp 0x42a539
push edi
lea ecx, [esp + 0x25c]
push 0x65
push ecx
call fcn.0044bced
add esp, 0xc
lea edx, [esp + 0x258]
push 0x475598
push edx
call fcn.0044c860
add esp, 8
test eax, eax
je 0x42a563
mov byte [eax], 0
inc eax
push eax
call fcn.0044c8fc
add esp, 4
mov esi, eax
jmp 0x42a568
mov esi, 0x50
push 0
mov edi, 1
push edi
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov ebx, eax
mov dword [esp + 0x18], ebx
cmp ebx, 0xffffffff
je 0x42a709
lea eax, [esp + 0x28]
push eax
push 0
lea ecx, [esp + 0x260]
push ecx
push 0x42a8b0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x42a709
xor eax, eax
mov dword [esp + 0x248], eax
mov dword [esp + 0x24c], eax
mov dword [esp + 0x250], eax
mov dword [esp + 0x254], eax
lea eax, [esp + 0x258]
mov edx, 2
push eax
mov word [esp + 0x24c], dx
call dword [sym.imp.WS2_32.dll_gethostbyname]
test eax, eax
je 0x42a600
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx]
mov eax, dword [edx]
push esi
mov dword [esp + 0x250], eax
call dword [sym.imp.WS2_32.dll_htons]
mov ebp, dword [sym.imp.WS2_32.dll_ioctlsocket]
mov word [esp + 0x24a], ax
lea eax, [esp + 0x20]
push eax
push 0x8004667e
push ebx
mov dword [esp + 0x2c], edi
call ebp
push 0x10
lea ecx, [esp + 0x24c]
push ecx
push ebx
mov dword [esp + 0x150], ebx
mov dword [esp + 0x14c], edi
call dword [sym.imp.WS2_32.dll_connect]
lea edx, [esp + 0x30]
push edx
push 0
lea eax, [esp + 0x40]
push eax
push 0
mov ecx, 0x41
lea esi, [esp + 0x150]
lea edi, [esp + 0x48]
push 1
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0x7a120
rep movsd dword es:[edi], dword [esi]
call dword [sym.imp.WS2_32.dll_select]
lea ecx, [esp + 0x38]
push ecx
push ebx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
jne 0x42a6a1
push ebx
call dword [sym.imp.WS2_32.dll_closesocket]
mov al, 0xfe
jmp 0x42a869
lea edx, [esp + 0x20]
push edx
push 0x8004667e
push ebx
mov dword [esp + 0x2c], 0
call ebp
mov ecx, dword [esp + 0x2c]
lea eax, [esp + 0x258]
push eax
push ecx
push str.GET__s_HTTP_1.1_r_nHost:__s_r_n_r_n
lea edx, [esp + 0x12d4]
call fcn.0042acb0
lea eax, [esp + 0x12d4]
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42a6e1
sub eax, edx
push 0
mov esi, eax
push esi
lea edx, [esp + 0x12d0]
push edx
push ebx
call dword [sym.imp.WS2_32.dll_send]
cmp eax, esi
je 0x42a710
push ebx
call dword [sym.imp.WS2_32.dll_closesocket]
or al, 0xff
jmp 0x42a869
mov edi, dword [esp + 0x28]
xor ebp, ebp
xor bl, bl
jmp 0x42a720
mov ecx, dword [esp + 0x18]
push 0
push 0x1000
lea eax, [esp + 0x2c8]
push eax
push ecx
call dword [sym.imp.WS2_32.dll_recv]
lea edx, [esp + 0x2c0]
mov esi, eax
push str.404_Not_Found
push edx
mov byte [esp + esi + 0x2c8], 0
call fcn.0044c860
add esp, 8
test eax, eax
jne 0x42a69a
lea eax, [esp + 0x2c0]
test bl, bl
je 0x42a786
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
push esi
push eax
add edx, ebp
push edx
call fcn.00452f20
add esp, 0xc
add ebp, esi
jmp 0x42a84a
push str.Content_Length:
push eax
call fcn.0044c860
mov ebp, eax
add esp, 8
test ebp, ebp
jne 0x42a7c0
lea ecx, [esp + 0x2c0]
push str.Transfer_Encoding:_chunked
push ecx
call fcn.0044c860
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x42a882
mov byte [esp + 0x17], 1
jmp 0x42a7c7
cmp byte [esp + 0x17], 0
je 0x42a7fd
push 0x10
add ebp, 0x36
push 0
push ebp
call fcn.0044cb36
push 0x4755f8
push ebp
mov edi, eax
call fcn.0044c860
add esp, 0x14
test eax, eax
je 0x42a891
add eax, 2
lea edx, [esp + 0x2c0]
sub edx, eax
add esi, edx
push edi
jmp 0x42a830
add ebp, 0x10
push ebp
call fcn.0044c8fc
lea ecx, [esp + 0x2c4]
push str._r_n_r_n
push ecx
mov edi, eax
call fcn.0044c860
add esp, 0xc
test eax, eax
je 0x42a8a0
add eax, 4
lea edx, [esp + 0x2c0]
sub edx, eax
add esi, edx
push esi
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
push eax
mov dword [ecx], edi
mov eax, dword [edx]
push eax
mov bl, 1
call fcn.00452f20
mov ebp, esi
add esp, 0xc
cmp edi, ebp
jg 0x42a720
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov edx, dword [ecx]
push eax
mov byte [edi + edx], 0
call dword [sym.imp.WS2_32.dll_closesocket]
mov al, 1
mov ecx, dword [esp + 0x22cc]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0044a6e6
add esp, 0x22c0
ret
mov ecx, dword [esp + 0x18]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
mov al, 0xfe
jmp 0x42a869
mov edx, dword [esp + 0x18]
push edx
call dword [sym.imp.WS2_32.dll_closesocket]
mov al, 0xfe
jmp 0x42a869
mov eax, dword [esp + 0x18]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
mov al, 0xfe
jmp 0x42a869