// File: /workspace/github_c_makefile_star2_O3/martintopholm[P]xping/xping.c
// Function: target_probe
static void
target_probe(int fd, short what, void *thunk)
{
	struct target *t = thunk;

	/* Missed request */
	if (t->npkts > 0 && GETRES(t, -1) != '.') {
		if (GETRES(t, -1) == ' ')
			target_mark(t, t->npkts - 1, '?');
		if (A_flag == 1)
			bell();
		else if (A_flag >= 2 &&
		    GETRES(t, -4) == '.' &&
		    GETRES(t, -3) == '.' &&
		    GETRES(t, -2) != '.' &&
		    GETRES(t, -1) != '.')
			bell();
	}

	/* Check packet count limit */
	if (c_count && t->npkts >= c_count) {
		numcomplete++;
		event_del(t->ev_write);
		if (numcomplete >= numtargets) {
			event_base_loopexit(ev_base, NULL);
		}
		return;
	}

	/* Transmit request */
	t->res[t->npkts % NUM] = ' ';
	probe_send(t->prb, t->npkts);
	t->npkts++;

	ui_update(t);
}

// Assembly:
pushq %rbx
movq %rdx, %rbx
movl 0x40(%rdx), %eax
testl %eax, %eax
jle 0x2f8c
decl %eax
imulq $0x1b4e81b5, %rax, %rcx # imm = 0x1B4E81B5
shrq $0x25, %rcx
imull $0x12c, %ecx, %ecx      # imm = 0x12C
subl %ecx, %eax
movzbl 0x44(%rbx,%rax), %ecx
cmpl $0x2e, %ecx
je 0x2f8c
cmpl $0x20, %ecx
jne 0x2ea3
movb $0x3f, 0x44(%rbx,%rax)
movq %rbx, %rdi
callq *0x4385(%rip)           # 0x7228
movl 0x43a7(%rip), %eax      # 0x7250
cmpl $0x1, %eax
jne 0x2ec9
leaq 0x2246(%rip), %rsi      # 0x50fb
movl $0x1, %edx
movl $0x1, %edi
callq 0x2080
jmp 0x2f8c
jle 0x2f8c
movl 0x40(%rbx), %eax
leal -0x4(%rax), %ecx
movslq %ecx, %rcx
imulq $0x1b4e81b5, %rcx, %rcx # imm = 0x1B4E81B5
movq %rcx, %rdx
shrq $0x3f, %rdx
sarq $0x25, %rcx
addl %edx, %ecx
imull $0x12c, %ecx, %ecx      # imm = 0x12C
negl %ecx
addl %eax, %ecx
addl $-0x4, %ecx
movslq %ecx, %rcx
cmpb $0x2e, 0x44(%rbx,%rcx)
jne 0x2f8c
leal -0x3(%rax), %ecx
movslq %ecx, %rcx
imulq $0x1b4e81b5, %rcx, %rdx # imm = 0x1B4E81B5
movq %rdx, %rsi
shrq $0x3f, %rsi
sarq $0x25, %rdx
addl %esi, %edx
imull $0x12c, %edx, %edx      # imm = 0x12C
subl %edx, %ecx
movslq %ecx, %rcx
cmpb $0x2e, 0x44(%rbx,%rcx)
jne 0x2f8c
leal -0x2(%rax), %ecx
movslq %ecx, %rcx
imulq $0x1b4e81b5, %rcx, %rdx # imm = 0x1B4E81B5
movq %rdx, %rsi
shrq $0x3f, %rsi
sarq $0x25, %rdx
addl %esi, %edx
imull $0x12c, %edx, %edx      # imm = 0x12C
subl %edx, %ecx
movslq %ecx, %rcx
cmpb $0x2e, 0x44(%rbx,%rcx)
je 0x2f8c
decl %eax
cltq
imulq $0x1b4e81b5, %rax, %rcx # imm = 0x1B4E81B5
movq %rcx, %rdx
shrq $0x3f, %rdx
sarq $0x25, %rcx
addl %edx, %ecx
imull $0x12c, %ecx, %ecx      # imm = 0x12C
subl %ecx, %eax
cltq
cmpb $0x2e, 0x44(%rbx,%rax)
jne 0x2eae
movl 0x42ba(%rip), %ecx      # 0x724c
testl %ecx, %ecx
sete %dl
movl 0x40(%rbx), %eax
cmpl %ecx, %eax
setl %cl
orb %dl, %cl
je 0x2fe8
movslq %eax, %rcx
imulq $0x1b4e81b5, %rcx, %rcx # imm = 0x1B4E81B5
movq %rcx, %rdx
shrq $0x3f, %rdx
shrq $0x20, %rcx
sarl $0x5, %ecx
addl %edx, %ecx
imull $0x12c, %ecx, %ecx      # imm = 0x12C
subl %ecx, %eax
cltq
movb $0x20, 0x44(%rbx,%rax)
movq 0x178(%rbx), %rdi
movl 0x40(%rbx), %esi
callq 0x341b
incl 0x40(%rbx)
movq %rbx, %rdi
popq %rbx
jmpq *0x4240(%rip)           # 0x7228
incl 0x427e(%rip)            # 0x726c
movq 0x180(%rbx), %rdi
callq 0x23a0
movl 0x426c(%rip), %eax      # 0x726c
cmpl 0x4262(%rip), %eax      # 0x7268
jge 0x300a
popq %rbx
retq
movq 0x4267(%rip), %rdi      # 0x7278
xorl %esi, %esi
popq %rbx
jmp 0x2160
nopl (%rax)