Function at 0x4d295a
Capabilities:
Send data
Send data on socket
Terminate process

Disassembly:
mov eax, 0x53f84c
call fcn.0050bac0
push ecx
mov eax, 0x2040
call fcn.0050bd60
push ebx
push esi
push edi
xor edi, edi
cmp dword [ebp + 8], edi
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 4], edi
jne 0x4d2989
push 5
call dword [sym.imp.MSVCRT.dll_exit]
mov ecx, dword [esi + 0x1200c]
mov dword [ebp - 4], edi
cmp ecx, 2
jge 0x4d29b5
mov ecx, esi
call fcn.004d2fe2
cmp eax, edi
je 0x4d2ca5
mov ecx, dword [esi + 0x1200c]
cmp ecx, 2
jl 0x4d2ca5
mov eax, dword [esi + 0x12428]
xor ebx, ebx
dec eax
je 0x4d2a6f
dec eax
jne 0x4d2acc
cmp dword [esi + 0x1242c], 0xffffffff
lea eax, [esi + 0x1242c]
jne 0x4d29e2
mov edx, dword [esi + 0x12010]
mov dword [eax], edx
cmp byte [esi + 0x12424], 0
jne 0x4d2acc
mov ecx, dword [esi + 0x12010]
mov ebx, 0x10000
lea eax, [ecx + 1]
cdq
idiv ebx
movzx eax, byte [ecx + esi + 0x200c]
movzx ebx, byte [edx + esi + 0x200c]
shl ebx, 8
add ebx, eax
cmp ebx, edi
jle 0x4d2a54
cmp ebx, 0x400
jg 0x4d2a54
call fcn.004fe815
mov ecx, dword [esi + 0x1200c]
add ebx, eax
cmp ebx, ecx
jle 0x4d2acc
mov ecx, esi
call fcn.004d2fe2
cmp eax, edi
je 0x4d2ca5
mov ecx, dword [esi + 0x1200c]
cmp ebx, ecx
jle 0x4d2acc
jmp 0x4d2ca5
mov ecx, esi
mov dword [esi + 0x1200c], edi
mov dword [esi + 0x12010], edi
call fcn.004d2e76
push 5
call dword [sym.imp.MSVCRT.dll_exit]
mov edi, dword [esi + 0x12010]
mov ebx, 0x10000
lea eax, [edi + 1]
cdq
idiv ebx
movzx eax, byte [edi + esi + 0x200c]
movzx ebx, byte [edx + esi + 0x200c]
shl ebx, 8
add ebx, eax
test ebx, ebx
jle 0x4d2d5f
cmp ebx, 0x400
jg 0x4d2d5f
cmp ebx, ecx
jle 0x4d2aca
mov ecx, esi
call fcn.004d2fe2
test eax, eax
je 0x4d2ca5
mov ecx, dword [esi + 0x1200c]
cmp ebx, ecx
jg 0x4d2ca5
xor edi, edi
cmp dword [esi + 0x12428], 2
jne 0x4d2cb8
cmp byte [esi + 0x12424], 0
je 0x4d2bc0
mov eax, dword [esi + 0x1242c]
lea edx, [esi + 0x12430]
sub ecx, eax
lea eax, [eax + esi + 0x200c]
push ecx
push eax
mov ecx, edx
call fcn.004fe23e
mov ebx, eax
cmp ebx, edi
jge 0x4d2b2d
mov ecx, esi
call fcn.004d2e76
push 0x231
push str.D:CQ2ClientCn_15.3.53DRoleNetwork_socket.h
push str.ERROR:_CGameSocket::ReceiveMsg___OnShakeHand_failed_at__s___d
call fcn.005079e3
add esp, 0xc
jmp 0x4d2ca5
je 0x4d2ca5
and byte [ebp - 0x2050], 0
mov ecx, 0x7ff
xor eax, eax
lea edi, [ebp - 0x204f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x2050]
push 0x2000
push eax
lea ecx, [esi + 0x12430]
call fcn.004fe0a2
test eax, eax
jg 0x4d2b7b
push 0x243
push str.D:CQ2ClientCn_15.3.53DRoleNetwork_socket.h
push str.ERROR:_CGameSocket::ReceiveMsg___GenerateShakeHandBuf_failed_at__s___d
jmp 0x4d2c96
push eax
lea eax, [ebp - 0x2050]
push eax
mov ecx, esi
call fcn.004d2766
mov ecx, esi
call fcn.004d2d84
mov eax, dword [esi + 0x12010]
lea ecx, [esi + 0x12010]
add eax, ebx
mov edi, 0x10000
cdq
idiv edi
sub dword [esi + 0x1200c], ebx
and byte [esi + 0x12424], 0
mov dword [ecx], edx
call fcn.004d172a
jmp 0x4d2ca5
and byte [ebp - 0x50], 0
push 0xf
pop ecx
xor eax, eax
lea edi, [ebp - 0x4f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
call fcn.004fe815
mov ecx, dword [esi + 0x12010]
mov edi, ecx
add ecx, ebx
sub edi, eax
add edi, ebx
cmp ecx, 0x10000
jle 0x4d2c4f
call fcn.004fe815
mov ecx, dword [esi + 0x12010]
sub ecx, eax
mov eax, 0x10000
add ecx, ebx
cmp ecx, eax
jge 0x4d2c40
sub eax, edi
push eax
lea eax, [edi + esi + 0x200c]
push eax
lea eax, [ebp - 0x50]
push eax
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x12010]
lea eax, [eax + ebx - 0x10000]
push eax
lea eax, [esi + 0x200c]
push eax
lea eax, [ebp + 0xffb0]
sub eax, edi
push eax
call sub.MSVCRT.dll_memcpy
add esp, 0x18
jmp 0x4d2c69
call fcn.004fe815
push eax
lea eax, [edi + esi - 0xdff4]
jmp 0x4d2c5c
call fcn.004fe815
push eax
lea eax, [edi + esi + 0x200c]
push eax
lea eax, [ebp - 0x50]
push eax
call sub.MSVCRT.dll_memcpy
add esp, 0xc
call fcn.004fe815
mov edi, eax
call fcn.004fe819
push edi
push eax
lea eax, [ebp - 0x50]
push eax
call sub.MSVCRT.dll_memcmp
add esp, 0xc
test eax, eax
je 0x4d2cb8
push 0x273
push str.D:CQ2ClientCn_15.3.53DRoleNetwork_socket.h
push str.ERROR:_CGameSocket::ReceiveMsg___memcmp_PROTOCOL_PACKAGE_FLAG_failed_at__s___d
call fcn.005079e3
add esp, 0xc
mov ecx, esi
call fcn.004d2e76
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 8
mov eax, dword [esi + 0x12010]
mov edi, 0x10000
lea ecx, [eax + ebx]
cmp ecx, edi
jle 0x4d2cfe
sub edi, eax
lea eax, [eax + esi + 0x200c]
push edi
push eax
push dword [ebp + 8]
call sub.MSVCRT.dll_memcpy
mov eax, ebx
sub eax, edi
push eax
lea eax, [esi + 0x200c]
push eax
mov eax, dword [ebp + 8]
add edi, eax
push edi
call sub.MSVCRT.dll_memcpy
mov eax, dword [ebp + 0xc]
add esp, 0x18
mov dword [eax], ebx
jmp 0x4d2d33
cmp dword [esi + 0x12428], 2
mov edi, ebx
mov byte [ebp - 4], 7
jne 0x4d2d14
call fcn.004fe815
sub edi, eax
mov eax, dword [esi + 0x12010]
push edi
lea eax, [eax + esi + 0x200c]
push eax
push dword [ebp + 8]
call sub.MSVCRT.dll_memcpy
mov eax, dword [ebp + 0xc]
add esp, 0xc
mov dword [eax], edi
mov eax, dword [esi + 0x12010]
mov ecx, 0x10000
add eax, ebx
push 1
cdq
idiv ecx
sub dword [esi + 0x1200c], ebx
pop eax
mov dword [esi + 0x12010], edx
jmp 0x4d2ca7
and dword [esi + 0x1200c], 0
and dword [esi + 0x12010], 0
mov ecx, esi
call fcn.004d2e76
push 5
call dword [sym.imp.MSVCRT.dll_exit]
push 5
call dword [sym.imp.MSVCRT.dll_exit]