Function at 0x4443e0
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create thread
Create udp socket
Send data
Send data on socket
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff744
push esi
push edi
mov eax, 0x5fe1e0
call fcn.0050acb0
mov esi, 0x5f1dc4
lea edi, [ebp - 0x884]
mov ecx, pe_nt_image_headers32
rep movsd dword es:[edi], dword [esi]
xor eax, eax
mov dword [ebp - 0x74], eax
mov word [ebp - 0x60], 8
lea edx, [ebp - 0x10]
push edx
call fcn.00444e58
pop ecx
add dword [ebp - 0x54], 3
mov word [ebp - 0x60], 0x14
mov word [ebp - 0x76], 0
mov dword [ebp - 0x7c], 0x40000
mov byte [0x5efa34], 1
push dword [0x5ef9f4]
push str._n_____runConnect__11_____gSocket__d______________n
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 0xc
cmp dword [0x5ef9f4], 0xffffffff
jne 0x444733
mov byte [0x5efa34], 0
push 0
push 1
push 2
call sub.WSOCK32.DLL_socket
mov dword [0x5ef9f4], eax
push dword [0x5ef9f4]
push str._n_____runConnect__22_____gSocket__d______________n
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 0xc
cmp dword [0x5ef9f4], 0xffffffff
jne 0x444573
call sub.WSOCK32.DLL_WSAGetLastError
push eax
mov word [ebp - 0x60], 0x20
push 0x15e
lea eax, [ebp - 0x14]
call fcn.0040177c
push eax
inc dword [ebp - 0x54]
call fcn.00466b24
add esp, 8
lea eax, [ebp - 0x14]
call fcn.00401a38
push eax
push 0x5fc94b
push 0x100
mov edx, dword [ebp + 8]
add edx, 0x34
push edx
call fcn.0050e8ec
add esp, 0x14
dec dword [ebp - 0x54]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.00545e70
mov ecx, dword [ebp + 8]
add ecx, 0x34
push ecx
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 8
push 0
mov word [ebp - 0x60], 0x2c
mov edx, dword [ebp + 8]
add edx, 0x34
lea eax, [ebp - 0x18]
call fcn.00545d10
inc dword [ebp - 0x54]
lea ecx, [ebp - 0x18]
push ecx
push 2
lea eax, [ebp - 0x10]
push eax
call fcn.00441e44
add esp, 0x10
dec dword [ebp - 0x54]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.00545e70
lea ecx, [ebp - 0x10]
push ecx
call fcn.0045b428
pop ecx
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00545e70
mov ecx, dword [ebp - 0x70]
mov dword fs:[0], ecx
jmp 0x444e4f
mov word [ebp - 0x894], 2
mov eax, dword [ebp + 0xc]
mov dx, word [eax + 0xc]
push edx
call sub.WSOCK32.DLL_htons
mov word [ebp - 0x892], ax
mov eax, dword [ebp + 0xc]
add eax, 8
call fcn.00401a38
push eax
call sub.WSOCK32.DLL_inet_addr
mov dword [ebp - 0x890], eax
xor edx, edx
mov dword [ebp - 0x80], edx
mov word [ebp - 0x60], 0x14
push 4
lea ecx, [ebp - 0x7c]
push ecx
push 4
push 0xffff
push dword [0x5ef9f4]
call sub.WSOCK32.DLL_setsockopt
test eax, eax
jge 0x4445e3
push str.Set_gHeartBeatSocket_option_SO_REUSEADDR_failed._n
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 8
jmp 0x4445f6
push str.Set_gHeartBeatSocket_option_SO_REUSEADDR_successfully._n
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 8
push 0x10
lea eax, [ebp - 0x894]
push eax
push dword [0x5ef9f4]
call sub.WSOCK32.DLL_connect
mov dword [ebp - 0x80], eax
push dword [ebp - 0x80]
push str._n_____runConnect___connect____iRet__d______________n
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 0xc
cmp dword [ebp - 0x80], 0xffffffff
jne 0x44470e
call sub.WSOCK32.DLL_WSAGetLastError
push eax
mov word [ebp - 0x60], 0x38
push 0x15f
lea eax, [ebp - 0x1c]
call fcn.0040177c
push eax
inc dword [ebp - 0x54]
call fcn.00466b24
add esp, 8
lea eax, [ebp - 0x1c]
call fcn.00401a38
push eax
push 0x5fc9f0
push 0x100
mov edx, dword [ebp + 8]
add edx, 0x34
push edx
call fcn.0050e8ec
add esp, 0x14
dec dword [ebp - 0x54]
lea eax, [ebp - 0x1c]
mov edx, 2
call fcn.00545e70
mov ecx, dword [ebp + 8]
add ecx, 0x34
push ecx
call fcn.0045c640
push eax
call fcn.0045d390
add esp, 8
push 0
mov word [ebp - 0x60], 0x44
mov edx, dword [ebp + 8]
add edx, 0x34
lea eax, [ebp - 0x20]
call fcn.00545d10
inc dword [ebp - 0x54]
lea ecx, [ebp - 0x20]
push ecx
push 2
lea eax, [ebp - 0x10]
push eax
call fcn.00441e44
add esp, 0x10
dec dword [ebp - 0x54]
lea eax, [ebp - 0x20]
mov edx, 2
call fcn.00545e70
lea ecx, [ebp - 0x10]
push ecx
call fcn.0045b428
pop ecx
push dword [0x5ef9f4]
call sub.WSOCK32.DLL_closesocket
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00545e70
mov ecx, dword [ebp - 0x70]
mov dword fs:[0], ecx
jmp 0x444e4f
mov eax, dword [ebp + 0xc]
push dword [eax + 0xc]
mov eax, dword [ebp + 0xc]
add eax, 8
call fcn.00401a38
push eax
push str.Connect_to_IP:_s__port:_d
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 0x10
mov esi, 0x5f25c4
lea edi, [ebp - 0x8a8]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov word [ebp - 0x60], 0x14
push 0x19
push 0
push 0x5ef9cc
call fcn.0050a57c
add esp, 0xc
mov eax, dword [ebp + 0xc]
add eax, 0x14
call fcn.00401a38
push eax
mov eax, dword [ebp + 0xc]
add eax, 0x10
call fcn.00401a38
push eax
push 0x10
lea edx, [ebp - 0x8a8]
push edx
call fcn.00462940
add esp, 0x10
lea ecx, [ebp - 0x8a8]
push ecx
push 8
push 0x5ef9e5
call fcn.004629c4
add esp, 0xc
lea eax, [ebp - 0x8a8]
push eax
push 0x5ef9e5
push 0x5ef9cc
call fcn.00462a2c
add esp, 0xc
push 0
push 0x5fca26
push str.connection
push 0x5fca10
push 0x5ef9cc
lea edx, [ebp - 0x884]
push edx
push dword [ebp + 8]
call fcn.00442ca8
add esp, 0x1c
mov dword [ebp - 0x84], eax
push 0
push dword [ebp - 0x84]
lea ecx, [ebp - 0x884]
push ecx
push dword [0x5ef9f4]
call sub.WSOCK32.DLL_send
mov dword [ebp - 0x74], eax
inc eax
jne 0x4448dd
call sub.WSOCK32.DLL_WSAGetLastError
push eax
mov word [ebp - 0x60], 0x50
push 0x160
lea eax, [ebp - 0x24]
call fcn.0040177c
push eax
inc dword [ebp - 0x54]
call fcn.00466b24
add esp, 8
lea eax, [ebp - 0x24]
call fcn.00401a38
push eax
push 0x5fca2b
push 0x100
mov edx, dword [ebp + 8]
add edx, 0x34
push edx
call fcn.0050e8ec
add esp, 0x14
dec dword [ebp - 0x54]
lea eax, [ebp - 0x24]
mov edx, 2
call fcn.00545e70
mov ecx, dword [ebp + 8]
add ecx, 0x34
push ecx
call fcn.0045c640
push eax
call fcn.0045d390
add esp, 8
push 2
mov word [ebp - 0x60], 0x5c
mov edx, dword [ebp + 8]
add edx, 0x34
lea eax, [ebp - 0x28]
call fcn.00545d10
inc dword [ebp - 0x54]
lea ecx, [ebp - 0x28]
push ecx
push 2
lea eax, [ebp - 0x10]
push eax
call fcn.00441e44
add esp, 0x10
dec dword [ebp - 0x54]
lea eax, [ebp - 0x28]
mov edx, 2
call fcn.00545e70
lea ecx, [ebp - 0x10]
push ecx
call fcn.0045b428
pop ecx
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00545e70
mov ecx, dword [ebp - 0x70]
mov dword fs:[0], ecx
jmp 0x444e4f
lea eax, [ebp - 0x884]
push eax
push 0x5fca31
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 0xc
push dword [ebp - 0x74]
push 0x5fca3e
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 0xc
push 0x800
push 0
lea edx, [ebp - 0x884]
push edx
call fcn.0050a57c
add esp, 0xc
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0x800
lea ecx, [ebp - 0x884]
push ecx
push dword [ebp + 8]
call fcn.00443ac4
add esp, 0x18
mov dword [ebp - 0x74], eax
inc eax
jne 0x444a20
call sub.WSOCK32.DLL_WSAGetLastError
push eax
mov word [ebp - 0x60], 0x68
push 0x161
lea eax, [ebp - 0x2c]
call fcn.0040177c
push eax
inc dword [ebp - 0x54]
call fcn.00466b24
add esp, 8
lea eax, [ebp - 0x2c]
call fcn.00401a38
push eax
push 0x5fca4b
push 0x100
mov edx, dword [ebp + 8]
add edx, 0x34
push edx
call fcn.0050e8ec
add esp, 0x14
dec dword [ebp - 0x54]
lea eax, [ebp - 0x2c]
mov edx, 2
call fcn.00545e70
mov ecx, dword [ebp + 8]
add ecx, 0x34
push ecx
call fcn.0045c640
push eax
call fcn.0045d390
add esp, 8
push 2
mov word [ebp - 0x60], 0x74
mov edx, dword [ebp + 8]
add edx, 0x34
lea eax, [ebp - 0x30]
call fcn.00545d10
inc dword [ebp - 0x54]
lea ecx, [ebp - 0x30]
push ecx
push 2
lea eax, [ebp - 0x10]
push eax
call fcn.00441e44
add esp, 0x10
dec dword [ebp - 0x54]
lea eax, [ebp - 0x30]
mov edx, 2
call fcn.00545e70
lea ecx, [ebp - 0x10]
push ecx
call fcn.0045b428
pop ecx
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00545e70
mov ecx, dword [ebp - 0x70]
mov dword fs:[0], ecx
jmp 0x444e4f
cmp dword [ebp - 0x74], 0
jne 0x444a98
push 0
mov word [ebp - 0x60], 0x80
push 0x13b
lea eax, [ebp - 0x34]
call fcn.0040177c
push eax
inc dword [ebp - 0x54]
call fcn.00466b24
add esp, 8
lea edx, [ebp - 0x34]
push edx
push 2
lea ecx, [ebp - 0x10]
push ecx
call fcn.00441e44
add esp, 0x10
dec dword [ebp - 0x54]
lea eax, [ebp - 0x34]
mov edx, 2
call fcn.00545e70
lea ecx, [ebp - 0x10]
push ecx
call fcn.0045b428
pop ecx
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00545e70
mov ecx, dword [ebp - 0x70]
mov dword fs:[0], ecx
jmp 0x444e4f
push 0x5fca51
lea eax, [ebp - 0x884]
push eax
call fcn.00441e6b
add esp, 8
mov word [ebp - 0x76], ax
mov dx, word [ebp - 0x76]
push edx
push str.______zjz______errorid__d_____
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 0xc
cmp word [ebp - 0x76], 0xc8
jne 0x444cc9
push 0x80
lea ecx, [ebp - 0x884]
push ecx
push dword [ebp + 8]
call fcn.00442d18
add esp, 0xc
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x884]
push eax
push str.__zjz____recv_data:_s
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 0xc
cmp dword [ebp - 0x74], 0x10
jne 0x444c53
push str.Initialize_connection_success.
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 8
mov esi, 0x5f25d5
lea edi, [ebp - 0x8bc]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov word [ebp - 0x60], 0x14
push 0x10
push 0x5efa35
lea eax, [ebp - 0x8bc]
push eax
call fcn.0050a50c
add esp, 0xc
lea edx, [ebp - 0x8bc]
push edx
push 8
push 0x5ef9e5
call fcn.004629c4
add esp, 0xc
push 0x19
push 0
push 0x5ef9cc
call fcn.0050a57c
add esp, 0xc
lea ecx, [ebp - 0x8bc]
push ecx
push 0x5ef9e5
push 0x5ef9cc
call fcn.00462a2c
add esp, 0xc
cmp byte [0x5efa34], 0
jne 0x444bb8
push 0xf
mov eax, dword [ebp + 0xc]
add eax, 8
call fcn.00401a38
push eax
push str.0.0.0.0
call fcn.0050aa08
add esp, 0xc
push dword [0x5efa08]
push dword [0x5efa0c]
push str.before_gInformPortListenThread_:gInformAliveSocket__d___gInformPortSocket__d_
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 0x10
xor edx, edx
mov dword [0x5efa10], edx
xor ecx, ecx
mov dword [0x5efa14], ecx
xor eax, eax
mov dword [0x5efa18], eax
push 0
push 0
push 0
push 0x443290
push 0
push 0
call sub.KERNEL32.DLL_CreateThread
mov dword [0x5efa00], eax
push 0
push 0
push 0
push 0x443548
push 0
push 0
call sub.KERNEL32.DLL_CreateThread
mov dword [0x5efa04], eax
push str.after_gInformPortHandleThread...
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 8
mov byte [ebp - 0xa], 0
lea edx, [ebp - 0x10]
push edx
call fcn.0045b428
pop ecx
push 1
push dword [ebp + 8]
call fcn.00444310
add esp, 8
jmp 0x444e2f
push str.Initialize_connection_failed.
call fcn.0045c640
push eax
call fcn.0045d448
add esp, 8
push dword [ebp + 8]
call fcn.004439b8
pop ecx
push dword [ebp + 8]
call fcn.00443980
pop ecx
mov word [ebp - 0x60], 0x8c
mov edx, 0x5fcb3e
lea eax, [ebp - 0x38]
call fcn.00545d10
inc dword [ebp - 0x54]
lea edx, [ebp - 0x38]
lea eax, [ebp - 4]
call fcn.00545ea0
dec dword [ebp - 0x54]
lea eax, [ebp - 0x38]
mov edx, 2
call fcn.00545e70
mov byte [ebp - 0xa], 2
lea ecx, [ebp - 0x10]
push ecx
call fcn.0045b428
pop ecx
push 0
push dword [ebp + 8]
call fcn.00444310
add esp, 8
jmp 0x444e2f
cmp word [ebp - 0x76], 0x1f7
jne 0x444dd9
push dword [ebp + 8]
call fcn.004439b8
pop ecx
push dword [ebp + 8]
call fcn.00443980
pop ecx
push 0
push 0x1fc
lea eax, [ebp - 0x40]
call fcn.0040177c
push eax
inc dword [ebp - 0x54]
call fcn.00466b24
add esp, 8
lea eax, [ebp - 0x40]
call fcn.00401a38
push eax
mov word [ebp - 0x60], 0x98
push 0x3ea
lea eax, [ebp - 0x3c]
call fcn.0040177c
push eax
inc dword [ebp - 0x54]
call fcn.00466b24
add esp, 8
lea eax, [ebp - 0x3c]
call fcn.00401a38
mov edx, eax
mov ecx, dword [0x64f500]
mov eax, dword [ecx]
pop ecx
call fcn.00545c5c
dec dword [ebp - 0x54]
lea eax, [ebp - 0x40]
mov edx, 2
call fcn.00545e70
dec dword [ebp - 0x54]
lea eax, [ebp - 0x3c]
mov edx, 2
call fcn.00545e70
mov cx, word [ebp - 0x76]
push ecx
mov word [ebp - 0x60], 0xa4
push 0x3ea
lea eax, [ebp - 0x44]
call fcn.0040177c
push eax
inc dword [ebp - 0x54]
call fcn.00466b24
add esp, 8
lea eax, [ebp - 0x44]
call fcn.00401a38
mov edx, eax
lea eax, [ebp - 0x48]
call fcn.00545d10
inc dword [ebp - 0x54]
lea edx, [ebp - 0x48]
push edx
push 2
lea ecx, [ebp - 0x10]
push ecx
call fcn.00441e44
add esp, 0x10
dec dword [ebp - 0x54]
lea eax, [ebp - 0x48]
mov edx, 2
call fcn.00545e70
dec dword [ebp - 0x54]
lea eax, [ebp - 0x44]
mov edx, 2
call fcn.00545e70
lea ecx, [ebp - 0x10]
push ecx
call fcn.0045b428
pop ecx
jmp 0x444e2f
push dword [ebp + 8]
call fcn.004439b8
pop ecx
push dword [ebp + 8]
call fcn.00443980
pop ecx
mov ax, word [ebp - 0x76]
push eax
mov word [ebp - 0x60], 0xb0
lea eax, [ebp - 0x4c]
xor edx, edx
call fcn.00545e2c
inc dword [ebp - 0x54]
lea ecx, [ebp - 0x4c]
push ecx
push 2
lea eax, [ebp - 0x10]
push eax
call fcn.00441e44
add esp, 0x10
dec dword [ebp - 0x54]
lea eax, [ebp - 0x4c]
mov edx, 2
call fcn.00545e70
lea ecx, [ebp - 0x10]
push ecx
call fcn.0045b428
pop ecx
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
dec dword [ebp - 0x54]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00545e70
mov ecx, dword [ebp - 0x70]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret