Function at 0x40a080
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x278
mov eax, dword [0x6a9b98]
xor eax, esp
mov dword [esp + 0x274], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x18]
push esi
mov esi, dword [ebp + 8]
mov dword [esp + 0x4c], eax
mov eax, 0x17
push edi
mov edi, dword [ebp + 0x1c]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], edi
mov dword [esp + 0x10c], 0x186a0
mov dword [esp + 0x110], 0x61a80
mov dword [esp + 0x114], 0xc3500
mov dword [esp + 0x20], 0
mov word [esp + 0x88], ax
mov byte [esp + 0xd], 0
cmp word [ecx], ax
jne 0x40a4ec
cmp word [edx], ax
jne 0x40a4ec
movups xmm0, xmmword [ecx]
xor eax, eax
mov word [esp + 0x2c], 0x2ff
mov word [esp + 0x11b], ax
mov byte [esp + 0x11d], al
mov al, byte [ecx + 0x15]
movups xmmword [esp + 0x60], xmm0
mov byte [esp + 0x11], al
mov al, byte [ecx + 0x16]
movq xmm0, qword [ecx + 0x10]
movq qword [esp + 0x70], xmm0
xorps xmm0, xmm0
push 0x19
mov byte [esp + 0x16], al
mov al, byte [ecx + 0x17]
or cl, 0xff
push 1
movlpd qword [esp + 0x36], xmm0
movq xmm0, qword [esp + 0x34]
mov byte [esp + 0x1b], al
mov word [esp + 0x3e], 0x100
mov eax, dword [esp + 0x3c]
push 0x64
push esi
mov byte [esp + 0x1e], 0x33
mov byte [esp + 0x1f], 0x33
mov byte [esp + 0x20], 0xff
movq qword [esp + 0x78], xmm0
mov dword [esp + 0x80], eax
mov byte [esp + 0x84], cl
call fcn.004097d0
add esp, 0x10
mov dword [esp + 0x18], eax
test eax, eax
je 0x40a4fb
mov ecx, dword [esp + 0x14]
push 0x88
push 0x3a
movzx eax, byte [ecx + 5]
push eax
movzx eax, byte [ecx + 4]
push eax
movzx eax, byte [ecx + 3]
push eax
movzx eax, byte [ecx + 2]
push eax
movzx eax, byte [ecx + 1]
push eax
movzx eax, byte [ecx]
push eax
push str.ether_dst__02X_02X_02X_02X_02X_02X_and_icmp6_and_ip6_6:1____u_and_ip6_40:1____u
lea eax, [esp + 0x19c]
push 0x100
push eax
call fcn.004d5fc0
add esp, 0x2c
lea eax, [esp + 0x178]
push eax
push dword [esp + 0x1c]
push esi
call fcn.00409960
add esp, 0xc
push esi
call fcn.00403530
add esp, 4
mov dword [esp + 0x44], eax
test eax, eax
je 0x40a506
mov al, byte [esp + 0xe]
mov ecx, dword [esp + 0x14]
mov esi, dword [0x4e3290]
mov byte [esp + 0x120], al
mov al, byte [esp + 0xf]
mov byte [esp + 0x121], al
mov al, byte [esp + 0x10]
mov byte [esp + 0x122], al
mov al, byte [esp + 0x11]
mov byte [esp + 0x123], al
mov al, byte [esp + 0x12]
mov byte [esp + 0x124], al
mov al, byte [esp + 0x13]
mov byte [esp + 0x125], al
mov eax, dword [ecx]
mov dword [esp + 0x126], eax
movzx eax, word [ecx + 4]
push 0x86dd
mov word [esp + 0x12e], ax
call esi
push 0
mov word [esp + 0x130], ax
call dword [0x4e3294]
mov dword [esp + 0x12e], eax
push 0x20
mov byte [esp + 0x132], 0x60
call esi
mov ecx, dword [esp + 0x14]
mov word [esp + 0x132], ax
mov eax, dword [esp + 0x1c]
push 0x48
mov word [esp + 0x138], 0xff3a
mov word [esp + 0x15a], 0x87
movups xmm0, xmmword [eax + 8]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x15e], 0
movups xmmword [esp + 0x13a], xmm0
mov word [esp + 0x172], 0x101
movups xmm0, xmmword [esp + 0x6c]
movups xmmword [esp + 0x14a], xmm0
movups xmm0, xmmword [eax + 8]
mov eax, dword [ecx]
mov dword [esp + 0x174], eax
movzx eax, word [ecx + 4]
mov word [esp + 0x178], ax
lea eax, [esp + 0x132]
push eax
movups xmmword [esp + 0x166], xmm0
call fcn.004ddf10
lea eax, [esp + 0x60]
push 0
push eax
call fcn.004d7390
lea eax, [esp + 0x4c]
push 0
push eax
call fcn.004d7390
lea eax, [esp + 0x124]
add esp, 0x18
sub eax, 4
mov dword [esp + 0x14], eax
mov esi, dword [esp + 0x20]
cmp esi, 3
jge 0x40a4c8
push 0x56
lea eax, [esp + 0x124]
push eax
push dword [esp + 0x4c]
call fcn.004db000
add esp, 0xc
cmp eax, 0x56
je 0x40a38d
push 0x56
push eax
push str.doND
push str.WARNING:__s:_eth_send_of_Neighbor_Solicitation_packet_returned__u_rather_than_expected__d_bytes
call fcn.00402510
add esp, 0x10
test edi, edi
je 0x40a3a7
lea eax, [esp + 0x3c]
push eax
push 0x48
lea eax, [esp + 0x136]
push eax
push 1
call edi
add esp, 0x10
mov edi, dword [esp + 0x14]
inc esi
add edi, 4
mov dword [esp + 0x20], esi
mov dword [esp + 0x14], edi
xor esi, esi
nop dword [eax]
lea eax, [esp + 0x3c]
push 0
push eax
call fcn.004d7390
mov eax, dword [esp + 0x60]
add esp, 8
sub eax, dword [esp + 0x3c]
imul eax, eax, 0xf4240
sub eax, dword [esp + 0x40]
add eax, dword [edi]
add eax, dword [esp + 0x5c]
jns 0x40a3f6
test esi, esi
jg 0x40a4ba
mov eax, 0x61a8
lea ecx, [esp + 0x48]
inc esi
push ecx
lea ecx, [esp + 0x11c]
mov dword [esp + 0x58], esi
push ecx
lea ecx, [esp + 0x34]
push ecx
lea ecx, [esp + 0x58]
push ecx
lea ecx, [esp + 0x2c]
push ecx
push 0x409fa0
push eax
push dword [esp + 0x34]
call fcn.00409a30
add esp, 0x20
test eax, eax
je 0x40a3c0
mov edi, dword [esp + 0x48]
add edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
lea ecx, [edi + 0x2c]
sub ecx, dword [esp + 0x1c]
add ecx, 0x1c
cmp dword [eax + 8], ecx
jb 0x40a465
cmp byte [edi + 0x40], 2
jne 0x40a465
cmp byte [edi + 0x41], 1
jne 0x40a465
mov ecx, dword [esp + 0x50]
mov eax, dword [edi + 0x42]
mov dword [ecx], eax
mov ax, word [edi + 0x46]
mov word [ecx + 4], ax
mov eax, 0x17
mov word [esp + 0x88], ax
movups xmm0, xmmword [edi + 0x30]
mov eax, dword [esp + 0x28]
movups xmmword [esp + 0x90], xmm0
test eax, eax
je 0x40a495
lea ecx, [esp + 0x2c]
push ecx
push 0x48
push edi
push 2
call eax
add esp, 0x10
push dword [esp + 0x24]
lea eax, [esp + 0x8c]
push eax
call fcn.004d6e70
add esp, 8
test eax, eax
je 0x40a4c3
mov esi, dword [esp + 0x54]
mov edi, dword [esp + 0x14]
jmp 0x40a3c0
mov edi, dword [esp + 0x28]
jmp 0x40a350
mov byte [esp + 0xd], 1
push dword [esp + 0x18]
call sub.wpcap.dll_pcap_close
mov ecx, dword [esp + 0x280]
add esp, 4
mov al, byte [esp + 0xd]
pop edi
pop esi
xor ecx, esp
call fcn.004dc3a3
mov esp, ebp
pop ebp
ret
push str.doND
push str._s_can_only_handle_IPv6_addresses
call fcn.004024c0
push esi
push str.my_pcap_open_live__s__50__1__25__failed_three_times.
call fcn.004024c0
push esi
push str.doND
push str._s:_failed_to_open_device__s
call fcn.004024c0
int3