Function at 0x499770
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6318b1
mov eax, dword fs:[0]
push eax
mov eax, 0x10884
call fcn.006272c0
mov eax, dword [0x6a6040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10840], edx
mov dword [ebp - 0x1087c], ecx
mov edi, dword [0x6ac16c]
xor ebx, ebx
mov dword [ebp - 0x10874], edi
mov dword [ebp - 0x10870], ebx
mov byte [ebp - 0x1086c], bl
mov dword [ebp - 4], 1
cmp dword [edx + 0x53], 8
jl 0x49b775
mov esi, dword [edx + 8]
lea eax, [edx + 8]
xor ecx, ecx
cmp esi, eax
push 8
cmove esi, ecx
movq xmm0, qword [esi + 0x18]
lea ecx, [esi + 0x18]
push ebx
mov dword [ebp - 0x10880], ecx
lea eax, [esi + 0x26]
mov dword [ebp - 0x10848], esi
mov dword [ebp - 0x10844], eax
mov eax, dword [ecx + 8]
mov dword [ebp - 0x10860], eax
mov ax, word [ecx + 0xc]
mov ecx, edx
mov word [ebp - 0x1085c], ax
mov eax, dword [esi + 8]
mov dword [ebp - 0x1088c], eax
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x1083c], eax
and eax, 0x8000
mov dword [ebp - 0x10888], eax
mov eax, dword [esi + 0x32]
bswap eax
mov dword [ebp - 0x10824], eax
mov eax, dword [esi + 0x36]
bswap eax
mov dword [ebp - 0x10820], eax
lea eax, [ebp - 0x1c]
push eax
movq qword [ebp - 0x10868], xmm0
call fcn.00532230
movzx eax, byte [ebp - 0x1b]
movzx ecx, byte [ebp - 0x1c]
mov word [ebp - 0x1081a], ax
mov eax, dword [ebp - 0x10840]
mov word [ebp - 0x1081c], cx
mov dword [ebp - 0x10830], ecx
lea ecx, [ebp - 0x107f0]
push ecx
mov edx, dword [eax + 0x53]
mov ecx, eax
mov dword [ebp - 0x10878], edx
call fcn.00532390
push ecx
mov ecx, dword [ebp - 0x10840]
lea edx, [ebp - 0x107f0]
push dword [ecx + 0x53]
lea ecx, [esi + 0x26]
call fcn.0047d5b0
add esp, 8
test al, al
je 0x49b775
mov eax, dword [esi + 0x1e]
push 0xffffffffffffffff
push dword [edi]
mov dword [ebp - 0x1080c], eax
mov ax, word [esi + 0x22]
mov word [ebp - 0x10808], ax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x80
jne 0x4998e6
mov dword [edi + 8], ebx
jmp 0x4998ea
test eax, eax
jne 0x4998fe
inc dword [edi + 0xc]
mov ebx, 1
inc dword [edi + 8]
inc dword [edi + 4]
mov dword [ebp - 0x10870], ebx
mov edx, dword [ebp - 0x10824]
lea ecx, [ebp - 0x1080c]
call fcn.0056ea10
test ebx, ebx
jg 0x49991c
cmp dword [0x6ac6c4], 0
jne 0x49992a
dec ebx
mov ecx, edi
mov dword [ebp - 0x10870], ebx
call fcn.005e0810
push 0xffffffffffffffff
mov byte [ebp - 4], 1
push dword [edi]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x80
jne 0x499948
mov dword [edi + 8], 0
jmp 0x49994c
test eax, eax
jne 0x49995c
inc dword [edi + 0xc]
inc dword [edi + 8]
inc dword [edi + 4]
inc ebx
mov dword [ebp - 0x10870], ebx
mov edi, dword [ebp - 0x10840]
mov edx, edi
mov ecx, dword [ebp - 0x1087c]
call fcn.00498aa0
lea ecx, [ebp - 0x10874]
test al, al
jne 0x49b770
call fcn.0041d900
lea ecx, [ebp - 0x10874]
mov dword [ebp - 0x1084c], 0
call fcn.0041d970
test byte [esi + 0xc], 2
lea eax, [ebp - 0x10824]
je 0x499ab7
push eax
call fcn.004a9f30
test eax, eax
jne 0x499aaa
mov eax, dword [0x6af2bc]
mov dword [ebp - 0x10838], 0xfffffc18
mov dword [ebp - 0x1085c], 0xa
nop
test eax, 0x400
jne 0x499a5f
cmp byte [0x6ac39e], 0
jne 0x499a5f
mov byte [ebp - 0x10858], 1
mov byte [ebp - 4], 1
mov edi, dword [0x6ac16c]
push 0xffffffffffffffff
push dword [edi]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x80
jne 0x499a0e
mov dword [edi + 8], 0
jmp 0x499a12
test eax, eax
jne 0x499a1b
inc dword [edi + 0xc]
inc dword [edi + 8]
inc dword [edi + 4]
mov eax, dword [0x6a6e68]
mov dword [ebp - 0x10868], eax
mov eax, dword [0x6a6e6c]
mov dword [ebp - 0x10864], eax
mov eax, dword [0x6af2b8]
nop
mov dword [ebp - 0x10860], eax
mov ecx, 0x6af2b8
mov eax, 0xa
xchg dword [ecx], eax
mov dword [0x6a6e68], 0xaaaaff
mov dword [0x6a6e6c], 0xffffffff
jmp 0x499a66
mov byte [ebp - 0x10858], 0
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x499a91
lea eax, [esi + 0x1e]
push eax
push dword [ebp - 0x10824]
push str.Deny_incoming_icmp_packet_with_source_Ip_I_our_local_Ip___source_MAC_:_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x10
lea ecx, [ebp - 0x10868]
call fcn.0042b120
mov ebx, dword [ebp - 0x1084c]
or edi, 0xffffffff
jmp 0x49a651
mov ecx, 0x6adf50
lea eax, [ebp - 0x10824]
jmp 0x499abc
mov ecx, 0x6adf20
lea edx, [ebp - 0x10850]
push edx
push eax
call fcn.004a5e50
mov dword [ebp - 0x10838], eax
test eax, eax
je 0x49a672
cmp eax, 0xfffffc18
je 0x49a51e
mov ecx, dword [ebp - 0x10824]
call fcn.0056e760
mov edi, eax
call fcn.00470920
test eax, eax
je 0x49a48a
cmp dword [ebp - 0x10830], 8
sete cl
movzx ecx, cl
push ecx
mov ecx, eax
call fcn.0056be40
mov ebx, eax
mov dword [ebp - 0x10834], ebx
mov dword [ebp - 0x1084c], ebx
test ebx, ebx
je 0x49a48a
push edi
lea eax, [ebp - 0x10824]
mov ecx, ebx
push eax
push esi
call fcn.0049b890
test al, al
jne 0x499b89
cmp byte [ebx + 0x20], al
mov ecx, dword [ebp - 0x10840]
sete bl
call fcn.00532470
sub esp, 0x10
mov esi, eax
mov ecx, esp
push dword [ebp - 0x10824]
call fcn.005d27c0
sub esp, 8
push ebx
push 0
push esi
push edi
push ecx
mov ecx, esp
push str.Unknown
call fcn.005a5400
call fcn.00570590
push ecx
mov ecx, dword [ebp - 0x10834]
call fcn.004996b0
jmp 0x49b76a
lea eax, [ebx + 0xd3]
push eax
lea eax, [ebp - 0x10824]
push eax
push 1
call fcn.00551ef0
mov edx, dword [ebp - 0x10830]
cmp edx, 8
jne 0x499bd9
mov eax, dword [ebp - 0x18]
mov cx, ax
shr cx, 8
shl eax, 8
or cx, ax
mov eax, dword [ebp - 0x16]
mov word [ebx + 0x1c], cx
mov word [ebx + 0x10], cx
mov cx, ax
shr cx, 8
shl eax, 8
or cx, ax
mov word [ebx + 0x1e], cx
mov word [ebx + 0x12], cx
mov eax, dword [ebx + 0x70]
mov dword [ebp - 0x10854], eax
mov eax, dword [ebx + 0xd3]
sub eax, 0
je 0x499d5d
sub eax, 1
jne 0x499fcf
movzx eax, byte [ebp - 0x1c]
lea ecx, [ebp - 0x10868]
mov word [ebp - 0x1081c], ax
movzx eax, byte [ebp - 0x1b]
push 1
push 0xa
mov word [ebp - 0x1081a], ax
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x499c99
push ecx
lea eax, [ebx + 0xd3]
push eax
lea edx, [ebp - 0x10824]
lea ecx, [ebp - 0x10844]
call fcn.00470fa0
add esp, 8
lea eax, [ebp - 0x1082c]
lea ecx, [ebx + 0xd3]
push eax
call fcn.00470520
lea eax, [ebp - 0x1082c]
push eax
lea eax, [ebp - 0x10844]
push eax
lea eax, [ebx + 0x80]
push eax
push str.Deny_icmp__S_connection__S_by__S_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x14
lea ecx, [ebp - 0x1082c]
call fcn.004250c0
lea ecx, [ebp - 0x10844]
call fcn.004250c0
lea ecx, [ebp - 0x10868]
call fcn.0042b120
cmp byte [ebx + 0xeb], 0
je 0x499cfe
cmp byte [ebx + 0xec], 0
jne 0x499d44
mov ecx, dword [ebp - 0x10840]
mov bl, byte [ebx + 0x20]
call fcn.00532470
sub esp, 0x10
mov esi, eax
mov ecx, esp
push dword [ebp - 0x10824]
call fcn.005d27c0
sub esp, 8
push ebx
mov ebx, dword [ebp - 0x10834]
push esi
push 0
push edi
push ecx
lea eax, [ebx + 0x10a]
mov ecx, esp
push eax
call fcn.005a5bd0
call fcn.00570590
jmp 0x499d3e
mov ecx, dword [ebp - 0x10840]
mov bl, byte [ebx + 0x20]
call fcn.00532470
sub esp, 0x10
mov esi, eax
mov ecx, esp
push dword [ebp - 0x10824]
call fcn.005d27c0
sub esp, 8
push ebx
push esi
push 0
push edi
push ecx
mov ecx, esp
push str.Unknown
call fcn.005a5400
call fcn.00570590
mov ebx, dword [ebp - 0x10834]
mov esi, dword [ebp - 0x10848]
push ecx
mov ecx, ebx
call fcn.004996b0
xor ebx, ebx
mov dword [ebp - 0x10838], 0xfffffc18
jmp 0x49a651
push esi
mov ecx, ebx
call fcn.0049bdd0
test al, al
je 0x499f35
xor ecx, ecx
mov eax, 2
cmp byte [ebx + 0x21], cl
cmovne ecx, eax
mov eax, dword [esi + 0xc]
xor eax, ecx
test al, 2
jne 0x499d9f
cmp dword [ebx + 0x192], 0
jle 0x499db2
mov ecx, dword [ebx + 0x192]
mov eax, dword [ebp - 0x10854]
test ecx, ecx
cmovg eax, ecx
jmp 0x499db8
mov ecx, dword [ebx + 0x192]
test ecx, ecx
jns 0x499d92
mov eax, dword [ebp - 0x10854]
dec eax
jmp 0x499db8
mov eax, dword [ebp - 0x10854]
cmp eax, 1
jge 0x499dcc
mov dword [ebx + 0xd3], 3
jmp 0x499fc9
push 1
push 9
lea ecx, [ebp - 0x10804]
call fcn.0042af70
lea ecx, [ebp - 0x10804]
call fcn.0042b180
test al, al
je 0x499e55
push ecx
lea eax, [ebx + 0xd3]
push eax
lea edx, [ebp - 0x10824]
lea ecx, [ebp - 0x10854]
call fcn.00470fa0
add esp, 8
lea eax, [ebp - 0x1082c]
lea ecx, [ebx + 0xd3]
push eax
call fcn.00470520
lea eax, [ebp - 0x1082c]
push eax
lea eax, [ebp - 0x10854]
push eax
lea eax, [ebx + 0x80]
push eax
push str.Allow_icmp__S_connection__S_by__S_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x14
lea ecx, [ebp - 0x1082c]
call fcn.004250c0
lea ecx, [ebp - 0x10854]
call fcn.004250c0
lea ecx, [ebp - 0x10804]
call fcn.0042b120
mov ecx, ebx
call fcn.0056c080
mov dword [ebp - 0x10838], eax
mov dword [ebp - 0x1082c], 0
test eax, eax
je 0x499f1b
push 1
push 0xa
lea ecx, [ebp - 0x10868]
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x499eef
push ecx
lea eax, [ebx + 0xd3]
push eax
lea edx, [ebp - 0x10824]
lea ecx, [ebp - 0x1082c]
call fcn.00470fa0
cmp byte [ebx + 0x1fa], 0
lea eax, [ebp - 0x1082c]
push eax
mov ecx, str.icmp
mov eax, str.ping
cmove eax, ecx
push eax
push str.Error_adding_hash_for__s_connection__S_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x18
lea ecx, [ebp - 0x1082c]
call fcn.004250c0
movzx eax, byte [ebp - 0x1c]
lea ecx, [ebp - 0x10868]
mov word [ebp - 0x1081c], ax
movzx eax, byte [ebp - 0x1b]
mov word [ebp - 0x1081a], ax
call fcn.0042b120
mov eax, dword [ebp - 0x10838]
jmp 0x49a527
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push ebx
mov dword [ebx + 0x78], eax
call fcn.004a5e30
mov edi, dword [ebp - 0x10840]
jmp 0x49a68a
push 1
push 0xa
lea ecx, [ebp - 0x10868]
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x499fbe
push ecx
lea eax, [ebx + 0xd3]
push eax
lea edx, [ebp - 0x10824]
lea ecx, [ebp - 0x10844]
call fcn.00470fa0
add esp, 8
lea eax, [ebp - 0x1082c]
lea ecx, [ebx + 0xd3]
push eax
call fcn.00470520
lea eax, [ebp - 0x1082c]
push eax
lea eax, [ebp - 0x10844]
push eax
lea eax, [ebx + 0x80]
push eax
push str.Cant_apply_allowing_rule._Rejecting_icmp__S_connection__S_by__S_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x14
lea ecx, [ebp - 0x1082c]
call fcn.004250c0
lea ecx, [ebp - 0x10844]
call fcn.004250c0
lea ecx, [ebp - 0x10868]
call fcn.0042b120
mov edx, dword [ebp - 0x10830]
movzx eax, byte [ebp - 0x1c]
mov word [ebp - 0x1081c], ax
movzx eax, byte [ebp - 0x1b]
mov word [ebp - 0x1081a], ax
mov eax, dword [ebx + 0xd3]
cmp eax, 3
jne 0x49a246
lea ecx, [ebp - 0x10868]
push 1
push 0xa
cmp edx, 8
jne 0x49a1be
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x49a086
push ecx
lea eax, [ebx + 0xd3]
push eax
lea edx, [ebp - 0x10824]
lea ecx, [ebp - 0x10844]
call fcn.00470fa0
add esp, 8
lea eax, [ebp - 0x1082c]
lea ecx, [ebx + 0xd3]
push eax
call fcn.00470520
lea eax, [ebp - 0x1082c]
push eax
lea eax, [ebp - 0x10844]
push eax
lea eax, [ebx + 0x80]
push eax
push str.TTL_expired__reject_ping__S_request__S_by__S_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x14
lea ecx, [ebp - 0x1082c]
call fcn.004250c0
lea ecx, [ebp - 0x10844]
call fcn.004250c0
lea ecx, [ebp - 0x10868]
call fcn.0042b120
mov dword [ebp - 0x1082c], 0
lea edx, [ebp - 0x1082c]
mov byte [ebp - 4], 4
mov ecx, esi
call fcn.00471c30
test eax, eax
je 0x49a1aa
mov ecx, dword [ebp - 0x1081c]
movq xmm0, qword [ebp - 0x10824]
mov eax, dword [eax + 0x26]
mov dword [ebp - 0x107f8], ecx
mov ecx, dword [ebp - 0x10824]
movq qword [ebp - 0x10800], xmm0
cmp ecx, eax
jne 0x49a0ed
mov eax, dword [ebp - 0x107fc]
mov edx, 0x1010101
cmp ecx, edx
cmovne eax, edx
push 0
mov dword [ebp - 0x107fc], eax
lea edx, [ebp - 0x107f0]
mov eax, dword [ebx + 0x188]
lea ecx, [esi + 0x26]
push 0xb
mov dword [ebp - 0x10878], eax
lea eax, [ebp - 0x10800]
push esi
push eax
call fcn.0047e060
add esp, 0x10
cmp byte [ebx + 0xeb], 0
je 0x49a172
cmp byte [ebx + 0xec], 0
jne 0x49a172
mov eax, dword [ebp - 0x10834]
sub esp, 0x10
mov esi, dword [esi + 0x14]
mov ecx, esp
mov bl, byte [ebx + 0x20]
sub esi, 0xe
push dword [eax + 8]
call fcn.005d27c0
sub esp, 8
push ebx
mov ebx, dword [ebp - 0x10834]
push 0
push esi
push edi
push ecx
lea eax, [ebx + 0x10a]
mov ecx, esp
push eax
call fcn.005a5bd0
call fcn.00570590
mov esi, dword [ebp - 0x10848]
push ecx
mov ecx, ebx
call fcn.004996b0
xor ebx, ebx
lea ecx, [ebp - 0x10874]
mov dword [ebp - 0x10834], ebx
call fcn.0041d900
push dword [ebp - 0x10878]
mov ecx, dword [ebp - 0x1087c]
push esi
call fcn.0046f150
lea ecx, [ebp - 0x10874]
call fcn.0041d970
lea ecx, [ebp - 0x1082c]
mov byte [ebp - 4], 1
call fcn.004250c0
jmp 0x49a417
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x49a40c
push ecx
lea eax, [ebx + 0xd3]
push eax
lea edx, [ebp - 0x10824]
lea ecx, [ebp - 0x10844]
call fcn.00470fa0
add esp, 8
lea eax, [ebp - 0x1082c]
lea ecx, [ebx + 0xd3]
push eax
call fcn.00470520
lea eax, [ebp - 0x1082c]
push eax
lea eax, [ebp - 0x10844]
push eax
lea eax, [ebx + 0x80]
push eax
push str.TTL_expired__deny_icmp__S_message_packet__S_by__S_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x14
lea ecx, [ebp - 0x1082c]
call fcn.004250c0
lea ecx, [ebp - 0x10844]
call fcn.004250c0
jmp 0x49a40c
test eax, eax
je 0x49a417
push 1
push 0xa
lea ecx, [ebp - 0x10868]
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x49a2d7
push ecx
lea eax, [ebx + 0xd3]
push eax
lea edx, [ebp - 0x10824]
lea ecx, [ebp - 0x10844]
call fcn.00470fa0
add esp, 8
lea eax, [ebp - 0x1082c]
lea ecx, [ebx + 0xd3]
push eax
call fcn.00470520
lea eax, [ebp - 0x1082c]
push eax
lea eax, [ebp - 0x10844]
push eax
lea eax, [ebx + 0x80]
push eax
push str.Reject_icmp__S_connection__S_by__S_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x14
lea ecx, [ebp - 0x1082c]
call fcn.004250c0
lea ecx, [ebp - 0x10844]
call fcn.004250c0
cmp dword [ebp - 0x10830], 8
jne 0x49a408
mov dword [ebp - 0x1082c], 0
lea edx, [ebp - 0x1082c]
mov byte [ebp - 4], 6
mov ecx, esi
call fcn.00471c30
test eax, eax
je 0x49a3fd
mov ecx, dword [ebp - 0x1081c]
movq xmm0, qword [ebp - 0x10824]
mov eax, dword [eax + 0x26]
mov dword [ebp - 0x107f8], ecx
mov ecx, dword [ebp - 0x10824]
movq qword [ebp - 0x10800], xmm0
cmp ecx, eax
jne 0x49a340
mov eax, dword [ebp - 0x107fc]
mov edx, 0x1010101
cmp ecx, edx
cmovne eax, edx
push 0xa
mov dword [ebp - 0x107fc], eax
lea edx, [ebp - 0x107f0]
mov eax, dword [ebx + 0x188]
lea ecx, [esi + 0x26]
push 3
mov dword [ebp - 0x10878], eax
lea eax, [ebp - 0x10800]
push esi
push eax
call fcn.0047e060
add esp, 0x10
cmp byte [ebx + 0xeb], 0
je 0x49a3c5
cmp byte [ebx + 0xec], 0
jne 0x49a3c5
mov eax, dword [ebp - 0x10834]
sub esp, 0x10
mov esi, dword [esi + 0x14]
mov ecx, esp
mov bl, byte [ebx + 0x20]
sub esi, 0xe
push dword [eax + 8]
call fcn.005d27c0
sub esp, 8
push ebx
mov ebx, dword [ebp - 0x10834]
push 0
push esi
push edi
push ecx
lea eax, [ebx + 0x10a]
mov ecx, esp
push eax
call fcn.005a5bd0
call fcn.00570590
mov esi, dword [ebp - 0x10848]
push ecx
mov ecx, ebx
call fcn.004996b0
xor ebx, ebx
lea ecx, [ebp - 0x10874]
mov dword [ebp - 0x10834], ebx
call fcn.0041d900
push dword [ebp - 0x10878]
mov ecx, dword [ebp - 0x1087c]
push esi
call fcn.0046f150
lea ecx, [ebp - 0x10874]
call fcn.0041d970
lea ecx, [ebp - 0x1082c]
call fcn.004250c0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10868]
call fcn.0042b120
test ebx, ebx
je 0x499d4e
mov dword [ebx + 0xd3], 2
cmp byte [ebx + 0xeb], 0
je 0x499cfe
cmp byte [ebx + 0xec], 0
jne 0x499d44
mov ecx, dword [ebp - 0x10840]
mov bl, byte [ebx + 0x20]
call fcn.00532470
sub esp, 0x10
mov esi, eax
mov ecx, esp
push dword [ebp - 0x10824]
call fcn.005d27c0
sub esp, 8
push ebx
mov ebx, dword [ebp - 0x10834]
push esi
push 0
push edi
push ecx
lea eax, [ebx + 0x10a]
mov ecx, esp
push eax
call fcn.005a5bd0
call fcn.00570590
jmp 0x499d3e
push 0
push 0xa
lea ecx, [ebp - 0x10868]
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x49a4cf
cmp dword [ebp - 0x10830], 8
mov ecx, str.ICMP
mov eax, str.Ping_request
cmovne eax, ecx
push eax
push str.Memory_allocaton_error_for__s_packet_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
lea ecx, [ebp - 0x10868]
call fcn.0042b120
mov ebx, dword [esi + 0xc]
mov ecx, dword [ebp - 0x10840]
shr ebx, 1
and bl, 1
call fcn.00532470
sub esp, 0x10
mov esi, eax
mov ecx, esp
push dword [ebp - 0x10824]
call fcn.005d27c0
sub esp, 8
push ebx
push 0
push esi
push edi
push ecx
mov ecx, esp
push str.Unknown
call fcn.005a5400
call fcn.00570590
jmp 0x49b76a
mov ebx, dword [ebp - 0x1084c]
or edi, 0xffffffff
cmp eax, 0xfffffc18
je 0x49a651
mov dword [ebp - 0x1085c], 0xa
mov byte [ebp - 0x10858], 1
mov byte [ebp - 4], 1
mov ebx, dword [0x6ac16c]
push 0xffffffffffffffff
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x80
jne 0x49a567
mov dword [ebx + 8], 0
jmp 0x49a56b
test eax, eax
jne 0x49a574
inc dword [ebx + 0xc]
inc dword [ebx + 8]
inc dword [ebx + 4]
mov eax, dword [0x6a6e68]
mov dword [ebp - 0x10868], eax
mov eax, dword [0x6a6e6c]
mov dword [ebp - 0x10864], eax
mov eax, dword [0x6af2b8]
nop
mov dword [ebp - 0x10860], eax
mov ecx, 0x6af2b8
mov eax, 0xa
xchg dword [ecx], eax
lea ecx, [ebp - 0x10868]
mov dword [0x6a6e68], 0xaaaaff
mov dword [0x6a6e6c], 0xffffffff
call fcn.0042b180
mov ebx, dword [ebp - 0x1084c]
test al, al
je 0x49a646
lea edx, [ebp - 0x10824]
push ecx
test ebx, ebx
je 0x49a5fb
lea eax, [ebx + 0xd3]
push eax
lea ecx, [ebp - 0x10878]
call fcn.00470fa0
add esp, 8
mov ecx, dword [eax]
mov dword [ebp - 0x10854], ecx
lea ecx, [ebp - 0x10878]
jmp 0x49a617
lea ecx, [ebp - 0x10880]
call fcn.00470d70
add esp, 4
mov ecx, dword [eax]
mov dword [ebp - 0x10854], ecx
lea ecx, [ebp - 0x10880]
mov dword [eax], 0
call fcn.004250c0
lea eax, [ebp - 0x10854]
push eax
push str.deny_reject_icmp:__S_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
lea ecx, [ebp - 0x10854]
call fcn.004250c0
lea ecx, [ebp - 0x10868]
call fcn.0042b120
test ebx, ebx
je 0x49a65d
push ecx
mov ecx, ebx
call fcn.004996b0
cmp dword [ebp - 0x10838], 0xfffffc18
je 0x49b76a
jmp 0x49a4da
mov ebx, dword [ebp - 0x1084c]
mov eax, dword [ebp - 0x10850]
mov dword [ebp - 0x10834], ebx
mov dword [ebp - 0x1082c], eax
mov ecx, dword [ebx + 8]
call fcn.0056e760
mov ecx, ebx
mov dword [ebp - 0x10854], eax
call fcn.00443f70
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebx + 0x78], eax
mov ecx, dword [0x6a710c]
mov dword [ebx + 4], ecx
mov dword [ebx], 0x6a7108
mov dword [0x6a710c], ebx
mov eax, dword [ebx + 4]
mov dword [eax], ebx
mov eax, dword [ebp - 0x10854]
cmp dword [ebx + 0x176], eax
je 0x49a7e6
mov eax, dword [0x6af2bc]
mov dword [ebp - 0x1085c], 0xa
nop
test eax, 0x400
jne 0x49a770
cmp byte [0x6ac39e], 0
jne 0x49a770
mov byte [ebp - 0x10858], 1
mov esi, dword [0x6ac16c]
push 0xffffffffffffffff
push dword [esi]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x80
jne 0x49a71f
mov dword [esi + 8], 0
jmp 0x49a723
test eax, eax
jne 0x49a72c
inc dword [esi + 0xc]
inc dword [esi + 8]
inc dword [esi + 4]
mov eax, dword [0x6a6e68]
mov dword [ebp - 0x10868], eax
mov eax, dword [0x6a6e6c]
mov dword [ebp - 0x10864], eax
mov eax, dword [0x6af2b8]
nop
mov dword [ebp - 0x10860], eax
mov ecx, 0x6af2b8
mov eax, 0xa
xchg dword [ecx], eax
mov dword [0x6a6e68], 0xaaaaff
mov dword [0x6a6e6c], 0xffffffff
jmp 0x49a777
mov byte [ebp - 0x10858], 0
lea ecx, [ebp - 0x10868]
call fcn.0042b180
mov esi, dword [ebp - 0x1084c]
test al, al
je 0x49a7aa
push dword [ebp - 0x10854]
push dword [esi + 0x176]
push str.UserId_was_changed_from__d_to__d___dropping_packet_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x10
lea ecx, [ebp - 0x10868]
call fcn.0042b120
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x49a7c0
mov eax, dword [esi]
mov dword [ecx], eax
mov ecx, dword [esi]
test ecx, ecx
je 0x49a7cc
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
push ecx
mov ecx, esi
mov dword [esi + 4], 0
mov dword [esi], 0
call fcn.004996b0
jmp 0x49b76a
mov ecx, dword [ebp - 0x1087c]
mov edx, edi
call fcn.00498aa0
test al, al
jne 0x49b76a
cmp dword [ebp - 0x10830], 8
je 0x49b76a
mov ecx, dword [esi + 0x10]
xor dl, dl
mov al, byte [ebp - 0x1c]
shr ecx, 1
and ecx, 0xffffff01
mov byte [ebp - 0x10825], dl
mov byte [ebp - 0x10826], dl
mov dword [ebp - 0x10830], ecx
cmp al, 3
je 0x49a845
cmp al, 0xb
jne 0x49b1be
mov al, byte [ebp - 0x1b]
test al, al
je 0x49a845
cmp al, 1
jne 0x49b1be
mov edi, dword [ebp - 0x10878]
push edi
push str.DU:_len___d_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
cmp edi, 0x1c
jle 0x49b1b2
mov ecx, dword [ebp - 0x107d8]
mov esi, ecx
mov eax, ecx
and esi, 0xff0000
shr eax, 0x10
or esi, eax
mov eax, ecx
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shr esi, 8
mov ecx, dword [ebp - 0x107dc]
mov edx, ecx
shl eax, 8
and edx, 0xff0000
or esi, eax
mov eax, ecx
shr eax, 0x10
or edx, eax
mov dword [ebp - 0x10818], esi
mov eax, ecx
shr edx, 8
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shl eax, 8
or edx, eax
movzx eax, byte [ebp - 0x107e8]
and eax, 0xf
mov dword [ebp - 0x10814], edx
shl eax, 2
push eax
movzx eax, byte [ebp - 0x107df]
push eax
push esi
push edx
push str.DU:_incaps:_IPs_I__IPd_I__protocol_d__IPHL_d_n
push 0x6a6e70
call fcn.0042abc0
movzx ecx, byte [ebp - 0x107e8]
add esp, 0x18
and ecx, 0xf
lea eax, [ecx*4 + 0x10]
cmp edi, eax
jl 0x49b18c
mov al, byte [ebp - 0x107df]
cmp al, 6
jne 0x49aee1
lea esi, [ebp - 0x107e8]
movzx eax, word [esi + ecx*4 + 2]
lea esi, [esi + ecx*4]
mov ch, al
mov dword [ebp - 0x10838], esi
mov cl, ah
movzx eax, word [esi]
movzx edx, cx
mov ch, al
mov cl, ah
mov word [ebp - 0x10810], dx
push edx
movzx ecx, cx
push ecx
push str.DU:_incaps_TCP:_PortS_d__PortD_d_n
push 0x6a6e70
mov word [ebp - 0x1080e], cx
call fcn.0042abc0
mov esi, dword [ebp - 0x10848]
lea eax, [ebp - 0x10850]
add esp, 0x10
mov ecx, 0x6adda0
test byte [esi + 0xc], 2
push eax
lea eax, [ebp - 0x10818]
push eax
mov eax, 0x6addd0
cmovne ecx, eax
call fcn.004a5e50
test eax, eax
jne 0x49aeca
mov esi, dword [ebp - 0x10850]
push esi
push str.DU:_TCP_hash_found__dTcp.b_d_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
mov byte [ebp - 0x10825], 1
cmp esi, 3
ja case.default.0x49a9ba
jmp dword [esi*4 + 0x49b85c]
mov eax, dword [ebp - 0x1084c]
movq xmm0, qword [eax + 0x241]
mov ecx, dword [eax + 0x249]
mov al, byte [eax + 0x478]
mov byte [ebp - 0x10826], al
jmp 0x49aa5d
mov eax, dword [ebp - 0x1084c]
movq xmm0, qword [eax + 0x235]
mov ecx, dword [eax + 0x23d]
mov al, byte [eax + 0x478]
mov byte [ebp - 0x10826], al
jmp 0x49aa5d
mov eax, dword [ebp - 0x1084c]
movq xmm0, qword [eax + 0x25b]
mov ecx, dword [eax + 0x263]
mov al, byte [eax + 0x4aa]
mov byte [ebp - 0x10826], al
jmp 0x49aa5d
mov eax, dword [ebp - 0x1084c]
movq xmm0, qword [eax + 0x24f]
mov ecx, dword [eax + 0x257]
mov al, byte [eax + 0x4aa]
mov byte [ebp - 0x10826], al
jmp 0x49aa5d
mov eax, dword [ebp - 0x1084c]
movq xmm0, qword [eax + 0x24f]
mov ecx, dword [eax + 0x257]
mov dword [ebp - 0x107f8], ecx
movzx eax, word [ebp - 0x107f8]
shr ecx, 0x10
push ecx
movq qword [ebp - 0x10800], xmm0
mov ebx, dword [ebp - 0x107fc]
mov edi, dword [ebp - 0x10800]
push ebx
push eax
push edi
push str.DU:_dTcp.k2:__I:_d______I:_d_n
push 0x6a6e70
call fcn.0042abc0
mov edx, dword [ebp - 0x10838]
lea eax, [ebp - 0x107f0]
movzx ecx, word [ebp - 0x107ee]
sub edx, eax
mov eax, dword [ebp - 0x107ee]
add edx, 0x12
shl eax, 8
shr ecx, 8
movzx eax, ax
or ecx, eax
mov dword [ebp - 0x1080c], edx
xor eax, eax
not ecx
mov word [ebp - 0x107ee], ax
movzx eax, cx
lea ecx, [ebp - 0x107f0]
push eax
call fcn.0047bf20
mov cx, word [ebp - 0x107f6]
mov esi, eax
mov ax, word [ebp - 0x107f8]
add esp, 0x14
mov edx, dword [ebp - 0x10838]
mov word [ebp - 0x12], ax
lea eax, [ebp - 0x1c]
mov word [ebp - 0x14], cx
lea ecx, [ebp - 0x107e8]
push 0xffffffffffffffff
push eax
lea eax, [ebp - 0x10818]
mov dword [ebp - 0x1c], ebx
push eax
mov dword [ebp - 0x18], edi
call fcn.0047c9b0
mov edx, dword [ebp - 0x1080c]
lea ecx, [ebp - 0x107f0]
add esp, 0x14
push esi
call fcn.0047bf60
add esp, 4
not eax
mov ch, al
mov cl, ah
movzx eax, word [ebp - 0x14]
mov word [ebp - 0x107ee], cx
push eax
push dword [ebp - 0x1c]
movzx eax, word [ebp - 0x12]
push eax
push dword [ebp - 0x18]
movzx eax, word [ebp - 0x10810]
push eax
push dword [ebp - 0x10818]
movzx eax, word [ebp - 0x1080e]
push eax
push dword [ebp - 0x10814]
push str.du:_SubstTcpR:__I:_d____I:_d_____I:_d____I:_d_n
push 0x6a6e70
call fcn.0042abc0
push str.DU:_Subst_done_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x30
cmp byte [ebp - 0x10826], 0
je 0x49b1a6
mov edi, dword [ebp - 0x10850]
cmp edi, 3
ja case.default.0x49aba6
jmp dword [edi*4 + 0x49b86c]
mov ebx, dword [ebp - 0x1084c]
movq xmm0, qword [ebx + 0x241]
mov cl, byte [ebx + 0x24d]
movq qword [ebp - 0x1c], xmm0
jmp 0x49ac1f
mov ebx, dword [ebp - 0x1084c]
movq xmm0, qword [ebx + 0x235]
mov cl, byte [ebx + 0x24e]
movq qword [ebp - 0x1c], xmm0
jmp 0x49ac1f
mov ebx, dword [ebp - 0x1084c]
movq xmm0, qword [ebx + 0x25b]
movq qword [ebp - 0x1c], xmm0
jmp 0x49ac19
mov ebx, dword [ebp - 0x1084c]
movq xmm0, qword [ebx + 0x24f]
mov cl, byte [ebx + 0x268]
movq qword [ebp - 0x1c], xmm0
jmp 0x49ac1f
mov ebx, dword [ebp - 0x1084c]
mov cl, byte [ebx + 0x267]
mov esi, dword [ebp - 0x10848]
xor edx, edx
test cl, cl
mov dword [ebp - 0x10830], ecx
mov eax, 2
cmovne edx, eax
mov eax, dword [esi + 0xc]
and eax, 2
mov dword [ebp - 0x1080c], edx
cmp eax, edx
je 0x49ac6f
mov ecx, dword [esi + 0x18]
mov dx, word [esi + 0x1c]
mov eax, dword [esi + 0x1e]
mov dword [esi + 0x18], eax
mov ax, word [esi + 0x22]
mov dword [esi + 0x1e], ecx
mov ecx, dword [ebp - 0x10830]
mov word [esi + 0x22], dx
mov edx, dword [ebp - 0x1080c]
mov word [esi + 0x1c], ax
mov dword [esi + 0xc], edx
mov dword [esi + 0x10], 0
cmp edi, 3
ja case.default.0x49ac82
jmp dword [edi*4 + 0x49b87c]
cmp byte [ebx + 0x478], 0
mov dl, byte [ebp - 0x10825]
je 0x49add8
mov eax, dword [ebx + 0x492]
mov dword [esi + 8], eax
mov eax, dword [ebx + 0x49c]
mov dword [esi + 0x18], eax
movzx eax, word [ebx + 0x4a0]
mov word [esi + 0x1c], ax
mov eax, dword [ebx + 0x496]
mov dword [esi + 0x1e], eax
movzx eax, word [ebx + 0x49a]
mov ebx, dword [ebp - 0x10834]
mov word [esi + 0x22], ax
jmp 0x49b1be
cmp byte [ebx + 0x3d0], 0
mov dl, byte [ebp - 0x10825]
je 0x49add8
mov eax, dword [ebx + 0x339]
mov dword [esi + 8], eax
mov eax, dword [ebx + 0x341]
mov dword [esi + 0x18], eax
movzx eax, word [ebx + 0x345]
mov word [esi + 0x1c], ax
mov eax, dword [ebx + 0x347]
mov dword [esi + 0x1e], eax
movzx eax, word [ebx + 0x34b]
mov ebx, dword [ebp - 0x10834]
mov word [esi + 0x22], ax
jmp 0x49b1be
mov eax, dword [ebx + 0x33d]
test eax, eax
je 0x49ad34
mov dword [esi + 8], eax
cmp byte [ebx + 0x377], 0
je 0x49ad51
mov eax, dword [ebx + 0x370]
mov dword [esi + 0x1e], eax
mov ax, word [ebx + 0x374]
mov word [esi + 0x22], ax
cmp byte [ebx + 0x376], 0
je case.default.0x49ac82
mov ecx, dword [ebx + 0x378]
test ecx, ecx
je 0x49adaf
lea edx, [ebp - 0x1080c]
call fcn.00471a40
test eax, eax
jne 0x49ad9d
mov eax, dword [ebp - 0x1080c]
mov dword [ebx + 0x36a], eax
mov ax, word [ebp - 0x10808]
mov word [ebx + 0x36e], ax
mov dword [ebx + 0x378], 0
jmp 0x49adaf
push str.DU_case_2:_need_ArpReq_n
push 0x6a6e70
call fcn.0042abc0
add esp, 8
cmp dword [ebx + 0x378], 0
mov ecx, dword [ebp - 0x10830]
mov dl, byte [ebp - 0x10825]
jne 0x49add8
mov eax, dword [ebx + 0x36a]
mov dword [esi + 0x18], eax
mov ax, word [ebx + 0x36e]
mov word [esi + 0x1c], ax
mov ebx, dword [ebp - 0x10834]
jmp 0x49b1be
cmp byte [ebx + 0x358], 0
jne 0x49adf5
cmp byte [ebx + 0x4aa], 0
je 0x49ae3a
cmp byte [ebx + 0x359], 0
je 0x49ae3a
mov eax, dword [ebx + 0x35a]
mov dword [esi + 8], eax
mov eax, dword [ebx + 0x35e]
mov dword [esi + 0x18], eax
movzx eax, word [ebx + 0x362]
mov word [esi + 0x1c], ax
mov eax, dword [ebx + 0x364]
mov dword [esi + 0x1e], eax
movzx eax, word [ebx + 0x368]
mov word [esi + 0x22], ax
mov ebx, dword [ebp - 0x10834]
jmp 0x49b1b8
cmp byte [ebx + 0x377], 0
je 0x49ae57
mov eax, dword [ebx + 0x370]
mov dword [esi + 0x18], eax
mov ax, word [ebx + 0x374]
mov word [esi + 0x1c], ax
cmp byte [ebx + 0x376], 0
je case.default.0x49ac82
mov ecx, dword [ebx + 0x378]
test ecx, ecx
je 0x49aeb1
lea edx, [ebp - 0x1080c]
call fcn.00471a40
test eax, eax
jne 0x49ae9f
mov eax, dword [ebp - 0x1080c]
mov dword [ebx + 0x36a], eax
mov ax, word [ebp - 0x10808]
mov word [ebx + 0x36e], ax
mov dword [ebx + 0x378], 0
jmp 0x49aeb1
push str.DU_case_3:_need_ArpReq_n
push 0x6a6e70
call fcn.0042abc0
add esp, 8
mov eax, dword [ebx + 0x36a]
mov dword [esi + 0x1e], eax
mov ax, word [ebx + 0x36e]
mov word [esi + 0x22], ax
jmp 0x49b1ac
push str.DU:_TCP_hash_NOT_found_n
push 0x6a6e70
call fcn.0042abc0
add esp, 8
jmp 0x49b1b2
cmp al, 0x11
jne 0x49b18c
lea esi, [ebp - 0x107e8]
movzx eax, word [esi + ecx*4 + 2]
lea esi, [esi + ecx*4]
mov ch, al
mov dword [ebp - 0x10834], esi
mov cl, ah
movzx eax, word [esi]
movzx edx, cx
mov ch, al
mov cl, ah
mov word [ebp - 0x10810], dx
push edx
movzx ecx, cx
push ecx
push str.DU:_incaps_UDP:_PortS_d__PortD_d_n
push 0x6a6e70
mov word [ebp - 0x1080e], cx
call fcn.0042abc0
mov esi, dword [ebp - 0x10848]
lea eax, [ebp - 0x10850]
add esp, 0x10
mov ecx, 0x6ade60
test byte [esi + 0xc], 2
push eax
lea eax, [ebp - 0x10818]
push eax
mov eax, 0x6ade90
cmovne ecx, eax
call fcn.004a5e50
test eax, eax
jne 0x49b177
mov edi, dword [ebp - 0x10850]
push edi
push str.DU:_UDP_hash_found__dUdp.b_d_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
mov byte [ebp - 0x10825], 1
sub edi, 0
je 0x49af9d
sub edi, 1
mov edi, dword [ebp - 0x1084c]
movq xmm0, qword [edi + 0xc]
mov ecx, dword [edi + 0x14]
mov al, byte [edi + 0x24]
jmp 0x49afae
mov edi, dword [ebp - 0x1084c]
movq xmm0, qword [edi + 0x18]
mov ecx, dword [edi + 0x20]
mov al, byte [edi + 0x25]
mov dword [ebp - 0x107f8], ecx
shr ecx, 0x10
push ecx
movq qword [ebp - 0x10800], xmm0
push dword [ebp - 0x107fc]
mov dword [ebp - 0x10830], eax
movzx eax, word [ebp - 0x107f8]
push eax
push dword [ebp - 0x10800]
push str.DU:_dUdp.k2:__I:_d______I:_d_n
push 0x6a6e70
call fcn.0042abc0
xor eax, eax
add esp, 0x18
cmp byte [ebp - 0x10830], al
mov ecx, 2
cmovne eax, ecx
mov dword [ebp - 0x10838], eax
mov eax, dword [esi + 0xc]
and eax, ecx
cmp eax, dword [ebp - 0x10838]
je 0x49b05e
cmp byte [ebp - 0x10830], 0
mov eax, dword [esi + 0x1e]
mov ecx, dword [esi + 0x18]
mov dx, word [esi + 0x1c]
mov dword [esi + 0x18], eax
mov ax, word [esi + 0x22]
mov dword [esi + 0x1e], ecx
mov word [esi + 0x1c], ax
mov word [esi + 0x22], dx
je 0x49b04a
mov eax, dword [edi + 0x96]
mov dword [esi + 0x1e], eax
mov ax, word [edi + 0x9a]
mov word [esi + 0x22], ax
jmp 0x49b05e
mov eax, dword [edi + 0x90]
mov dword [esi + 0x18], eax
mov ax, word [edi + 0x94]
mov word [esi + 0x1c], ax
mov eax, dword [ebp - 0x10838]
mov edi, dword [ebp - 0x10834]
mov dword [esi + 0xc], eax
lea eax, [ebp - 0x107f0]
sub edi, eax
mov dword [esi + 0x10], 0
mov eax, dword [ebp - 0x107ee]
movzx ecx, word [ebp - 0x107ee]
shl eax, 8
shr ecx, 8
lea edx, [edi + 8]
movzx eax, ax
or ecx, eax
xor eax, eax
not ecx
mov word [ebp - 0x107ee], ax
movzx eax, cx
lea ecx, [ebp - 0x107f0]
push eax
call fcn.0047bf20
mov cx, word [ebp - 0x107f6]
mov esi, eax
mov eax, dword [ebp - 0x107fc]
add esp, 4
mov edx, dword [ebp - 0x10834]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x10800]
mov dword [ebp - 0x18], eax
mov ax, word [ebp - 0x107f8]
mov word [ebp - 0x12], ax
lea eax, [ebp - 0x1c]
push 0xffffffffffffffff
push eax
lea eax, [ebp - 0x10818]
mov word [ebp - 0x14], cx
push eax
lea ecx, [ebp - 0x107e8]
call fcn.0047c090
add esp, 0xc
lea edx, [edi + 8]
lea ecx, [ebp - 0x107f0]
push esi
call fcn.0047bf60
add esp, 4
not eax
mov ch, al
mov cl, ah
movzx eax, word [ebp - 0x14]
mov word [ebp - 0x107ee], cx
push eax
push dword [ebp - 0x1c]
movzx eax, word [ebp - 0x12]
push eax
push dword [ebp - 0x18]
movzx eax, word [ebp - 0x10810]
push eax
push dword [ebp - 0x10818]
movzx eax, word [ebp - 0x1080e]
push eax
push dword [ebp - 0x10814]
push str.du:_SubstUdpR:__I:_d____I:_d_____I:_d____I:_d_n
push 0x6a6e70
call fcn.0042abc0
mov esi, dword [ebp - 0x10848]
add esp, 0x28
mov eax, str.DU:_Subst_done_n
push eax
push 0x6a6e70
call fcn.0042abc0
add esp, 8
jmp 0x49b1b2
mov eax, str.DU:_UDP_hash_NOT_found_n
push eax
push 0x6a6e70
call fcn.0042abc0
add esp, 8
jmp 0x49b1b2
push str.DU:_false:_if_len___8__IP_HeaderLength_p___8__IP_Protocol_p___Proto_TCP__Proto_UDP__n
push 0x6a6e70
call fcn.0042abc0
mov esi, dword [ebp - 0x10848]
add esp, 8
jmp 0x49b1b2
mov esi, dword [ebp - 0x10848]
mov ebx, dword [ebp - 0x10834]
mov ecx, dword [ebp - 0x10830]
mov dl, byte [ebp - 0x10825]
mov eax, dword [ebp - 0x1082c]
mov byte [ebp - 0x10838], 1
mov dword [ebp - 0x10834], 0
sub eax, 0
je 0x49b298
sub eax, 1
jne 0x49b27a
mov edx, dword [ebx + 0x10]
movq xmm0, qword [ebx + 8]
mov dword [ebp - 0x10830], edx
mov dword [ebp - 0x107f8], edx
mov dl, byte [ebp - 0x10825]
movq qword [ebp - 0x10850], xmm0
movq qword [ebp - 0x10800], xmm0
test dl, dl
je 0x49b21d
cmp byte [ebp - 0x10826], al
jne 0x49b24e
mov eax, dword [ebx + 0x88]
mov dword [esi + 8], eax
mov eax, dword [ebx + 0x90]
mov dword [esi + 0x18], eax
movzx eax, word [ebx + 0x94]
mov word [esi + 0x1c], ax
mov eax, dword [ebx + 0x96]
mov dword [esi + 0x1e], eax
movzx eax, word [ebx + 0x9a]
mov word [esi + 0x22], ax
cmp byte [ebx + 0xec], 0
mov cl, byte [ebx + 0x20]
jne 0x49b26a
cmp dword [ebx + 0x7c], 0
setne byte [ebp - 0x10838]
jmp 0x49b2ee
cmp byte [ebx + 0x9c], 0
sete byte [ebp - 0x10838]
jmp 0x49b2ee
movq xmm0, qword [ebp - 0x10800]
mov eax, dword [ebp - 0x107f8]
mov dword [ebp - 0x10830], eax
movq qword [ebp - 0x10850], xmm0
jmp 0x49b2ee
movq xmm0, qword [ebx + 0x14]
mov eax, dword [ebx + 0x1c]
movq qword [ebp - 0x10850], xmm0
movq qword [ebp - 0x10800], xmm0
mov dword [ebp - 0x10830], eax
mov dword [ebp - 0x107f8], eax
test dl, dl
jne 0x49b2cc
mov eax, dword [ebx + 0x8c]
mov dword [esi + 8], eax
mov cl, byte [ebx + 0x21]
cmp byte [ebx + 0xec], 0
jne 0x49b2e2
cmp dword [ebx + 0x7c], 0
sete byte [ebp - 0x10838]
jmp 0x49b2ee
mov al, byte [ebx + 0x9c]
mov byte [ebp - 0x10838], al
mov eax, dword [ebp - 0x10844]
movzx esi, byte [eax + 8]
dec esi
mov dword [ebp - 0x1080c], esi
cmp esi, 1
jge 0x49b3ea
push 0
push 0xa
lea ecx, [ebp - 0x10868]
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x49b3da
movzx eax, word [ebp - 0x1081a]
lea ecx, [ebp - 0x10838]
movzx edx, word [ebp - 0x1081c]
push eax
call fcn.00470dd0
add esp, 4
cmp dword [ebp - 0x10838], 0
je 0x49b365
lea eax, [ebp - 0x10838]
push eax
push 0x65d548
push eax
call fcn.005abfb0
add esp, 0xc
lea eax, [ebp - 0x10838]
push eax
movzx eax, word [ebp - 0x1081a]
push eax
push dword [ebp - 0x10820]
movzx eax, word [ebp - 0x1081c]
push eax
push dword [ebp - 0x10824]
lea eax, [ebp - 0x1082c]
push str._I:_d______I:_d_S
push eax
call fcn.005ac360
mov ecx, dword [ebp - 0x10838]
add esp, 0x1c
test ecx, ecx
je 0x49b3b6
or eax, 0xffffffff
lock xadd dword [ecx], eax
dec eax
jne 0x49b3b6
push ecx
call fcn.005a47b0
lea eax, [ebp - 0x1082c]
push eax
push str.TTL_expired_in_icmp_connection__S_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
lea ecx, [ebp - 0x1082c]
call fcn.004250c0
lea ecx, [ebp - 0x10868]
call fcn.0042b120
jmp 0x49b76a
test dl, dl
je 0x49b3f7
cmp byte [ebp - 0x10826], 0
jne 0x49b409
xor edx, edx
mov eax, 2
test cl, cl
cmovne edx, eax
mov dword [ebp - 0x10834], edx
cmp byte [ebx + 0xeb], 0
je 0x49b461
cmp byte [ebx + 0xec], 0
jne 0x49b461
mov ecx, dword [ebp - 0x10840]
call fcn.00532470
sub esp, 0x10
mov esi, eax
mov ecx, esp
push dword [ebx + 8]
call fcn.005d27c0
sub esp, 8
lea eax, [ebx + 0x10a]
push dword [ebp - 0x10838]
push esi
push 0
push dword [ebp - 0x10854]
push ecx
mov ecx, esp
push eax
call fcn.005a5bd0
call fcn.00570590
mov esi, dword [ebp - 0x1080c]
mov edi, dword [ebp - 0x10848]
lea eax, [ebp - 0x10840]
push eax
mov dword [ebp - 0x10840], 0
lea eax, [edi + 8]
push eax
call fcn.004a73e0
mov ecx, dword [ebp - 0x10840]
test ecx, ecx
jne 0x49b4ca
push ecx
push 0xa
lea ecx, [ebp - 0x10868]
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x49b4ba
push str.icmp:_adapter_disappeared__cant_get_MTU_and_pass_packet._n
push 0x6a6e70
call fcn.0042abc0
add esp, 8
lea ecx, [ebp - 0x10868]
call fcn.0042b120
jmp 0x49b76a
mov ecx, dword [ecx + 0x21c]
mov eax, 0x5dc
test ecx, ecx
cmove ecx, eax
mov eax, dword [edi + 8]
mov dword [ebp - 0x10840], ecx
cmp eax, dword [0x6a6bfc]
jne 0x49b4fe
mov eax, dword [0x6a6c0c]
add eax, 0xfffffff3
cmp ecx, eax
cmovg ecx, eax
mov dword [ebp - 0x10840], ecx
cmp byte [ebp - 0x10825], 0
lea edx, [ebp - 0x10824]
push esi
je 0x49b5c3
cmp byte [ebp - 0x10826], 0
mov eax, dword [ebp - 0x10830]
movq xmm0, qword [ebp - 0x10850]
mov esi, dword [ebp - 0x10844]
mov ecx, esi
mov dword [ebp - 0x107f8], eax
mov eax, dword [ebp - 0x1c]
movq qword [ebp - 0x10800], xmm0
jne 0x49b545
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x10800], eax
lea eax, [ebp - 0x10800]
push eax
call fcn.0047bfb0
push dword [ebp - 0x10880]
mov eax, dword [ebp - 0x10848]
mov edi, dword [esi + 0xc]
add eax, 0x1e
movzx ecx, byte [ebp - 0x107ef]
mov esi, dword [esi + 0x10]
movzx edx, byte [ebp - 0x107f0]
push eax
push ecx
bswap esi
push esi
push edx
bswap edi
push edi
mov edi, dword [ebp - 0x10848]
mov ecx, str.Send
mov eax, 0x65f974
test byte [edi + 0xc], 2
cmove eax, ecx
push eax
push str.final:_DU:_SubstIcmpR:__s__I:_d____I:_d___:____:_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0x2c
mov dword [edi + 0x10], 0
cmp byte [ebp - 0x10826], 0
jne 0x49b67c
jmp 0x49b5eb
lea eax, [ebp - 0x10800]
push eax
lea ecx, [edi + 0x26]
call fcn.0047bfb0
mov eax, dword [ebp - 0x10834]
add esp, 8
or eax, dword [ebp - 0x10888]
mov dword [edi + 0xc], eax
mov dword [edi + 0x10], 0
cmp dword [ebp - 0x1082c], 1
je 0x49b67c
cmp byte [ebp - 0x10825], 0
jne 0x49b67c
cmp byte [ebx + 0xc6], 0
je 0x49b61e
mov eax, dword [ebx + 0xcd]
mov dword [edi + 0x1e], eax
mov ax, word [ebx + 0xd1]
mov word [edi + 0x22], ax
cmp byte [ebx + 0xc5], 0
je 0x49b67c
mov ecx, dword [ebx + 0xa1]
test ecx, ecx
je 0x49b668
lea edx, [ebp - 0x10888]
call fcn.00471a40
test eax, eax
jne 0x49b79c
mov eax, dword [ebp - 0x10888]
mov dword [ebx + 0xc7], eax
mov ax, word [ebp - 0x10884]
mov word [ebx + 0xcb], ax
mov dword [ebx + 0xa1], 0
mov eax, dword [ebx + 0xc7]
mov dword [edi + 0x18], eax
mov ax, word [ebx + 0xcb]
mov word [edi + 0x1c], ax
push dword [ebp - 0x10878]
lea eax, [ebp - 0x107f0]
push dword [ebp - 0x10840]
push eax
lea eax, [edi + 0x26]
push eax
lea eax, [edi + 0x18]
push eax
push edi
call fcn.00532660
cmp byte [ebx + 0xeb], 0
mov esi, eax
mov dword [ebp - 0x10888], esi
je 0x49b6f9
cmp byte [ebx + 0xec], 0
je 0x49b6f9
mov ecx, esi
call fcn.00532470
sub esp, 0x10
mov esi, eax
mov ecx, esp
push dword [ebx + 8]
call fcn.005d27c0
sub esp, 8
lea eax, [ebx + 0x10a]
push dword [ebp - 0x10838]
push esi
push 0
push dword [ebp - 0x10854]
push ecx
mov ecx, esp
push eax
call fcn.005a5bd0
call fcn.00570590
mov esi, dword [ebp - 0x10888]
mov ebx, dword [ebx + 0x188]
lea ecx, [ebp - 0x10874]
call fcn.0041d900
mov eax, dword [ebp - 0x1088c]
cmp eax, dword [edi + 8]
jne 0x49b746
mov eax, dword [edi + 0xc]
and eax, dword [ebp - 0x1083c]
test al, 2
je 0x49b746
push 6
lea ecx, [edi + 0x18]
mov edx, 0x6a6c20
call fcn.005a4c60
add esp, 4
test al, al
je 0x49b746
lea eax, [ebp - 0x10862]
mov ecx, esi
push eax
call fcn.005325a0
push ebx
push dword [ebp - 0x1087c]
mov ecx, esi
call fcn.005325d0
lea ecx, [ebp - 0x10874]
call fcn.0041d970
push esi
mov ecx, 0x6ad570
call fcn.00531350
lea ecx, [ebp - 0x10874]
call fcn.0041d900
lea ecx, [ebp - 0x10874]
call fcn.0041d9b0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00606a47
mov esp, ebp
pop ebp
ret
push 0
push 3
lea ecx, [ebp - 0x10868]
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x49b7d2
push dword [ebx + 0xa1]
push str.Icmp:_Resolving__I..._n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
lea ecx, [ebp - 0x10868]
call fcn.0042b120
push dword [ebx + 0xa1]
mov edx, dword [ebx + 0x9d]
mov ecx, edi
call fcn.004882a0
add esp, 4
lea ecx, [ebp - 0x10874]
test al, al
je 0x49b815
call fcn.0041d900
mov ecx, dword [0x6ac660]
push 0xffffffffffffffff
push edi
call fcn.0046f150
jmp 0x49b775
call fcn.0041d900
push 0
push 0xa
lea ecx, [ebp - 0x10868]
call fcn.0042af70
lea ecx, [ebp - 0x10868]
call fcn.0042b180
test al, al
je 0x49b84a
push str.Error_making_arp_packet_n
push 0x6a6e70
call fcn.0042abc0
add esp, 8
lea ecx, [ebp - 0x10868]
call fcn.0042b120
jmp 0x49b775