Function at 0x439970
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket
Send http request

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1fc
mov eax, dword [0x55d68c]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x1fc], ecx
mov dword [ebp - 0x78], 0x10
mov eax, 1
test eax, eax
je 0x439eaa
lea ecx, [ebp - 0x78]
push ecx
mov edx, dword [ebp - 0x1fc]
add edx, 0xf0
push edx
mov eax, dword [ebp - 0x1fc]
mov ecx, dword [eax + 0x104]
push ecx
call dword [sym.imp.WS2_32.dll_accept]
mov edx, dword [ebp - 0x1fc]
mov dword [edx + 0x100], eax
mov eax, dword [ebp - 0x1fc]
cmp dword [eax + 0x100], 0xffffffff
jne 0x4399f0
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.accept_failed_with_socket__:__d
call fcn.00456d47
add esp, 8
push 0
push 0x100000
mov ecx, dword [ebp - 0x1fc]
mov edx, dword [ecx + 0x10c]
push edx
mov eax, dword [ebp - 0x1fc]
mov ecx, dword [eax + 0x100]
push ecx
call dword [sym.imp.WS2_32.dll_recv]
mov dword [ebp - 0x7c], eax
mov edx, dword [ebp - 0x1fc]
mov eax, dword [edx + 0x10c]
mov byte [eax + 0xfffff], 0
cmp dword [ebp - 0x7c], 0
jle 0x439e16
lea ecx, [ebp - 0xb8]
call fcn.00402b30
sub esp, 0x1c
mov ecx, esp
push 0x54d770
call fcn.00402b60
lea ecx, [ebp - 0x9c]
push ecx
mov ecx, dword [ebp - 0x1fc]
add ecx, 4
call fcn.00434fd0
sub esp, 0x1c
mov ecx, esp
push 0x54d780
call fcn.00402b60
lea edx, [ebp - 0x10c]
push edx
mov ecx, dword [ebp - 0x1fc]
add ecx, 4
call fcn.00434fd0
sub esp, 0x1c
mov ecx, esp
push 0x54b526
call fcn.00402b60
lea eax, [ebp - 0xd4]
push eax
mov ecx, dword [ebp - 0x1fc]
add ecx, 4
call fcn.00434fd0
lea ecx, [ebp - 0xf0]
push ecx
mov ecx, dword [ebp - 0x1fc]
add ecx, 4
call fcn.004358e0
push 0x54d784
lea ecx, [ebp - 0xf0]
call fcn.00427410
test eax, eax
jne 0x439c3a
lea ecx, [ebp - 0x9c]
call fcn.004324d0
test eax, eax
jne 0x439aff
push 0x54d788
lea ecx, [ebp - 0xb8]
call fcn.00408070
jmp 0x439c35
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x56bd88], eax
push 0x56bcb8
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ecx, [ebp - 0x128]
call fcn.00402b30
mov edx, dword [ebp - 0x1fc]
add edx, 4
push edx
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0x10c]
push ecx
call fcn.0042e260
add esp, 0xc
push 0x56bcb8
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x54d7b0
lea ecx, [ebp - 0x144]
call fcn.00402b60
push 0x54d7ac
lea ecx, [ebp - 0x198]
call fcn.00402b60
push 0x54d800
lea ecx, [ebp - 0x160]
call fcn.00402b60
lea edx, [ebp - 0x160]
push edx
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp - 0x198]
push ecx
lea edx, [ebp - 0x20]
push edx
call fcn.004129b0
add esp, 0xc
push eax
lea eax, [ebp - 0x17c]
push eax
call fcn.00425d50
add esp, 0xc
lea ecx, [ebp - 0x20]
call fcn.00402c40
lea ecx, [ebp - 0x17c]
push ecx
lea edx, [ebp - 0x9c]
push edx
lea eax, [ebp - 0x144]
push eax
lea ecx, [ebp - 0x3c]
push ecx
call fcn.004129b0
add esp, 0xc
push eax
lea edx, [ebp - 0x58]
push edx
call fcn.00425d50
add esp, 0xc
push eax
lea ecx, [ebp - 0xb8]
call fcn.004063a0
lea ecx, [ebp - 0x58]
call fcn.00402c40
lea ecx, [ebp - 0x3c]
call fcn.00402c40
lea ecx, [ebp - 0x17c]
call fcn.00402c40
lea ecx, [ebp - 0x160]
call fcn.00402c40
lea ecx, [ebp - 0x198]
call fcn.00402c40
lea ecx, [ebp - 0x144]
call fcn.00402c40
lea ecx, [ebp - 0x128]
call fcn.00402c40
jmp 0x439d48
push 0x54d804
lea ecx, [ebp - 0xf0]
call fcn.00427410
test eax, eax
jne 0x439d38
lea eax, [ebp - 0x1b4]
push eax
mov ecx, dword [ebp - 0x1fc]
add ecx, 4
call fcn.00435900
lea ecx, [ebp - 0x1b4]
call fcn.004324d0
test eax, eax
jne 0x439c8b
push 0x54d80c
lea ecx, [ebp - 0xb8]
call fcn.00408070
jmp 0x439d2b
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x56bd88], eax
push 0x56bcb8
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ecx, [ebp - 0x1d0]
call fcn.00402b30
mov ecx, dword [ebp - 0x1fc]
add ecx, 4
push ecx
lea edx, [ebp - 0x1d0]
push edx
lea eax, [ebp - 0x10c]
push eax
call fcn.0042e260
add esp, 0xc
push 0x56bcb8
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push 0x54d830
lea ecx, [ebp - 0x1ec]
call fcn.00402b60
lea ecx, [ebp - 0x1d0]
push ecx
lea edx, [ebp - 0x1ec]
push edx
lea eax, [ebp - 0x74]
push eax
call fcn.004129b0
add esp, 0xc
push eax
lea ecx, [ebp - 0xb8]
call fcn.004063a0
lea ecx, [ebp - 0x74]
call fcn.00402c40
lea ecx, [ebp - 0x1ec]
call fcn.00402c40
lea ecx, [ebp - 0x1d0]
call fcn.00402c40
lea ecx, [ebp - 0x1b4]
call fcn.00402c40
jmp 0x439d48
push 0x54d880
lea ecx, [ebp - 0xb8]
call fcn.00408070
lea ecx, [ebp - 0xb8]
call fcn.00402c60
push eax
push str.response__s
call fcn.0041a270
add esp, 8
push 0
lea ecx, [ebp - 0xb8]
call fcn.004324d0
push eax
lea ecx, [ebp - 0xb8]
call fcn.00402c60
push eax
mov ecx, dword [ebp - 0x1fc]
mov edx, dword [ecx + 0x100]
push edx
call dword [sym.imp.WS2_32.dll_send]
mov ecx, dword [ebp - 0x1fc]
add ecx, 4
call fcn.004349c0
mov eax, dword [ebp - 0x1fc]
mov ecx, dword [ebp - 0x7c]
mov dword [eax + 0x110], ecx
push 0x100000
push 0
mov edx, dword [ebp - 0x1fc]
mov eax, dword [edx + 0x10c]
push eax
call fcn.004611e0
add esp, 0xc
mov ecx, dword [ebp - 0x1fc]
mov edx, dword [ecx + 0x100]
push edx
call dword [sym.imp.WS2_32.dll_closesocket]
lea ecx, [ebp - 0xf0]
call fcn.00402c40
lea ecx, [ebp - 0xd4]
call fcn.00402c40
lea ecx, [ebp - 0x10c]
call fcn.00402c40
lea ecx, [ebp - 0x9c]
call fcn.00402c40
lea ecx, [ebp - 0xb8]
call fcn.00402c40
jmp 0x439e9d
cmp dword [ebp - 0x7c], 0
jne 0x439e5a
push str.Connection_closed_n
call fcn.0041a270
add esp, 4
push 0x100000
push 0
mov eax, dword [ebp - 0x1fc]
mov ecx, dword [eax + 0x10c]
push ecx
call fcn.004611e0
add esp, 0xc
mov edx, dword [ebp - 0x1fc]
mov eax, dword [edx + 0x100]
push eax
call dword [sym.imp.WS2_32.dll_closesocket]
jmp 0x439e9d
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.recv_failed:__d_n
call fcn.0041a270
add esp, 8
push 0x100000
push 0
mov ecx, dword [ebp - 0x1fc]
mov edx, dword [ecx + 0x10c]
push edx
call fcn.004611e0
add esp, 0xc
mov eax, dword [ebp - 0x1fc]
mov ecx, dword [eax + 0x100]
push ecx
call dword [sym.imp.WS2_32.dll_closesocket]
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x439990
mov eax, 1
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00455328
mov esp, ebp
pop ebp
ret