Function at 0x4030eb
Capabilities:
Get socket status
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push ecx
push ebx
push esi
push edi
call fcn.0040ab20
test eax, eax
je 0x403116
push 1
push str.init_Failed_____
call fcn.0040bdf3
pop ecx
pop ecx
pop edi
xor eax, eax
pop esi
inc eax
pop ebx
mov esp, ebp
pop ebp
ret
xor edi, edi
mov dword [0x4c54fc], 1
mov dword [0x4c5500], edi
cmp byte [0x4c7689], 0
mov byte [0x4ccaaa], 0
jne 0x40314e
cmp byte [0x4c93c7], 0
jne 0x40314e
push 0x3e8
call dword [0x4961f0]
jmp 0x403128
cmp byte [0x4ccaa9], 0
je 0x403141
xor eax, eax
cmp byte [0x4cbeeb], al
mov dword [0x4c53f8], eax
je 0x403178
mov eax, dword [0x4cbec0]
mov dword [0x4c53fc], eax
xor eax, eax
inc eax
mov dword [0x4c53f8], eax
mov edx, 0x4c7650
mov ebx, 0x4c939c
cmp byte [edx + 0x39], 0
je 0x4031c2
xor ecx, ecx
cmp eax, edi
jbe 0x40319e
mov esi, dword [edx]
cmp dword [ecx*4 + 0x4c53fc], esi
je 0x40319e
inc ecx
cmp ecx, eax
jb 0x403190
cmp ecx, eax
jne 0x4031bb
cmp eax, 0x40
jae 0x4031bb
mov eax, dword [edx]
mov dword [ecx*4 + 0x4c53fc], eax
mov eax, dword [0x4c53f8]
inc eax
mov dword [0x4c53f8], eax
add edx, 0x3c
cmp edx, ebx
jl 0x403182
cmp byte [0x4cdf03], 0
je 0x403200
mov ecx, dword [0x4cded8]
xor edx, edx
cmp eax, edi
jbe 0x4031e5
cmp dword [edx*4 + 0x4c53fc], ecx
je 0x4031e5
inc edx
cmp edx, eax
jb 0x4031d7
cmp edx, eax
jne 0x403200
cmp eax, 0x40
jae 0x403200
mov dword [edx*4 + 0x4c53fc], ecx
mov eax, dword [0x4c53f8]
inc eax
mov dword [0x4c53f8], eax
mov edx, ebx
cmp byte [edx + 0x2b], 0
je 0x403246
xor ecx, ecx
cmp eax, edi
jbe 0x40321e
mov esi, dword [edx]
cmp dword [ecx*4 + 0x4c53fc], esi
je 0x40321e
inc ecx
cmp ecx, eax
jb 0x403210
cmp ecx, eax
jne 0x40323b
cmp eax, 0x40
jae 0x40323b
mov eax, dword [edx]
mov dword [ecx*4 + 0x4c53fc], eax
mov eax, dword [0x4c53f8]
inc eax
mov dword [0x4c53f8], eax
add edx, 0x2c
cmp edx, 0x4ca918
jl 0x403202
mov edx, 0x4ca944
cmp byte [edx + 0x2b], 0
je 0x40328f
xor ecx, ecx
cmp eax, edi
jbe 0x403267
mov esi, dword [edx]
cmp dword [ecx*4 + 0x4c53fc], esi
je 0x403267
inc ecx
cmp ecx, eax
jb 0x403259
cmp ecx, eax
jne 0x403284
cmp eax, 0x40
jae 0x403284
mov eax, dword [edx]
mov dword [ecx*4 + 0x4c53fc], eax
mov eax, dword [0x4c53f8]
inc eax
mov dword [0x4c53f8], eax
add edx, 0x2c
cmp edx, 0x4cbec0
jl 0x40324b
cmp byte [0x4ca943], 0
je 0x4032c8
mov ecx, dword [0x4ca918]
xor edx, edx
cmp eax, edi
jbe 0x4032b2
cmp dword [edx*4 + 0x4c53fc], ecx
je 0x4032b2
inc edx
cmp edx, eax
jb 0x4032a4
cmp edx, eax
jne 0x4032c8
cmp eax, 0x40
jae 0x4032c8
mov dword [edx*4 + 0x4c53fc], ecx
inc dword [0x4c53f8]
push 0x4c54fc
push edi
push edi
mov esi, 0x4c53f8
push esi
push dword [0x4ccaa4]
call dword [0x4969a4]
test eax, eax
push edi
je 0x4036f5
call dword [0x49654c]
cmp byte [0x4cdf03], 0
pop ecx
mov dword [0x4f7380], eax
mov dword [0x4f7384], edx
mov byte [0x4ccaaa], 1
je 0x40337c
push esi
push dword [0x4cded8]
call fcn.00486d96
test eax, eax
je 0x40337c
mov ebx, dword [0x496520]
call ebx
push 0x4c6280
push 0x4c6270
push edi
push 0x400
mov dword [eax], edi
push 0x4c5d24
push dword [0x4cded8]
mov dword [0x4c6280], 0x10
call dword [0x49699c]
mov dword [0x4c626c], eax
call ebx
mov esi, eax
call dword [0x4969c0]
mov dword [esi], eax
call ebx
cmp dword [eax], edi
jne 0x403370
cmp dword [0x4c626c], edi
jg 0x40337c
mov dword [0x4f5e70], edi
mov dword [0x4f5e74], edi
xor ebx, ebx
mov edi, 0x4c7650
cmp byte [edi + 0x39], 0
je 0x4033c8
push 0x4c53f8
push dword [edi]
call fcn.00486d96
test eax, eax
je 0x4033bc
push ebx
mov esi, 0x4c5d20
call fcn.0040b7b1
test ax, ax
pop ecx
je 0x4033bc
mov eax, esi
call fcn.00408276
test eax, eax
je 0x4033bc
mov eax, esi
call fcn.004086e5
add edi, 0x3c
inc ebx
cmp edi, 0x4c939c
jl 0x403383
and dword [esp + 0xc], 0
mov ebx, 0x4c939c
cmp byte [ebx + 0x2b], 0
je 0x403542
push 0x4c53f8
push dword [ebx]
call fcn.00486d96
test eax, eax
je 0x40352f
push dword [esp + 0xc]
mov esi, 0x4f5ff8
mov eax, esi
call fcn.00405d7f
test ax, ax
pop ecx
je 0x40351c
push esi
call fcn.00406118
test ax, ax
pop ecx
je 0x40350e
mov eax, dword [0x4f5ff8]
movzx eax, word [eax + 6]
push eax
call dword [0x4969b4]
test ax, ax
je 0x4034b3
cmp byte [0x4f5e83], 2
jb 0x403525
mov ax, word [0x4f733a]
cmp ax, 6
jne 0x40345b
push 0x4f7000
push str.SOA_Sent_for_zone__s
jmp 0x4034f1
cmp ax, 2
jne 0x403470
push 0x4f7000
push str.NS_Sent_for_zone__s
jmp 0x4034f1
cmp byte [0x4f7341], 0x14
mov esi, 0x4f5ff8
mov edi, esi
jne 0x403493
call fcn.004076c8
push eax
call fcn.0040a04e
push eax
push str._s_resolved_from_Cache_to__s
jmp 0x4034a4
call fcn.004076c8
push eax
call fcn.0040a04e
push eax
push str._s_resolved_Locally_to__s
push 0x4c5820
call fcn.0040d69e
add esp, 0x10
jmp 0x4034fe
mov ecx, dword [0x4f5ff8]
mov eax, dword [ecx]
mov edx, eax
shr edx, 0x18
and edx, 0xf
cmp edx, 3
je 0x4034cc
test edx, edx
jne 0x403525
and eax, 0xf3ffffff
or eax, 0x3000000
mov dword [ecx], eax
cmp byte [0x4f5e83], 2
jb 0x403525
mov esi, 0x4f5ff8
call fcn.0040a04e
push eax
push str._s_not_found
push 0x4c5820
call fcn.0040d69e
add esp, 0xc
cmp byte [0x4f5e82], 2
jb 0x403525
call fcn.0040be4d
jmp 0x403525
mov ecx, esi
call fcn.00406937
test ax, ax
jne 0x40352f
jmp 0x403525
cmp dword [0x4f5ff8], 0
je 0x40352f
mov esi, 0x4f5ff8
call fcn.004060a7
inc dword [esp + 0xc]
add ebx, 0x2c
cmp ebx, 0x4ca918
jl 0x4033d2
xor ebx, ebx
mov esi, 0x4ca944
cmp byte [esi + 0x2b], 0
je 0x4035fc
push 0x4c53f8
push dword [esi]
call fcn.00486d96
test eax, eax
je 0x4035ec
mov edi, dword [0x496520]
mov byte [0x4f733f], bl
mov dword [0x4f732c], 0x10
call edi
and dword [eax], 0
push 0x4f732c
push 0x4f731c
push dword [esi]
call dword [0x496980]
mov dword [0x4f7308], eax
call edi
mov edi, eax
call dword [0x4969c0]
mov dword [edi], eax
cmp dword [0x4f7308], 0xffffffff
jne 0x4035e1
cmp byte [0x4f5e83], 0
je 0x4035ec
call dword [0x496520]
push dword [eax]
push str.Accept_Failed__WSAError_u
push 0x4c5820
call fcn.0040d69e
add esp, 0xc
cmp byte [0x4f5e82], 1
jb 0x4035ec
call fcn.0040be4d
jmp 0x4035ec
push 0x4f5ff8
call fcn.0040544d
pop ecx
add esi, 0x2c
inc ebx
cmp esi, 0x4cbec0
jl 0x403549
cmp byte [0x4ca943], 0
je 0x403707
push 0x4c53f8
push dword [0x4ca918]
call fcn.00486d96
test eax, eax
je 0x403707
mov edi, 0x4f5ff8
call fcn.00407018
test ax, ax
je 0x403707
mov esi, edi
call fcn.004060a7
cmp byte [0x4f5e83], 2
jb 0x403707
cmp byte [0x4f7340], 0x7d
mov eax, dword [0x4f5ff8]
jae 0x40369c
cmp word [eax + 6], 0
je 0x403690
call fcn.004076c8
test eax, eax
je 0x403684
push 0x4c5b20
push 0x4f7100
push str._s_resolved_from_Forwarding_server_as__s
push 0x4c5820
call fcn.0040d69e
add esp, 0x10
jmp 0x4036e5
push 0x4f7100
push str._s_resolved_from_Forwarding_server
jmp 0x4036d8
push 0x4f7100
push str._s_not_found_by_Forwarding_Server
jmp 0x4036d8
cmp word [eax + 6], 0
je 0x4036ce
mov edi, 0x4f5ff8
call fcn.004076c8
test eax, eax
je 0x4036c2
push 0x4c5b20
push 0x4f7100
push str._s_resolved_from_Conditional_Forwarder_as__s
jmp 0x403675
push 0x4f7100
push str._s_resolved_from_Conditional_Forwarder
jmp 0x4036d8
push 0x4f7100
push str._s_not_found_by_Conditional_Forwarder
push 0x4c5820
call fcn.0040d69e
add esp, 0xc
cmp byte [0x4f5e82], 2
jb 0x403707
call fcn.0040be4d
jmp 0x403707
call dword [0x49654c]
pop ecx
mov dword [0x4f7380], eax
mov dword [0x4f7384], edx
mov al, byte [0x4c764a]
mov byte [0x4c7649], al
xor edi, edi
jmp 0x403128