	.file	"75269.c"
	.intel_syntax noprefix
	.text
	.globl	display
	.bss
	.align 8
	.type	display, @object
	.size	display, 8
display:
	.zero	8
	.globl	win
	.align 8
	.type	win, @object
	.size	win, 8
win:
	.zero	8
	.globl	root_window
	.align 8
	.type	root_window, @object
	.size	root_window, 8
root_window:
	.zero	8
	.globl	screen_num
	.align 4
	.type	screen_num, @object
	.size	screen_num, 4
screen_num:
	.zero	4
	.local	appname
	.comm	appname,8,8
	.globl	gc
	.align 8
	.type	gc, @object
	.size	gc, 8
gc:
	.zero	8
	.globl	red
	.align 16
	.type	red, @object
	.size	red, 16
red:
	.zero	16
	.globl	cyan
	.align 16
	.type	cyan, @object
	.size	cyan, 16
cyan:
	.zero	16
	.globl	width
	.align 4
	.type	width, @object
	.size	width, 4
width:
	.zero	4
	.globl	height
	.align 4
	.type	height, @object
	.size	height, 4
height:
	.zero	4
	.globl	border_width
	.align 4
	.type	border_width, @object
	.size	border_width, 4
border_width:
	.zero	4
	.globl	window_name
	.section	.rodata
	.align 8
.LC0:
	.string	"Aplikacja wieloosobowego prowadzenia pojazdu"
	.section	.data.rel.local,"aw"
	.align 8
	.type	window_name, @object
	.size	window_name, 8
window_name:
	.quad	.LC0
	.globl	icon_name
	.align 8
	.type	icon_name, @object
	.size	icon_name, 8
icon_name:
	.quad	.LC0
	.globl	x
	.bss
	.align 4
	.type	x, @object
	.size	x, 4
x:
	.zero	4
	.globl	y
	.align 4
	.type	y, @object
	.size	y, 4
y:
	.zero	4
	.globl	display_name
	.align 8
	.type	display_name, @object
	.size	display_name, 8
display_name:
	.zero	8
	.globl	display_width
	.align 4
	.type	display_width, @object
	.size	display_width, 4
display_width:
	.zero	4
	.globl	display_height
	.align 4
	.type	display_height, @object
	.size	display_height, 4
display_height:
	.zero	4
	.globl	white_pixel
	.align 8
	.type	white_pixel, @object
	.size	white_pixel, 8
white_pixel:
	.zero	8
	.globl	black_pixel
	.align 8
	.type	black_pixel, @object
	.size	black_pixel, 8
black_pixel:
	.zero	8
	.globl	colorMap
	.align 8
	.type	colorMap, @object
	.size	colorMap, 8
colorMap:
	.zero	8
	.globl	size_hints
	.align 8
	.type	size_hints, @object
	.size	size_hints, 8
size_hints:
	.zero	8
	.globl	wm_hints
	.align 8
	.type	wm_hints, @object
	.size	wm_hints, 8
wm_hints:
	.zero	8
	.globl	class_hints
	.align 8
	.type	class_hints, @object
	.size	class_hints, 8
class_hints:
	.zero	8
	.globl	windowName
	.align 32
	.type	windowName, @object
	.size	windowName, 32
windowName:
	.zero	32
	.globl	iconName
	.align 32
	.type	iconName, @object
	.size	iconName, 32
iconName:
	.zero	32
	.globl	report
	.align 32
	.type	report, @object
	.size	report, 192
report:
	.zero	192
	.globl	values
	.align 32
	.type	values, @object
	.size	values, 128
values:
	.zero	128
	.globl	points
	.data
	.align 16
	.type	points, @object
	.size	points, 16
points:
	.value	60
	.value	110
	.value	110
	.value	110
	.value	110
	.value	130
	.value	60
	.value	130
	.globl	rpoints2
	.bss
	.align 16
	.type	rpoints2, @object
	.size	rpoints2, 16
rpoints2:
	.zero	16
	.globl	rpoints
	.align 16
	.type	rpoints, @object
	.size	rpoints, 16
rpoints:
	.zero	16
	.globl	xRotation
	.align 4
	.type	xRotation, @object
	.size	xRotation, 4
xRotation:
	.zero	4
	.globl	yRotation
	.align 4
	.type	yRotation, @object
	.size	yRotation, 4
yRotation:
	.zero	4
	.globl	degrees
	.data
	.align 4
	.type	degrees, @object
	.size	degrees, 4
degrees:
	.long	360
	.globl	coords
	.bss
	.align 32
	.type	coords, @object
	.size	coords, 36
coords:
	.zero	36
	.globl	value
	.align 4
	.type	value, @object
	.size	value, 4
value:
	.zero	4
	.globl	recipient
	.align 16
	.type	recipient, @object
	.size	recipient, 16
recipient:
	.zero	16
	.globl	socket_descriptor
	.align 4
	.type	socket_descriptor, @object
	.size	socket_descriptor, 4
socket_descriptor:
	.zero	4
	.globl	size
	.align 4
	.type	size, @object
	.size	size, 4
size:
	.zero	4
	.section	.rodata
	.align 8
.LC1:
	.string	"%s: couldn't allocate memory.\n"
	.align 8
.LC2:
	.string	"%s: couldn't connect to X server %s\n"
	.align 8
.LC3:
	.string	"%s: structure allocation for windowName failed.\n"
	.align 8
.LC4:
	.string	"%s: structure allocation for iconName failed.\n"
.LC5:
	.string	"red"
	.align 8
.LC6:
	.string	"XAllocNamedColor - failed to allocated 'red' color.\n"
.LC7:
	.string	"cyan"
	.align 8
.LC8:
	.string	"XAllocNamedColor - failed to allocated 'cyan' color.\n"
	.text
	.globl	init_display
	.type	init_display, @function
init_display:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	XAllocSizeHints@PLT
	mov	QWORD PTR size_hints[rip], rax
	mov	rax, QWORD PTR size_hints[rip]
	test	rax, rax
	je	.L2
	call	XAllocWMHints@PLT
	mov	QWORD PTR wm_hints[rip], rax
	mov	rax, QWORD PTR wm_hints[rip]
	test	rax, rax
	je	.L2
	call	XAllocClassHint@PLT
	mov	QWORD PTR class_hints[rip], rax
	mov	rax, QWORD PTR class_hints[rip]
	test	rax, rax
	jne	.L3
.L2:
	mov	rdx, QWORD PTR appname[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC1[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L3:
	mov	rax, QWORD PTR display_name[rip]
	mov	rdi, rax
	call	XOpenDisplay@PLT
	mov	QWORD PTR display[rip], rax
	mov	rax, QWORD PTR display[rip]
	test	rax, rax
	jne	.L4
	mov	rcx, QWORD PTR display_name[rip]
	mov	rdx, QWORD PTR appname[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC2[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L4:
	mov	rax, QWORD PTR display[rip]
	mov	eax, DWORD PTR 224[rax]
	mov	DWORD PTR screen_num[rip], eax
	mov	rax, QWORD PTR display[rip]
	mov	rdx, QWORD PTR 232[rax]
	mov	eax, DWORD PTR screen_num[rip]
	cdqe
	sal	rax, 7
	add	rax, rdx
	mov	eax, DWORD PTR 24[rax]
	mov	DWORD PTR display_width[rip], eax
	mov	rax, QWORD PTR display[rip]
	mov	rdx, QWORD PTR 232[rax]
	mov	eax, DWORD PTR screen_num[rip]
	cdqe
	sal	rax, 7
	add	rax, rdx
	mov	eax, DWORD PTR 28[rax]
	mov	DWORD PTR display_height[rip], eax
	mov	rax, QWORD PTR display[rip]
	mov	rdx, QWORD PTR 232[rax]
	mov	eax, DWORD PTR screen_num[rip]
	cdqe
	sal	rax, 7
	add	rax, rdx
	mov	rax, QWORD PTR 16[rax]
	mov	QWORD PTR root_window[rip], rax
	mov	rax, QWORD PTR display[rip]
	mov	rdx, QWORD PTR 232[rax]
	mov	eax, DWORD PTR screen_num[rip]
	cdqe
	sal	rax, 7
	add	rax, rdx
	mov	rax, QWORD PTR 88[rax]
	mov	QWORD PTR white_pixel[rip], rax
	mov	rax, QWORD PTR display[rip]
	mov	rdx, QWORD PTR 232[rax]
	mov	eax, DWORD PTR screen_num[rip]
	cdqe
	sal	rax, 7
	add	rax, rdx
	mov	rax, QWORD PTR 96[rax]
	mov	QWORD PTR black_pixel[rip], rax
	mov	DWORD PTR y[rip], 100
	mov	eax, DWORD PTR y[rip]
	mov	DWORD PTR x[rip], eax
	mov	DWORD PTR border_width[rip], 2
	mov	r9, QWORD PTR black_pixel[rip]
	mov	r8, QWORD PTR white_pixel[rip]
	mov	edi, DWORD PTR border_width[rip]
	mov	ecx, DWORD PTR y[rip]
	mov	edx, DWORD PTR x[rip]
	mov	rsi, QWORD PTR root_window[rip]
	mov	rax, QWORD PTR display[rip]
	sub	rsp, 8
	push	r9
	push	r8
	push	rdi
	mov	r9d, 600
	mov	r8d, 800
	mov	rdi, rax
	call	XCreateSimpleWindow@PLT
	add	rsp, 32
	mov	QWORD PTR win[rip], rax
	lea	rdx, windowName[rip]
	mov	esi, 1
	lea	rdi, window_name[rip]
	call	XStringListToTextProperty@PLT
	test	eax, eax
	jne	.L5
	mov	rdx, QWORD PTR appname[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC3[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L5:
	lea	rdx, iconName[rip]
	mov	esi, 1
	lea	rdi, icon_name[rip]
	call	XStringListToTextProperty@PLT
	test	eax, eax
	jne	.L6
	mov	rdx, QWORD PTR appname[rip]
	mov	rax, QWORD PTR stderr[rip]
	lea	rsi, .LC4[rip]
	mov	rdi, rax
	mov	eax, 0
	call	fprintf@PLT
	mov	edi, 1
	call	exit@PLT
.L6:
	mov	rax, QWORD PTR size_hints[rip]
	mov	QWORD PTR [rax], 60
	mov	rax, QWORD PTR size_hints[rip]
	mov	DWORD PTR 24[rax], 800
	mov	rax, QWORD PTR size_hints[rip]
	mov	DWORD PTR 28[rax], 600
	mov	rax, QWORD PTR size_hints[rip]
	mov	DWORD PTR 32[rax], 800
	mov	rax, QWORD PTR size_hints[rip]
	mov	DWORD PTR 36[rax], 600
	mov	rax, QWORD PTR wm_hints[rip]
	mov	QWORD PTR [rax], 3
	mov	rax, QWORD PTR wm_hints[rip]
	mov	DWORD PTR 12[rax], 1
	mov	rax, QWORD PTR wm_hints[rip]
	mov	DWORD PTR 8[rax], 1
	mov	rax, QWORD PTR class_hints[rip]
	mov	rdx, QWORD PTR appname[rip]
	mov	QWORD PTR [rax], rdx
	mov	rax, QWORD PTR class_hints[rip]
	lea	rdx, .LC0[rip]
	mov	QWORD PTR 8[rax], rdx
	mov	rdi, QWORD PTR class_hints[rip]
	mov	rcx, QWORD PTR wm_hints[rip]
	mov	rdx, QWORD PTR size_hints[rip]
	mov	rsi, QWORD PTR win[rip]
	mov	rax, QWORD PTR display[rip]
	sub	rsp, 8
	push	rdi
	push	rcx
	push	rdx
	mov	r9d, 0
	mov	r8d, 0
	lea	rcx, iconName[rip]
	lea	rdx, windowName[rip]
	mov	rdi, rax
	call	XSetWMProperties@PLT
	add	rsp, 32
	mov	rdx, QWORD PTR win[rip]
	mov	rax, QWORD PTR display[rip]
	mov	rsi, rdx
	mov	rdi, rax
	call	XMapWindow@PLT
	mov	rcx, QWORD PTR win[rip]
	mov	rax, QWORD PTR display[rip]
	mov	edx, 32769
	mov	rsi, rcx
	mov	rdi, rax
	call	XSelectInput@PLT
	mov	rsi, QWORD PTR win[rip]
	mov	rax, QWORD PTR display[rip]
	lea	rcx, values[rip]
	mov	edx, 0
	mov	rdi, rax
	call	XCreateGC@PLT
	mov	QWORD PTR gc[rip], rax
	mov	rdx, QWORD PTR white_pixel[rip]
	mov	rcx, QWORD PTR gc[rip]
	mov	rax, QWORD PTR display[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	XSetBackground@PLT
	mov	rax, QWORD PTR display[rip]
	mov	rdx, QWORD PTR 232[rax]
	mov	eax, DWORD PTR screen_num[rip]
	cdqe
	sal	rax, 7
	add	rax, rdx
	mov	rax, QWORD PTR 80[rax]
	mov	QWORD PTR colorMap[rip], rax
	mov	rsi, QWORD PTR colorMap[rip]
	mov	rax, QWORD PTR display[rip]
	lea	r8, red[rip]
	lea	rcx, red[rip]
	lea	rdx, .LC5[rip]
	mov	rdi, rax
	call	XAllocNamedColor@PLT
	test	eax, eax
	jne	.L7
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 52
	mov	esi, 1
	lea	rdi, .LC6[rip]
	call	fwrite@PLT
	mov	edi, 1
	call	exit@PLT
.L7:
	mov	rsi, QWORD PTR colorMap[rip]
	mov	rax, QWORD PTR display[rip]
	lea	r8, cyan[rip]
	lea	rcx, cyan[rip]
	lea	rdx, .LC7[rip]
	mov	rdi, rax
	call	XAllocNamedColor@PLT
	test	eax, eax
	jne	.L9
	mov	rax, QWORD PTR stderr[rip]
	mov	rcx, rax
	mov	edx, 53
	mov	esi, 1
	lea	rdi, .LC8[rip]
	call	fwrite@PLT
	mov	edi, 1
	call	exit@PLT
.L9:
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	init_display, .-init_display
	.globl	rotate
	.type	rotate, @function
rotate:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 64
	mov	QWORD PTR -40[rbp], rdi
	mov	DWORD PTR -44[rbp], esi
	mov	DWORD PTR -48[rbp], edx
	mov	DWORD PTR -20[rbp], 0
	jmp	.L11
.L12:
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, WORD PTR [rax]
	cwde
	sub	eax, DWORD PTR -44[rbp]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -16[rbp], xmm0
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	movzx	eax, WORD PTR 2[rax]
	cwde
	sub	eax, DWORD PTR -48[rbp]
	pxor	xmm0, xmm0
	cvtsi2sd	xmm0, eax
	movsd	QWORD PTR -8[rbp], xmm0
	pxor	xmm3, xmm3
	cvtsi2sd	xmm3, DWORD PTR -44[rbp]
	movsd	QWORD PTR -56[rbp], xmm3
	mov	eax, DWORD PTR degrees[rip]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC9[rip]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC10[rip]
	divsd	xmm0, xmm1
	pxor	xmm4, xmm4
	cvtsd2ss	xmm4, xmm0
	movd	eax, xmm4
	movd	xmm0, eax
	call	cosf@PLT
	cvtss2sd	xmm0, xmm0
	mulsd	xmm0, QWORD PTR -16[rbp]
	addsd	xmm0, QWORD PTR -56[rbp]
	movsd	QWORD PTR -56[rbp], xmm0
	mov	eax, DWORD PTR degrees[rip]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC9[rip]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC10[rip]
	divsd	xmm0, xmm1
	pxor	xmm5, xmm5
	cvtsd2ss	xmm5, xmm0
	movd	eax, xmm5
	movd	xmm0, eax
	call	sinf@PLT
	cvtss2sd	xmm0, xmm0
	mulsd	xmm0, QWORD PTR -8[rbp]
	movsd	xmm1, QWORD PTR -56[rbp]
	subsd	xmm1, xmm0
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	cvttsd2si	edx, xmm1
	mov	WORD PTR [rax], dx
	pxor	xmm6, xmm6
	cvtsi2sd	xmm6, DWORD PTR -48[rbp]
	movsd	QWORD PTR -56[rbp], xmm6
	mov	eax, DWORD PTR degrees[rip]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC9[rip]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC10[rip]
	divsd	xmm0, xmm1
	pxor	xmm7, xmm7
	cvtsd2ss	xmm7, xmm0
	movd	eax, xmm7
	movd	xmm0, eax
	call	sinf@PLT
	cvtss2sd	xmm0, xmm0
	mulsd	xmm0, QWORD PTR -16[rbp]
	addsd	xmm0, QWORD PTR -56[rbp]
	movsd	QWORD PTR -56[rbp], xmm0
	mov	eax, DWORD PTR degrees[rip]
	pxor	xmm1, xmm1
	cvtsi2sd	xmm1, eax
	movsd	xmm0, QWORD PTR .LC9[rip]
	mulsd	xmm0, xmm1
	movsd	xmm1, QWORD PTR .LC10[rip]
	divsd	xmm0, xmm1
	pxor	xmm4, xmm4
	cvtsd2ss	xmm4, xmm0
	movd	eax, xmm4
	movd	xmm0, eax
	call	cosf@PLT
	cvtss2sd	xmm0, xmm0
	mulsd	xmm0, QWORD PTR -8[rbp]
	addsd	xmm0, QWORD PTR -56[rbp]
	mov	eax, DWORD PTR -20[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	mov	rax, QWORD PTR -40[rbp]
	add	rax, rdx
	cvttsd2si	edx, xmm0
	mov	WORD PTR 2[rax], dx
	add	DWORD PTR -20[rbp], 1
.L11:
	cmp	DWORD PTR -20[rbp], 3
	jle	.L12
	nop
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	rotate, .-rotate
	.globl	rysuj_samochod
	.type	rysuj_samochod, @function
rysuj_samochod:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], 0
	jmp	.L14
.L15:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	lea	rdx, rpoints2[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rsi, 0[0+rax*4]
	lea	rax, points[rip]
	mov	eax, DWORD PTR [rsi+rax]
	mov	DWORD PTR [rcx+rdx], eax
	add	DWORD PTR -4[rbp], 1
.L14:
	cmp	DWORD PTR -4[rbp], 3
	jle	.L15
	mov	DWORD PTR -4[rbp], 0
	jmp	.L16
.L17:
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rcx, 0[0+rax*4]
	lea	rdx, rpoints[rip]
	mov	eax, DWORD PTR -4[rbp]
	cdqe
	lea	rsi, 0[0+rax*4]
	lea	rax, points[rip]
	mov	eax, DWORD PTR [rsi+rax]
	mov	DWORD PTR [rcx+rdx], eax
	add	DWORD PTR -4[rbp], 1
.L16:
	cmp	DWORD PTR -4[rbp], 3
	jle	.L17
	movzx	eax, WORD PTR points[rip+4]
	sub	eax, 40
	mov	WORD PTR rpoints[rip+4], ax
	movzx	eax, WORD PTR points[rip+8]
	sub	eax, 40
	mov	WORD PTR rpoints[rip+8], ax
	movzx	eax, WORD PTR points[rip]
	movsx	edx, ax
	movzx	eax, WORD PTR points[rip+4]
	cwde
	add	eax, edx
	mov	edx, eax
	shr	edx, 31
	add	eax, edx
	sar	eax
	mov	DWORD PTR xRotation[rip], eax
	movzx	eax, WORD PTR points[rip+6]
	movsx	edx, ax
	movzx	eax, WORD PTR points[rip+10]
	cwde
	add	eax, edx
	mov	edx, eax
	shr	edx, 31
	add	eax, edx
	sar	eax
	mov	DWORD PTR yRotation[rip], eax
	mov	edx, DWORD PTR yRotation[rip]
	mov	eax, DWORD PTR xRotation[rip]
	mov	esi, eax
	lea	rdi, rpoints2[rip]
	call	rotate
	mov	edx, DWORD PTR yRotation[rip]
	mov	eax, DWORD PTR xRotation[rip]
	mov	esi, eax
	lea	rdi, rpoints[rip]
	call	rotate
	mov	rdx, QWORD PTR win[rip]
	mov	rax, QWORD PTR display[rip]
	mov	rsi, rdx
	mov	rdi, rax
	call	XClearWindow@PLT
	mov	rdx, QWORD PTR red[rip]
	mov	rcx, QWORD PTR gc[rip]
	mov	rax, QWORD PTR display[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	XSetForeground@PLT
	mov	rdx, QWORD PTR gc[rip]
	mov	rsi, QWORD PTR win[rip]
	mov	rax, QWORD PTR display[rip]
	sub	rsp, 8
	push	0
	mov	r9d, 2
	mov	r8d, 4
	lea	rcx, rpoints2[rip]
	mov	rdi, rax
	call	XFillPolygon@PLT
	add	rsp, 16
	mov	rdx, QWORD PTR cyan[rip]
	mov	rcx, QWORD PTR gc[rip]
	mov	rax, QWORD PTR display[rip]
	mov	rsi, rcx
	mov	rdi, rax
	call	XSetForeground@PLT
	mov	rdx, QWORD PTR gc[rip]
	mov	rsi, QWORD PTR win[rip]
	mov	rax, QWORD PTR display[rip]
	sub	rsp, 8
	push	0
	mov	r9d, 2
	mov	r8d, 4
	lea	rcx, rpoints[rip]
	mov	rdi, rax
	call	XFillPolygon@PLT
	add	rsp, 16
	mov	rax, QWORD PTR display[rip]
	mov	rdi, rax
	call	XFlush@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	rysuj_samochod, .-rysuj_samochod
	.globl	kontroluj_samochod
	.type	kontroluj_samochod, @function
kontroluj_samochod:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
.L26:
	mov	rax, QWORD PTR display[rip]
	lea	rsi, report[rip]
	mov	rdi, rax
	call	XNextEvent@PLT
	mov	eax, DWORD PTR report[rip]
	cmp	eax, 2
	je	.L19
	cmp	eax, 12
	je	.L20
	jmp	.L21
.L19:
	mov	eax, DWORD PTR report[rip+84]
	cmp	eax, 113
	jne	.L22
	mov	DWORD PTR value[rip], 3
	mov	eax, DWORD PTR size[rip]
	mov	edx, eax
	mov	eax, DWORD PTR socket_descriptor[rip]
	mov	r9d, edx
	lea	r8, recipient[rip]
	mov	ecx, 0
	mov	edx, 4
	lea	rsi, value[rip]
	mov	edi, eax
	call	sendto@PLT
	jmp	.L20
.L22:
	mov	eax, DWORD PTR report[rip+84]
	cmp	eax, 114
	jne	.L23
	mov	DWORD PTR value[rip], 4
	mov	eax, DWORD PTR size[rip]
	mov	edx, eax
	mov	eax, DWORD PTR socket_descriptor[rip]
	mov	r9d, edx
	lea	r8, recipient[rip]
	mov	ecx, 0
	mov	edx, 4
	lea	rsi, value[rip]
	mov	edi, eax
	call	sendto@PLT
	jmp	.L20
.L23:
	mov	eax, DWORD PTR report[rip+84]
	cmp	eax, 111
	jne	.L24
	mov	DWORD PTR value[rip], 1
	mov	eax, DWORD PTR size[rip]
	mov	edx, eax
	mov	eax, DWORD PTR socket_descriptor[rip]
	mov	r9d, edx
	lea	r8, recipient[rip]
	mov	ecx, 0
	mov	edx, 4
	lea	rsi, value[rip]
	mov	edi, eax
	call	sendto@PLT
	jmp	.L20
.L24:
	mov	eax, DWORD PTR report[rip+84]
	cmp	eax, 116
	jne	.L25
	mov	DWORD PTR value[rip], 2
	mov	eax, DWORD PTR size[rip]
	mov	edx, eax
	mov	eax, DWORD PTR socket_descriptor[rip]
	mov	r9d, edx
	lea	r8, recipient[rip]
	mov	ecx, 0
	mov	edx, 4
	lea	rsi, value[rip]
	mov	edi, eax
	call	sendto@PLT
	jmp	.L20
.L25:
	mov	eax, DWORD PTR report[rip+84]
	cmp	eax, 9
	jne	.L20
	mov	DWORD PTR value[rip], 6
	mov	eax, DWORD PTR size[rip]
	mov	edx, eax
	mov	eax, DWORD PTR socket_descriptor[rip]
	mov	r9d, edx
	lea	r8, recipient[rip]
	mov	ecx, 0
	mov	edx, 4
	lea	rsi, value[rip]
	mov	edi, eax
	call	sendto@PLT
	mov	edi, 0
	call	exit@PLT
.L20:
	mov	eax, 0
	call	rysuj_samochod
	nop
.L21:
	jmp	.L26
	.cfi_endproc
.LFE9:
	.size	kontroluj_samochod, .-kontroluj_samochod
	.section	.rodata
	.align 8
.LC11:
	.string	"Niepoprawne wywolanie programu."
.LC12:
	.string	"./klient ADRES_IP_SERWERA"
	.text
	.globl	main
	.type	main, @function
main:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 48
	mov	DWORD PTR -36[rbp], edi
	mov	QWORD PTR -48[rbp], rsi
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	cmp	DWORD PTR -36[rbp], 2
	je	.L28
	lea	rdi, .LC11[rip]
	call	puts@PLT
	lea	rdi, .LC12[rip]
	call	puts@PLT
	mov	eax, -1
	mov	rsi, QWORD PTR -8[rbp]
	sub	rsi, QWORD PTR fs:40
	je	.L35
	jmp	.L36
.L28:
	mov	DWORD PTR size[rip], 16
	mov	WORD PTR recipient[rip], 2
	mov	edi, 5000
	call	htons@PLT
	mov	WORD PTR recipient[rip+2], ax
	mov	rax, QWORD PTR -48[rbp]
	add	rax, 8
	mov	rax, QWORD PTR [rax]
	lea	rdx, recipient[rip+4]
	mov	rsi, rax
	mov	edi, 2
	mov	eax, 0
	call	inet_pton@PLT
	mov	edx, 0
	mov	esi, 2
	mov	edi, 2
	call	socket@PLT
	mov	DWORD PTR socket_descriptor[rip], eax
	mov	eax, DWORD PTR size[rip]
	mov	edx, eax
	mov	eax, DWORD PTR socket_descriptor[rip]
	lea	rsi, recipient[rip]
	mov	edi, eax
	call	bind@PLT
	mov	eax, 0
	call	init_display
	mov	DWORD PTR value[rip], 5
	mov	eax, DWORD PTR size[rip]
	mov	edx, eax
	mov	eax, DWORD PTR socket_descriptor[rip]
	mov	r9d, edx
	lea	r8, recipient[rip]
	mov	ecx, 0
	mov	edx, 4
	lea	rsi, value[rip]
	mov	edi, eax
	call	sendto@PLT
	mov	eax, DWORD PTR socket_descriptor[rip]
	lea	r9, size[rip]
	lea	r8, recipient[rip]
	mov	ecx, 0
	mov	edx, 36
	lea	rsi, coords[rip]
	mov	edi, eax
	call	recvfrom@PLT
	mov	DWORD PTR -32[rbp], 0
	mov	eax, DWORD PTR coords[rip+32]
	mov	DWORD PTR degrees[rip], eax
	mov	DWORD PTR -28[rbp], 0
	jmp	.L30
.L31:
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, coords[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	ecx, eax
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, points[rip]
	mov	WORD PTR [rdx+rax], cx
	mov	eax, DWORD PTR -32[rbp]
	add	eax, 1
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, coords[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	ecx, eax
	mov	eax, DWORD PTR -28[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, points[rip+2]
	mov	WORD PTR [rdx+rax], cx
	add	DWORD PTR -32[rbp], 2
	add	DWORD PTR -28[rbp], 1
.L30:
	cmp	DWORD PTR -28[rbp], 3
	jle	.L31
	lea	rax, -16[rbp]
	mov	ecx, 0
	lea	rdx, kontroluj_samochod[rip]
	mov	esi, 0
	mov	rdi, rax
	mov	eax, 0
	call	pthread_create@PLT
	mov	DWORD PTR -20[rbp], 0
.L34:
	mov	eax, DWORD PTR socket_descriptor[rip]
	lea	r9, size[rip]
	lea	r8, recipient[rip]
	mov	ecx, 0
	mov	edx, 36
	lea	rsi, coords[rip]
	mov	edi, eax
	call	recvfrom@PLT
	mov	eax, DWORD PTR coords[rip+32]
	mov	DWORD PTR degrees[rip], eax
	mov	DWORD PTR -32[rbp], 0
	mov	DWORD PTR -24[rbp], 0
	jmp	.L32
.L33:
	mov	eax, DWORD PTR -32[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, coords[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	ecx, eax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, points[rip]
	mov	WORD PTR [rdx+rax], cx
	mov	eax, DWORD PTR -32[rbp]
	add	eax, 1
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, coords[rip]
	mov	eax, DWORD PTR [rdx+rax]
	mov	ecx, eax
	mov	eax, DWORD PTR -24[rbp]
	cdqe
	lea	rdx, 0[0+rax*4]
	lea	rax, points[rip+2]
	mov	WORD PTR [rdx+rax], cx
	add	DWORD PTR -32[rbp], 2
	add	DWORD PTR -24[rbp], 1
.L32:
	cmp	DWORD PTR -24[rbp], 3
	jle	.L33
	mov	eax, 0
	call	rysuj_samochod
	jmp	.L34
.L36:
	call	__stack_chk_fail@PLT
.L35:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	main, .-main
	.section	.rodata
	.align 8
.LC9:
	.long	1413754136
	.long	1074340347
	.align 8
.LC10:
	.long	0
	.long	1080459264
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"75269.c"
	.text
	.comm	display,4,4
	.comm	win,4,4
	.comm	root_window,4,4
	.comm	screen_num,4,4
	.local	appname
	.comm	appname,4,4
	.comm	gc,4,4
	.comm	red,12,4
	.comm	cyan,12,4
	.comm	width,4,4
	.comm	height,4,4
	.comm	border_width,4,4
	.global	window_name
	.section	.rodata
	.align	2
.LC0:
	.ascii	"Aplikacja wieloosobowego prowadzenia pojazdu\000"
	.data
	.align	2
	.type	window_name, %object
	.size	window_name, 4
window_name:
	.word	.LC0
	.global	icon_name
	.align	2
	.type	icon_name, %object
	.size	icon_name, 4
icon_name:
	.word	.LC0
	.comm	x,4,4
	.comm	y,4,4
	.global	display_name
	.bss
	.align	2
	.type	display_name, %object
	.size	display_name, 4
display_name:
	.space	4
	.comm	display_width,4,4
	.comm	display_height,4,4
	.comm	white_pixel,4,4
	.comm	black_pixel,4,4
	.comm	colorMap,4,4
	.comm	size_hints,4,4
	.comm	wm_hints,4,4
	.comm	class_hints,4,4
	.comm	windowName,16,4
	.comm	iconName,16,4
	.comm	report,96,4
	.comm	values,92,4
	.global	points
	.data
	.align	2
	.type	points, %object
	.size	points, 16
points:
	.short	60
	.short	110
	.short	110
	.short	110
	.short	110
	.short	130
	.short	60
	.short	130
	.comm	rpoints2,16,4
	.comm	rpoints,16,4
	.comm	xRotation,4,4
	.comm	yRotation,4,4
	.global	degrees
	.align	2
	.type	degrees, %object
	.size	degrees, 4
degrees:
	.word	360
	.comm	coords,36,4
	.comm	value,4,4
	.comm	recipient,16,4
	.comm	socket_descriptor,4,4
	.comm	size,4,4
	.section	.rodata
	.align	2
.LC1:
	.ascii	"%s: couldn't allocate memory.\012\000"
	.align	2
.LC2:
	.ascii	"%s: couldn't connect to X server %s\012\000"
	.align	2
.LC3:
	.ascii	"%s: structure allocation for windowName failed.\012"
	.ascii	"\000"
	.align	2
.LC4:
	.ascii	"%s: structure allocation for iconName failed.\012\000"
	.align	2
.LC5:
	.ascii	"red\000"
	.align	2
.LC6:
	.ascii	"XAllocNamedColor - failed to allocated 'red' color."
	.ascii	"\012\000"
	.align	2
.LC7:
	.ascii	"cyan\000"
	.align	2
.LC8:
	.ascii	"XAllocNamedColor - failed to allocated 'cyan' color"
	.ascii	".\012\000"
	.text
	.align	2
	.global	init_display
	.syntax unified
	.arm
	.fpu softvfp
	.type	init_display, %function
init_display:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #28
	bl	XAllocSizeHints
	mov	r3, r0
	ldr	r2, .L10
	str	r3, [r2]
	ldr	r3, .L10
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L2
	bl	XAllocWMHints
	mov	r3, r0
	ldr	r2, .L10+4
	str	r3, [r2]
	ldr	r3, .L10+4
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L2
	bl	XAllocClassHint
	mov	r3, r0
	ldr	r2, .L10+8
	str	r3, [r2]
	ldr	r3, .L10+8
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L3
.L2:
	ldr	r3, .L10+12
	ldr	r3, [r3]
	ldr	r2, .L10+16
	ldr	r2, [r2]
	ldr	r1, .L10+20
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L3:
	ldr	r3, .L10+24
	ldr	r3, [r3]
	mov	r0, r3
	bl	XOpenDisplay
	mov	r3, r0
	ldr	r2, .L10+28
	str	r3, [r2]
	ldr	r3, .L10+28
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L4
	ldr	r3, .L10+12
	ldr	r0, [r3]
	ldr	r3, .L10+16
	ldr	r2, [r3]
	ldr	r3, .L10+24
	ldr	r3, [r3]
	ldr	r1, .L10+32
	bl	fprintf
	mov	r0, #1
	bl	exit
.L4:
	ldr	r3, .L10+28
	ldr	r3, [r3]
	ldr	r3, [r3, #132]
	ldr	r2, .L10+36
	str	r3, [r2]
	ldr	r3, .L10+28
	ldr	r3, [r3]
	ldr	r2, [r3, #140]
	ldr	r3, .L10+36
	ldr	r3, [r3]
	mov	r1, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r3, [r3, #12]
	mov	r2, r3
	ldr	r3, .L10+40
	str	r2, [r3]
	ldr	r3, .L10+28
	ldr	r3, [r3]
	ldr	r2, [r3, #140]
	ldr	r3, .L10+36
	ldr	r3, [r3]
	mov	r1, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r3, [r3, #16]
	mov	r2, r3
	ldr	r3, .L10+44
	str	r2, [r3]
	ldr	r3, .L10+28
	ldr	r3, [r3]
	ldr	r2, [r3, #140]
	ldr	r3, .L10+36
	ldr	r3, [r3]
	mov	r1, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r3, [r3, #8]
	ldr	r2, .L10+48
	str	r3, [r2]
	ldr	r3, .L10+28
	ldr	r3, [r3]
	ldr	r2, [r3, #140]
	ldr	r3, .L10+36
	ldr	r3, [r3]
	mov	r1, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r3, [r3, #52]
	ldr	r2, .L10+52
	str	r3, [r2]
	ldr	r3, .L10+28
	ldr	r3, [r3]
	ldr	r2, [r3, #140]
	ldr	r3, .L10+36
	ldr	r3, [r3]
	mov	r1, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r3, [r3, #56]
	ldr	r2, .L10+56
	str	r3, [r2]
	ldr	r3, .L10+60
	mov	r2, #100
	str	r2, [r3]
	ldr	r3, .L10+60
	ldr	r3, [r3]
	ldr	r2, .L10+64
	str	r3, [r2]
	ldr	r3, .L10+68
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L10+28
	ldr	r0, [r3]
	ldr	r3, .L10+48
	ldr	ip, [r3]
	ldr	r3, .L10+64
	ldr	lr, [r3]
	ldr	r3, .L10+60
	ldr	r4, [r3]
	ldr	r3, .L10+68
	ldr	r3, [r3]
	ldr	r2, .L10+52
	ldr	r2, [r2]
	ldr	r1, .L10+56
	ldr	r1, [r1]
	str	r1, [sp, #16]
	str	r2, [sp, #12]
	str	r3, [sp, #8]
	mov	r3, #600
	str	r3, [sp, #4]
	mov	r3, #800
	str	r3, [sp]
	mov	r3, r4
	mov	r2, lr
	mov	r1, ip
	bl	XCreateSimpleWindow
	mov	r3, r0
	ldr	r2, .L10+72
	str	r3, [r2]
	ldr	r2, .L10+76
	mov	r1, #1
	ldr	r0, .L10+80
	bl	XStringListToTextProperty
	mov	r3, r0
	cmp	r3, #0
	bne	.L5
	ldr	r3, .L10+12
	ldr	r3, [r3]
	ldr	r2, .L10+16
	ldr	r2, [r2]
	ldr	r1, .L10+84
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L5:
	ldr	r2, .L10+88
	mov	r1, #1
	ldr	r0, .L10+92
	bl	XStringListToTextProperty
	mov	r3, r0
	cmp	r3, #0
	bne	.L6
	ldr	r3, .L10+12
	ldr	r3, [r3]
	ldr	r2, .L10+16
	ldr	r2, [r2]
	ldr	r1, .L10+96
	mov	r0, r3
	bl	fprintf
	mov	r0, #1
	bl	exit
.L6:
	ldr	r3, .L10
	ldr	r3, [r3]
	mov	r2, #60
	str	r2, [r3]
	ldr	r3, .L10
	ldr	r3, [r3]
	mov	r2, #800
	str	r2, [r3, #20]
	ldr	r3, .L10
	ldr	r3, [r3]
	mov	r2, #600
	str	r2, [r3, #24]
	ldr	r3, .L10
	ldr	r3, [r3]
	mov	r2, #800
	str	r2, [r3, #28]
	ldr	r3, .L10
	ldr	r3, [r3]
	mov	r2, #600
	str	r2, [r3, #32]
	ldr	r3, .L10+4
	ldr	r3, [r3]
	mov	r2, #3
	str	r2, [r3]
	ldr	r3, .L10+4
	ldr	r3, [r3]
	mov	r2, #1
	str	r2, [r3, #8]
	ldr	r3, .L10+4
	ldr	r3, [r3]
	mov	r2, #1
	str	r2, [r3, #4]
	ldr	r3, .L10+8
	ldr	r3, [r3]
	ldr	r2, .L10+16
	ldr	r2, [r2]
	str	r2, [r3]
	ldr	r3, .L10+8
	ldr	r3, [r3]
	ldr	r2, .L10+100
	str	r2, [r3, #4]
	ldr	r3, .L10+28
	ldr	r0, [r3]
	ldr	r3, .L10+72
	ldr	ip, [r3]
	ldr	r3, .L10
	ldr	r3, [r3]
	ldr	r2, .L10+4
	ldr	r2, [r2]
	ldr	r1, .L10+8
	ldr	r1, [r1]
	str	r1, [sp, #16]
	str	r2, [sp, #12]
	str	r3, [sp, #8]
	mov	r3, #0
	str	r3, [sp, #4]
	mov	r3, #0
	str	r3, [sp]
	ldr	r3, .L10+88
	ldr	r2, .L10+76
	mov	r1, ip
	bl	XSetWMProperties
	ldr	r3, .L10+28
	ldr	r3, [r3]
	ldr	r2, .L10+72
	ldr	r2, [r2]
	mov	r1, r2
	mov	r0, r3
	bl	XMapWindow
	ldr	r3, .L10+28
	ldr	r3, [r3]
	ldr	r2, .L10+72
	ldr	r1, [r2]
	ldr	r2, .L10+104
	mov	r0, r3
	bl	XSelectInput
	ldr	r3, .L10+28
	ldr	r0, [r3]
	ldr	r3, .L10+72
	ldr	r1, [r3]
	ldr	r3, .L10+108
	mov	r2, #0
	bl	XCreateGC
	mov	r3, r0
	ldr	r2, .L10+112
	str	r3, [r2]
	ldr	r3, .L10+28
	ldr	r3, [r3]
	ldr	r2, .L10+112
	ldr	r1, [r2]
	ldr	r2, .L10+52
	ldr	r2, [r2]
	mov	r0, r3
	bl	XSetBackground
	ldr	r3, .L10+28
	ldr	r3, [r3]
	ldr	r2, [r3, #140]
	ldr	r3, .L10+36
	ldr	r3, [r3]
	mov	r1, r3
	mov	r3, r1
	lsl	r3, r3, #2
	add	r3, r3, r1
	lsl	r3, r3, #4
	add	r3, r2, r3
	ldr	r3, [r3, #48]
	ldr	r2, .L10+116
	str	r3, [r2]
	ldr	r3, .L10+28
	ldr	r0, [r3]
	ldr	r3, .L10+116
	ldr	r1, [r3]
	ldr	r3, .L10+120
	str	r3, [sp]
	ldr	r3, .L10+120
	ldr	r2, .L10+124
	bl	XAllocNamedColor
	mov	r3, r0
	cmp	r3, #0
	bne	.L7
	ldr	r3, .L10+12
	ldr	r3, [r3]
	mov	r2, #52
	mov	r1, #1
	ldr	r0, .L10+128
	bl	fwrite
	mov	r0, #1
	bl	exit
.L7:
	ldr	r3, .L10+28
	ldr	r0, [r3]
	ldr	r3, .L10+116
	ldr	r1, [r3]
	ldr	r3, .L10+132
	str	r3, [sp]
	ldr	r3, .L10+132
	ldr	r2, .L10+136
	bl	XAllocNamedColor
	mov	r3, r0
	cmp	r3, #0
	bne	.L9
	ldr	r3, .L10+12
	ldr	r3, [r3]
	mov	r2, #53
	mov	r1, #1
	ldr	r0, .L10+140
	bl	fwrite
	mov	r0, #1
	bl	exit
.L9:
	nop
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L11:
	.align	2
.L10:
	.word	size_hints
	.word	wm_hints
	.word	class_hints
	.word	stderr
	.word	appname
	.word	.LC1
	.word	display_name
	.word	display
	.word	.LC2
	.word	screen_num
	.word	display_width
	.word	display_height
	.word	root_window
	.word	white_pixel
	.word	black_pixel
	.word	y
	.word	x
	.word	border_width
	.word	win
	.word	windowName
	.word	window_name
	.word	.LC3
	.word	iconName
	.word	icon_name
	.word	.LC4
	.word	.LC0
	.word	32769
	.word	values
	.word	gc
	.word	colorMap
	.word	red
	.word	.LC5
	.word	.LC6
	.word	cyan
	.word	.LC7
	.word	.LC8
	.size	init_display, .-init_display
	.global	__aeabi_i2d
	.global	__aeabi_dmul
	.global	__aeabi_ddiv
	.global	__aeabi_d2f
	.global	__aeabi_f2d
	.global	__aeabi_dadd
	.global	__aeabi_dsub
	.global	__aeabi_d2iz
	.align	2
	.global	rotate
	.syntax unified
	.arm
	.fpu softvfp
	.type	rotate, %function
rotate:
	@ args = 0, pretend = 0, frame = 40
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	sub	sp, sp, #40
	str	r0, [fp, #-40]
	str	r1, [fp, #-44]
	str	r2, [fp, #-48]
	mov	r3, #0
	str	r3, [fp, #-32]
	b	.L13
.L14:
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldrsh	r3, [r3]
	mov	r2, r3
	ldr	r3, [fp, #-44]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-28]
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r3, r2, r3
	ldrsh	r3, [r3, #2]
	mov	r2, r3
	ldr	r3, [fp, #-48]
	sub	r3, r2, r3
	mov	r0, r3
	bl	__aeabi_i2d
	mov	r2, r0
	mov	r3, r1
	str	r2, [fp, #-20]
	str	r3, [fp, #-16]
	ldr	r0, [fp, #-44]
	bl	__aeabi_i2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L15
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2d
	ldr	r2, .L15+4
	ldr	r3, .L15+8
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L15+12
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	mov	r0, r3
	bl	cosf
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L15
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2d
	ldr	r2, .L15+4
	ldr	r3, .L15+8
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L15+12
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	mov	r0, r3
	bl	sinf
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r4, r2, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	lsl	r3, r3, #16
	asr	r3, r3, #16
	strh	r3, [r4]	@ movhi
	ldr	r0, [fp, #-48]
	bl	__aeabi_i2d
	mov	r4, r0
	mov	r5, r1
	ldr	r3, .L15
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2d
	ldr	r2, .L15+4
	ldr	r3, .L15+8
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L15+12
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	mov	r0, r3
	bl	sinf
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #28
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r4, r2
	mov	r5, r3
	ldr	r3, .L15
	ldr	r3, [r3]
	mov	r0, r3
	bl	__aeabi_i2d
	ldr	r2, .L15+4
	ldr	r3, .L15+8
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L15+12
	bl	__aeabi_ddiv
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	mov	r0, r3
	bl	cosf
	mov	r3, r0
	mov	r0, r3
	bl	__aeabi_f2d
	sub	r3, fp, #20
	ldmia	r3, {r2-r3}
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	ldr	r3, [fp, #-32]
	lsl	r3, r3, #2
	ldr	r2, [fp, #-40]
	add	r4, r2, r3
	bl	__aeabi_d2iz
	mov	r3, r0
	lsl	r3, r3, #16
	asr	r3, r3, #16
	strh	r3, [r4, #2]	@ movhi
	ldr	r3, [fp, #-32]
	add	r3, r3, #1
	str	r3, [fp, #-32]
.L13:
	ldr	r3, [fp, #-32]
	cmp	r3, #3
	ble	.L14
	nop
	nop
	sub	sp, fp, #12
	@ sp needed
	pop	{r4, r5, fp, pc}
.L16:
	.align	2
.L15:
	.word	degrees
	.word	1413754136
	.word	1074340347
	.word	1080459264
	.size	rotate, .-rotate
	.align	2
	.global	rysuj_samochod
	.syntax unified
	.arm
	.fpu softvfp
	.type	rysuj_samochod, %function
rysuj_samochod:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #24
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L18
.L19:
	ldr	r1, .L22
	ldr	r3, [fp, #-8]
	ldr	r0, .L22+4
	ldr	r2, [fp, #-8]
	lsl	r3, r3, #2
	add	r3, r1, r3
	lsl	r1, r2, #2
	add	r1, r0, r1
	mov	r2, #4
	mov	r0, r3
	bl	memcpy
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L18:
	ldr	r3, [fp, #-8]
	cmp	r3, #3
	ble	.L19
	mov	r3, #0
	str	r3, [fp, #-8]
	b	.L20
.L21:
	ldr	r1, .L22+8
	ldr	r3, [fp, #-8]
	ldr	r0, .L22+4
	ldr	r2, [fp, #-8]
	lsl	r3, r3, #2
	add	r3, r1, r3
	lsl	r1, r2, #2
	add	r1, r0, r1
	mov	r2, #4
	mov	r0, r3
	bl	memcpy
	ldr	r3, [fp, #-8]
	add	r3, r3, #1
	str	r3, [fp, #-8]
.L20:
	ldr	r3, [fp, #-8]
	cmp	r3, #3
	ble	.L21
	ldr	r3, .L22+4
	ldrsh	r3, [r3, #4]
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	sub	r3, r3, #40
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	lsl	r3, r3, #16
	asr	r3, r3, #16
	ldr	r2, .L22+8
	strh	r3, [r2, #4]	@ movhi
	ldr	r3, .L22+4
	ldrsh	r3, [r3, #8]
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	sub	r3, r3, #40
	lsl	r3, r3, #16
	lsr	r3, r3, #16
	lsl	r3, r3, #16
	asr	r3, r3, #16
	ldr	r2, .L22+8
	strh	r3, [r2, #8]	@ movhi
	ldr	r3, .L22+4
	ldrsh	r3, [r3]
	mov	r2, r3
	ldr	r3, .L22+4
	ldrsh	r3, [r3, #4]
	add	r3, r2, r3
	lsr	r2, r3, #31
	add	r3, r2, r3
	asr	r3, r3, #1
	mov	r2, r3
	ldr	r3, .L22+12
	str	r2, [r3]
	ldr	r3, .L22+4
	ldrsh	r3, [r3, #6]
	mov	r2, r3
	ldr	r3, .L22+4
	ldrsh	r3, [r3, #10]
	add	r3, r2, r3
	lsr	r2, r3, #31
	add	r3, r2, r3
	asr	r3, r3, #1
	mov	r2, r3
	ldr	r3, .L22+16
	str	r2, [r3]
	ldr	r3, .L22+12
	ldr	r3, [r3]
	ldr	r2, .L22+16
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L22
	bl	rotate
	ldr	r3, .L22+12
	ldr	r3, [r3]
	ldr	r2, .L22+16
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L22+8
	bl	rotate
	ldr	r3, .L22+20
	ldr	r3, [r3]
	ldr	r2, .L22+24
	ldr	r2, [r2]
	mov	r1, r2
	mov	r0, r3
	bl	XClearWindow
	ldr	r3, .L22+20
	ldr	r3, [r3]
	ldr	r2, .L22+28
	ldr	r1, [r2]
	ldr	r2, .L22+32
	ldr	r2, [r2]
	mov	r0, r3
	bl	XSetForeground
	ldr	r3, .L22+20
	ldr	r0, [r3]
	ldr	r3, .L22+24
	ldr	r1, [r3]
	ldr	r3, .L22+28
	ldr	r2, [r3]
	mov	r3, #0
	str	r3, [sp, #8]
	mov	r3, #2
	str	r3, [sp, #4]
	mov	r3, #4
	str	r3, [sp]
	ldr	r3, .L22
	bl	XFillPolygon
	ldr	r3, .L22+20
	ldr	r3, [r3]
	ldr	r2, .L22+28
	ldr	r1, [r2]
	ldr	r2, .L22+36
	ldr	r2, [r2]
	mov	r0, r3
	bl	XSetForeground
	ldr	r3, .L22+20
	ldr	r0, [r3]
	ldr	r3, .L22+24
	ldr	r1, [r3]
	ldr	r3, .L22+28
	ldr	r2, [r3]
	mov	r3, #0
	str	r3, [sp, #8]
	mov	r3, #2
	str	r3, [sp, #4]
	mov	r3, #4
	str	r3, [sp]
	ldr	r3, .L22+8
	bl	XFillPolygon
	ldr	r3, .L22+20
	ldr	r3, [r3]
	mov	r0, r3
	bl	XFlush
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L23:
	.align	2
.L22:
	.word	rpoints2
	.word	points
	.word	rpoints
	.word	xRotation
	.word	yRotation
	.word	display
	.word	win
	.word	gc
	.word	red
	.word	cyan
	.size	rysuj_samochod, .-rysuj_samochod
	.align	2
	.global	kontroluj_samochod
	.syntax unified
	.arm
	.fpu softvfp
	.type	kontroluj_samochod, %function
kontroluj_samochod:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
.L32:
	ldr	r3, .L33
	ldr	r3, [r3]
	ldr	r1, .L33+4
	mov	r0, r3
	bl	XNextEvent
	ldr	r3, .L33+4
	ldr	r3, [r3]
	cmp	r3, #2
	beq	.L25
	cmp	r3, #12
	beq	.L26
	b	.L27
.L25:
	ldr	r3, .L33+4
	ldr	r3, [r3, #52]
	cmp	r3, #113
	bne	.L28
	ldr	r3, .L33+8
	mov	r2, #3
	str	r2, [r3]
	ldr	r3, .L33+12
	ldr	r0, [r3]
	ldr	r3, .L33+16
	ldr	r3, [r3]
	str	r3, [sp, #4]
	ldr	r3, .L33+20
	str	r3, [sp]
	mov	r3, #0
	mov	r2, #4
	ldr	r1, .L33+8
	bl	sendto
	b	.L26
.L28:
	ldr	r3, .L33+4
	ldr	r3, [r3, #52]
	cmp	r3, #114
	bne	.L29
	ldr	r3, .L33+8
	mov	r2, #4
	str	r2, [r3]
	ldr	r3, .L33+12
	ldr	r0, [r3]
	ldr	r3, .L33+16
	ldr	r3, [r3]
	str	r3, [sp, #4]
	ldr	r3, .L33+20
	str	r3, [sp]
	mov	r3, #0
	mov	r2, #4
	ldr	r1, .L33+8
	bl	sendto
	b	.L26
.L29:
	ldr	r3, .L33+4
	ldr	r3, [r3, #52]
	cmp	r3, #111
	bne	.L30
	ldr	r3, .L33+8
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L33+12
	ldr	r0, [r3]
	ldr	r3, .L33+16
	ldr	r3, [r3]
	str	r3, [sp, #4]
	ldr	r3, .L33+20
	str	r3, [sp]
	mov	r3, #0
	mov	r2, #4
	ldr	r1, .L33+8
	bl	sendto
	b	.L26
.L30:
	ldr	r3, .L33+4
	ldr	r3, [r3, #52]
	cmp	r3, #116
	bne	.L31
	ldr	r3, .L33+8
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L33+12
	ldr	r0, [r3]
	ldr	r3, .L33+16
	ldr	r3, [r3]
	str	r3, [sp, #4]
	ldr	r3, .L33+20
	str	r3, [sp]
	mov	r3, #0
	mov	r2, #4
	ldr	r1, .L33+8
	bl	sendto
	b	.L26
.L31:
	ldr	r3, .L33+4
	ldr	r3, [r3, #52]
	cmp	r3, #9
	bne	.L26
	ldr	r3, .L33+8
	mov	r2, #6
	str	r2, [r3]
	ldr	r3, .L33+12
	ldr	r0, [r3]
	ldr	r3, .L33+16
	ldr	r3, [r3]
	str	r3, [sp, #4]
	ldr	r3, .L33+20
	str	r3, [sp]
	mov	r3, #0
	mov	r2, #4
	ldr	r1, .L33+8
	bl	sendto
	mov	r0, #0
	bl	exit
.L26:
	bl	rysuj_samochod
	nop
.L27:
	b	.L32
.L34:
	.align	2
.L33:
	.word	display
	.word	report
	.word	value
	.word	socket_descriptor
	.word	size
	.word	recipient
	.size	kontroluj_samochod, .-kontroluj_samochod
	.section	.rodata
	.align	2
.LC9:
	.ascii	"Niepoprawne wywolanie programu.\000"
	.align	2
.LC10:
	.ascii	"./klient ADRES_IP_SERWERA\000"
	.align	2
.LC11:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 32
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #40
	str	r0, [fp, #-32]
	str	r1, [fp, #-36]
	ldr	r3, .L45
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, [fp, #-32]
	cmp	r3, #2
	beq	.L36
	ldr	r0, .L45+4
	bl	puts
	ldr	r0, .L45+8
	bl	puts
	mvn	r3, #0
	ldr	r2, .L45
	ldr	r1, [r2]
	ldr	r2, [fp, #-8]
	eors	r1, r2, r1
	mov	r2, #0
	beq	.L43
	b	.L44
.L36:
	ldr	r3, .L45+12
	mov	r2, #16
	str	r2, [r3]
	ldr	r3, .L45+16
	mov	r2, #2
	strh	r2, [r3]	@ movhi
	ldr	r0, .L45+20
	bl	htons
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L45+16
	strh	r2, [r3, #2]	@ movhi
	ldr	r3, [fp, #-36]
	add	r3, r3, #4
	ldr	r3, [r3]
	ldr	r2, .L45+24
	mov	r1, r3
	mov	r0, #2
	bl	inet_pton
	mov	r2, #0
	mov	r1, #2
	mov	r0, #2
	bl	socket
	mov	r3, r0
	ldr	r2, .L45+28
	str	r3, [r2]
	ldr	r3, .L45+28
	ldr	r3, [r3]
	ldr	r2, .L45+12
	ldr	r2, [r2]
	ldr	r1, .L45+16
	mov	r0, r3
	bl	bind
	bl	init_display
	ldr	r3, .L45+32
	mov	r2, #5
	str	r2, [r3]
	ldr	r3, .L45+28
	ldr	r0, [r3]
	ldr	r3, .L45+12
	ldr	r3, [r3]
	str	r3, [sp, #4]
	ldr	r3, .L45+16
	str	r3, [sp]
	mov	r3, #0
	mov	r2, #4
	ldr	r1, .L45+32
	bl	sendto
	ldr	r3, .L45+28
	ldr	r0, [r3]
	ldr	r3, .L45+12
	str	r3, [sp, #4]
	ldr	r3, .L45+16
	str	r3, [sp]
	mov	r3, #0
	mov	r2, #36
	ldr	r1, .L45+36
	bl	recvfrom
	mov	r3, #0
	str	r3, [fp, #-24]
	ldr	r3, .L45+36
	ldr	r3, [r3, #32]
	ldr	r2, .L45+40
	str	r3, [r2]
	mov	r3, #0
	str	r3, [fp, #-20]
	b	.L38
.L39:
	ldr	r2, .L45+36
	ldr	r3, [fp, #-24]
	ldr	r3, [r2, r3, lsl #2]
	lsl	r3, r3, #16
	asr	r2, r3, #16
	ldr	r1, .L45+44
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #2
	add	r3, r1, r3
	strh	r2, [r3]	@ movhi
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	ldr	r2, .L45+36
	ldr	r3, [r2, r3, lsl #2]
	lsl	r3, r3, #16
	asr	r2, r3, #16
	ldr	r1, .L45+44
	ldr	r3, [fp, #-20]
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #2
	strh	r2, [r3]	@ movhi
	ldr	r3, [fp, #-24]
	add	r3, r3, #2
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-20]
	add	r3, r3, #1
	str	r3, [fp, #-20]
.L38:
	ldr	r3, [fp, #-20]
	cmp	r3, #3
	ble	.L39
	sub	r0, fp, #28
	mov	r3, #0
	ldr	r2, .L45+48
	mov	r1, #0
	bl	pthread_create
	mov	r3, #0
	str	r3, [fp, #-12]
.L42:
	ldr	r3, .L45+28
	ldr	r0, [r3]
	ldr	r3, .L45+12
	str	r3, [sp, #4]
	ldr	r3, .L45+16
	str	r3, [sp]
	mov	r3, #0
	mov	r2, #36
	ldr	r1, .L45+36
	bl	recvfrom
	ldr	r3, .L45+36
	ldr	r3, [r3, #32]
	ldr	r2, .L45+40
	str	r3, [r2]
	mov	r3, #0
	str	r3, [fp, #-24]
	mov	r3, #0
	str	r3, [fp, #-16]
	b	.L40
.L41:
	ldr	r2, .L45+36
	ldr	r3, [fp, #-24]
	ldr	r3, [r2, r3, lsl #2]
	lsl	r3, r3, #16
	asr	r2, r3, #16
	ldr	r1, .L45+44
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	add	r3, r1, r3
	strh	r2, [r3]	@ movhi
	ldr	r3, [fp, #-24]
	add	r3, r3, #1
	ldr	r2, .L45+36
	ldr	r3, [r2, r3, lsl #2]
	lsl	r3, r3, #16
	asr	r2, r3, #16
	ldr	r1, .L45+44
	ldr	r3, [fp, #-16]
	lsl	r3, r3, #2
	add	r3, r1, r3
	add	r3, r3, #2
	strh	r2, [r3]	@ movhi
	ldr	r3, [fp, #-24]
	add	r3, r3, #2
	str	r3, [fp, #-24]
	ldr	r3, [fp, #-16]
	add	r3, r3, #1
	str	r3, [fp, #-16]
.L40:
	ldr	r3, [fp, #-16]
	cmp	r3, #3
	ble	.L41
	bl	rysuj_samochod
	b	.L42
.L44:
	bl	__stack_chk_fail
.L43:
	mov	r0, r3
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L46:
	.align	2
.L45:
	.word	.LC11
	.word	.LC9
	.word	.LC10
	.word	size
	.word	recipient
	.word	5000
	.word	recipient+4
	.word	socket_descriptor
	.word	value
	.word	coords
	.word	degrees
	.word	points
	.word	kontroluj_samochod
	.size	main, .-main
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
