Function at 0x405d7f
Capabilities:
Receive data
Receive data on socket

Disassembly:
push ebx
push ebp
push esi
push edi
push 0x134c
mov esi, eax
push 0
push esi
call fcn.0048635c
mov edi, dword [0x496520]
lea ebx, [esi + 0x1334]
add esp, 0xc
mov dword [ebx], 0x10
call edi
and dword [eax], 0
push ebx
lea eax, [esi + 0x1324]
push eax
movzx eax, byte [esp + 0x1c]
imul eax, eax, 0x2c
push 0
push 0x800
lea ebp, [esi + 8]
push ebp
push dword [eax + 0x4c939c]
call dword [0x49699c]
mov dword [esi + 0x133c], eax
call edi
mov ebx, eax
call dword [0x4969c0]
mov dword [ebx], eax
call edi
cmp dword [eax], 0
jne 0x40609f
cmp dword [esi + 0x133c], 0
jle 0x40609f
mov al, byte [esp + 0x14]
mov byte [esi + 0x1347], al
mov dword [esi], ebp
mov eax, dword [ebp]
test eax, 0x800000
jne 0x40609f
shr eax, 0x13
and eax, 0xf
je 0x405e9a
cmp byte [0x4f5e83], 1
jb 0x405e80
mov ecx, eax
dec ecx
je 0x405e61
dec ecx
je 0x405e5a
dec ecx
dec ecx
je 0x405e53
dec ecx
je 0x405e4c
push eax
push str.OpCode__d_not_supported
push 0x4c5820
call fcn.0040d69e
add esp, 0xc
jmp 0x405e72
push str.Dynamic_Update_not_needed_supported_by_Dual_Server
jmp 0x405e66
push str.Notify_not_supported
jmp 0x405e66
push str.Server_Status_Request_not_supported
jmp 0x405e66
push str.Inverse_query_not_supported
push 0x4c5820
call fcn.0040d69e
pop ecx
pop ecx
cmp byte [0x4f5e82], 1
jb 0x405e80
call fcn.0040be4d
mov eax, esi
call fcn.0040389d
mov esi, dword [esi]
mov eax, dword [esi]
and eax, 0xf4ffffff
or eax, 0x4000000
jmp 0x40609d
movzx eax, word [ebp + 4]
mov edi, dword [0x4969cc]
push eax
call edi
xor ebp, ebp
inc ebp
cmp ax, bp
jne 0x406060
mov eax, dword [esi]
movzx eax, word [eax + 6]
push eax
call edi
test ax, ax
jne 0x406060
mov eax, dword [esi]
lea ecx, [eax + 0xc]
mov dword [esi + 4], ecx
movzx eax, word [eax + 4]
push eax
call edi
cmp ax, bp
jb 0x405f2b
lea ebx, [esi + 0x1008]
push dword [esi]
mov ecx, dword [esi + 4]
mov eax, ebx
call fcn.00403718
movzx eax, ax
add dword [esi + 4], eax
mov eax, dword [esi + 4]
movzx eax, word [eax]
pop ecx
push eax
call edi
add dword [esi + 4], 2
mov word [esi + 0x1342], ax
mov eax, dword [esi + 4]
movzx eax, word [eax]
push eax
call edi
add dword [esi + 4], 2
mov word [esi + 0x1344], ax
mov eax, dword [esi]
movzx eax, word [eax + 4]
push eax
inc ebp
call edi
movzx eax, ax
cmp ebp, eax
jle 0x405edf
movzx eax, word [esi + 0x1344]
cmp ax, 1
je 0x405f71
cmp byte [0x4f5e83], 1
jb 0x405f65
movzx eax, ax
push eax
push str.DNS_Class__d_not_supported
push 0x4c5820
call fcn.0040d69e
add esp, 0xc
cmp byte [0x4f5e82], 1
jb 0x405f65
call fcn.0040be4d
mov eax, esi
call fcn.004038de
jmp 0x405e87
cmp word [esi + 0x1342], 0
jne 0x405faf
cmp byte [0x4f5e83], 1
jb 0x405fa3
push str.missing_query_type
push 0x4c5820
call fcn.0040d69e
cmp byte [0x4f5e82], 1
pop ecx
pop ecx
jb 0x405fa3
call fcn.0040be4d
mov eax, esi
call fcn.004038de
jmp 0x40608f
mov edi, dword [esi + 0x1328]
push edi
call dword [0x49696c]
mov ebx, eax
mov eax, 0x4de35c
mov ecx, dword [eax]
test ecx, ecx
je 0x405fe0
cmp ebx, ecx
jb 0x405fd6
cmp ebx, dword [eax + 4]
jbe 0x406057
add eax, 8
cmp eax, 0x4de45c
jl 0x405fc3
call fcn.0040a57b
test al, al
jne 0x406057
lea eax, [esi + 0x1108]
push eax
mov eax, ebx
call fcn.0040a18e
pop ecx
mov ecx, eax
call fcn.0040a732
test eax, eax
jne 0x406057
push edi
push 0x7d
mov edx, 0x4cbeec
call fcn.0040a1ea
test eax, eax
pop ecx
pop ecx
jne 0x406057
mov eax, esi
call fcn.004038de
mov esi, dword [esi]
mov eax, dword [esi]
and eax, 0xf5ffffff
or eax, 0x5000000
mov dword [esi], eax
cmp byte [0x4f5e83], 1
jb 0x40609f
push str.DNS_UDP_Query__Access_Denied
push 0x4c5820
call fcn.0040d69e
cmp byte [0x4f5e82], 1
pop ecx
pop ecx
jb 0x40609f
call fcn.0040be4d
jmp 0x40609f
mov ax, word [esi + 0x133c]
jmp 0x4060a2
cmp byte [0x4f5e83], 1
jb 0x406088
push str.DNS_Query_Format_Error
push 0x4c5820
call fcn.0040d69e
cmp byte [0x4f5e82], 1
pop ecx
pop ecx
jb 0x406088
call fcn.0040be4d
mov eax, esi
call fcn.0040389d
mov esi, dword [esi]
mov eax, dword [esi]
and eax, 0xf1ffffff
or eax, 0x1000000
mov dword [esi], eax
xor ax, ax
pop edi
pop esi
pop ebp
pop ebx
ret