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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc60
mov eax, dword [0x43e268]
xor eax, ebp
mov dword [ebp - 8], eax
push esi
lea eax, [ebp - 0xa64]
mov dword [ebp - 0x620], eax
mov ecx, 0x400
mov word [ebp - 0x624], cx
mov edx, dword [ebp + 8]
mov dword [ebp - 0x61c], edx
movzx eax, byte [0x44b43d]
cmp eax, 1
jne 0x4230bf
mov ecx, dword [0x4415b8]
mov dword [ebp - 0x644], ecx
jmp 0x4230df
movzx edx, byte [0x44b43d]
cmp edx, 2
jne 0x4230d8
mov eax, dword [0x4415b4]
mov dword [ebp - 0x644], eax
jmp 0x4230df
xor eax, eax
jmp 0x42349f
push 0x43
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x646], ax
mov ecx, 2
mov word [ebp - 0x648], cx
mov byte [ebp - 0xb54], 1
push 0
call fcn.0041a650
add esp, 4
mov dword [ebp - 0xb50], eax
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x1c]
mov dword [ebp - 0xb48], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1c]
mov dword [ebp - 0xb44], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0xb38]
push edx
call fcn.00419550
add esp, 8
mov byte [ebp - 0xb52], al
mov byte [ebp - 0xa68], 0x63
mov byte [ebp - 0xa67], 0x82
mov byte [ebp - 0xa66], 0x53
mov byte [ebp - 0xa65], 0x63
mov byte [ebp - 0xc60], 0x35
mov byte [ebp - 0xc5f], 1
mov byte [ebp - 0xc5e], 8
movzx eax, byte [ebp - 0xc5f]
add eax, 2
push eax
lea ecx, [ebp - 0xc60]
push ecx
mov edx, dword [ebp - 0x620]
push edx
call fcn.00406dd0
add esp, 0xc
mov eax, dword [ebp - 0x620]
add eax, 2
mov dword [ebp - 0x620], eax
movzx ecx, byte [ebp - 0xc5f]
add ecx, dword [ebp - 0x620]
mov dword [ebp - 0x620], ecx
mov byte [ebp - 0xc60], 0xfd
mov byte [ebp - 0xc5f], 4
mov edx, dword [0x442014]
push edx
lea eax, [ebp - 0xc5e]
push eax
call fcn.0041a0b0
add esp, 8
movzx ecx, byte [ebp - 0xc5f]
add ecx, 2
push ecx
lea edx, [ebp - 0xc60]
push edx
mov eax, dword [ebp - 0x620]
push eax
call fcn.00406dd0
add esp, 0xc
mov ecx, dword [ebp - 0x620]
add ecx, 2
mov dword [ebp - 0x620], ecx
movzx edx, byte [ebp - 0xc5f]
add edx, dword [ebp - 0x620]
mov dword [ebp - 0x620], edx
mov byte [ebp - 0xc60], 0x33
mov byte [ebp - 0xc5f], 4
push 0
lea eax, [ebp - 0xc5e]
push eax
call fcn.0041a0b0
add esp, 8
movzx ecx, byte [ebp - 0xc5f]
add ecx, 2
push ecx
lea edx, [ebp - 0xc60]
push edx
mov eax, dword [ebp - 0x620]
push eax
call fcn.00406dd0
add esp, 0xc
mov ecx, dword [ebp - 0x620]
add ecx, 2
mov dword [ebp - 0x620], ecx
movzx edx, byte [ebp - 0xc5f]
add edx, dword [ebp - 0x620]
mov dword [ebp - 0x620], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x1c]
push ecx
call dword [sym.imp.WS2_32.dll_htonl]
push eax
push 0x43fd60
call fcn.004198c0
add esp, 8
push eax
movzx edx, byte [0x461db8]
push edx
call fcn.00422eb0
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x423333
mov byte [ebp - 0xc60], 0xc
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x1c]
push ecx
call fcn.00409210
add esp, 4
mov byte [ebp - 0xc5f], al
movzx edx, byte [ebp - 0xc5f]
push edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x1c]
push ecx
lea edx, [ebp - 0xc5e]
push edx
call fcn.00406dd0
add esp, 0xc
movzx eax, byte [ebp - 0xc5f]
add eax, 2
push eax
lea ecx, [ebp - 0xc60]
push ecx
mov edx, dword [ebp - 0x620]
push edx
call fcn.00406dd0
add esp, 0xc
mov eax, dword [ebp - 0x620]
add eax, 2
mov dword [ebp - 0x620], eax
movzx ecx, byte [ebp - 0xc5f]
add ecx, dword [ebp - 0x620]
mov dword [ebp - 0x620], ecx
mov edx, dword [ebp - 0x620]
mov byte [edx], 0xff
mov eax, dword [ebp - 0x620]
lea ecx, [ebp - 0xb54]
sub eax, ecx
mov dword [ebp - 0x64c], eax
mov edx, dword [ebp - 0x64c]
add edx, 1
mov dword [ebp - 0x64c], edx
call fcn.00409828
mov dword [eax], 0
push 0x10
lea eax, [ebp - 0x648]
push eax
push 0
mov ecx, dword [ebp - 0x64c]
push ecx
lea edx, [ebp - 0xb54]
push edx
mov eax, dword [0x4409d8]
push eax
call dword [sym.imp.WS2_32.dll_sendto]
mov dword [ebp - 0x64c], eax
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, eax
call fcn.00409828
mov dword [eax], esi
call fcn.00409828
cmp dword [eax], 0
jne 0x4233b7
cmp dword [ebp - 0x64c], 0
jg 0x42341c
movzx ecx, byte [0x44b43b]
test ecx, ecx
je 0x423413
movzx edx, byte [0x44b43d]
cmp edx, 1
jne 0x4233ea
call fcn.00409828
mov eax, dword [eax]
push eax
push str.Error__u_Sending_DHCP_Update_to_Secondary_Server
push 0x44bd18
call fcn.00407379
add esp, 0xc
jmp 0x423404
call fcn.00409828
mov ecx, dword [eax]
push ecx
push str.Error__u_Sending_DHCP_Update_to_Primary_Server
push 0x44bd18
call fcn.00407379
add esp, 0xc
push 2
push 0x44bd18
call fcn.0041b050
add esp, 8
xor eax, eax
jmp 0x42349f
movzx edx, byte [0x44b43b]
cmp edx, 2
jne 0x423499
movzx eax, byte [0x44b43d]
cmp eax, 1
jne 0x423460
mov ecx, dword [ebp - 0x61c]
mov edx, dword [ecx + 0x1c]
push edx
push 0x43fd60
call fcn.004198c0
add esp, 8
push eax
push str.DHCP_Update_for_host__s_sent_to_Secondary_Server
push 0x44bd18
call fcn.00407379
add esp, 0xc
jmp 0x42348a
mov eax, dword [ebp - 0x61c]
mov ecx, dword [eax + 0x1c]
push ecx
push 0x43fd60
call fcn.004198c0
add esp, 8
push eax
push str.DHCP_Update_for_host__s_sent_to_Primary_Server
push 0x44bd18
call fcn.00407379
add esp, 0xc
push 2
push 0x44bd18
call fcn.0041b050
add esp, 8
mov eax, dword [ebp - 0xb44]
pop esi
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.00406dc0
mov esp, ebp
pop ebp
ret