// File: /workspace/github_c_makefile_star2_O0/kyx0r[P]xkeyboard/xkeyboard.c
// Function: create_keys
void create_keys(void)
{
	int i, j, w, h;

	create_pixmaps();
	for (i = 0; i < MAX_KEYS; i++) {
		mykey[i] = XCreateSimpleWindow(dpy, mywindow,
			(ox + xk[i].x) * sn / sd, (oy + xk[i].y) * sn / sd,
			xk[i].w * sn / sd, xk[i].h * sn / sd,
			BORDER, mybackground, mybackground);
		XSetWindowBackgroundPixmap(dpy, mykey[i], mykc[xk[i].p]);
		XMapRaised(dpy, mykey[i]);
		XClearArea(dpy, mykey[i], 0, 0, 0, 0, True);
		XSelectInput(dpy, mykey[i], ButtonPressMask |
			ButtonReleaseMask | ExposureMask);
	}
	for (i = 0; i < NUM_BORDERS; i++) {
		w = mb[i].w * sn / sd;
		h = mb[i].h * sn / sd;
		if (!w)
			w = 4;
		if (!h)
			h = 4;
		myborder[i] = XCreateSimpleWindow(dpy, mywindow,
			(ox + mb[i].x) * sn / sd, (oy + mb[i].y) * sn / sd,
			w, h, 0, mybackground, mybackground);
		XMapRaised(dpy, myborder[i]);
	}
	keystate = 0;
	for (j = 0; j < 8; j++) {
		for (i = 0; i < 256; i++)
			scanname[j][i] = NULL;
		modindex[j] = 0;
	}
	create_constkeys();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
callq 0x2df0
movl $0x0, -0x4(%rbp)
cmpl $0x69, -0x4(%rbp)
jge 0x364e
movq 0x16343(%rip), %rdi     # 0x197f8
movq 0x164b4(%rip), %rsi     # 0x19970
movl 0x16696(%rip), %eax     # 0x19b58
movslq -0x4(%rbp), %rdx
leaq 0x5e73(%rip), %rcx      # 0x9340
imulq $0x18, %rdx, %rdx
addq %rdx, %rcx
addl 0x4(%rcx), %eax
imull 0x16552(%rip), %eax     # 0x19a30
cltd
idivl 0x1654f(%rip)           # 0x19a34
movl %eax, -0x14(%rbp)
movl 0x1666e(%rip), %eax     # 0x19b5c
movslq -0x4(%rbp), %rdx
leaq 0x5e47(%rip), %rcx      # 0x9340
imulq $0x18, %rdx, %rdx
addq %rdx, %rcx
addl 0x8(%rcx), %eax
imull 0x16526(%rip), %eax     # 0x19a30
cltd
idivl 0x16523(%rip)           # 0x19a34
movl %eax, %ecx
movslq -0x4(%rbp), %rdx
leaq 0x5e22(%rip), %rax      # 0x9340
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
movl 0xc(%rax), %eax
imull 0x16501(%rip), %eax     # 0x19a30
cltd
idivl 0x164fe(%rip)           # 0x19a34
movl %eax, %r8d
movslq -0x4(%rbp), %rdx
leaq 0x5dfc(%rip), %rax      # 0x9340
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
movl 0x10(%rax), %eax
imull 0x164db(%rip), %eax     # 0x19a30
cltd
idivl 0x164d8(%rip)           # 0x19a34
movl -0x14(%rbp), %edx
movl %eax, %r9d
movq 0x162af(%rip), %r10     # 0x19818
movq 0x162a8(%rip), %rax     # 0x19818
xorl %r11d, %r11d
movl $0x0, (%rsp)
movq %r10, 0x8(%rsp)
movq %rax, 0x10(%rsp)
callq 0x22c0
movq %rax, %rdx
movslq -0x4(%rbp), %rcx
leaq 0x165c9(%rip), %rax     # 0x19b60
movq %rdx, (%rax,%rcx,8)
movq 0x16256(%rip), %rdi     # 0x197f8
movslq -0x4(%rbp), %rcx
leaq 0x165b3(%rip), %rax     # 0x19b60
movq (%rax,%rcx,8), %rsi
movslq -0x4(%rbp), %rcx
leaq 0x5d84(%rip), %rax      # 0x9340
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movslq 0x14(%rax), %rcx
leaq 0x16472(%rip), %rax     # 0x19a40
movq (%rax,%rcx,8), %rdx
callq 0x2330
movq 0x1621a(%rip), %rdi     # 0x197f8
movslq -0x4(%rbp), %rcx
leaq 0x16577(%rip), %rax     # 0x19b60
movq (%rax,%rcx,8), %rsi
callq 0x2220
movq 0x161ff(%rip), %rdi     # 0x197f8
movslq -0x4(%rbp), %rcx
leaq 0x1655c(%rip), %rax     # 0x19b60
movq (%rax,%rcx,8), %rsi
xorl %r9d, %r9d
movl %r9d, %edx
movl %r9d, %ecx
movl %r9d, %r8d
movl $0x1, (%rsp)
callq 0x22f0
movq 0x161d1(%rip), %rdi     # 0x197f8
movslq -0x4(%rbp), %rcx
leaq 0x1652e(%rip), %rax     # 0x19b60
movq (%rax,%rcx,8), %rsi
movl $0x800c, %edx           # imm = 0x800C
callq 0x2270
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x34a4
movl $0x0, -0x4(%rbp)
cmpl $0x13, -0x4(%rbp)
jge 0x3796
movslq -0x4(%rbp), %rcx
leaq 0x5ba6(%rip), %rax      # 0x9210
shlq $0x4, %rcx
addq %rcx, %rax
movl 0x8(%rax), %eax
imull 0x163b5(%rip), %eax     # 0x19a30
cltd
idivl 0x163b2(%rip)           # 0x19a34
movl %eax, -0xc(%rbp)
movslq -0x4(%rbp), %rcx
leaq 0x5b80(%rip), %rax      # 0x9210
shlq $0x4, %rcx
addq %rcx, %rax
movl 0xc(%rax), %eax
imull 0x1638f(%rip), %eax     # 0x19a30
cltd
idivl 0x1638c(%rip)           # 0x19a34
movl %eax, -0x10(%rbp)
cmpl $0x0, -0xc(%rbp)
jne 0x36b8
movl $0x4, -0xc(%rbp)
cmpl $0x0, -0x10(%rbp)
jne 0x36c5
movl $0x4, -0x10(%rbp)
movq 0x1612c(%rip), %rdi     # 0x197f8
movq 0x1629d(%rip), %rsi     # 0x19970
movl 0x1647f(%rip), %eax     # 0x19b58
movslq -0x4(%rbp), %rdx
leaq 0x5b2c(%rip), %rcx      # 0x9210
shlq $0x4, %rdx
addq %rdx, %rcx
addl (%rcx), %eax
imull 0x1633c(%rip), %eax     # 0x19a30
cltd
idivl 0x16339(%rip)           # 0x19a34
movl %eax, -0x18(%rbp)
movl 0x16458(%rip), %eax     # 0x19b5c
movslq -0x4(%rbp), %rdx
leaq 0x5b01(%rip), %rcx      # 0x9210
shlq $0x4, %rdx
addq %rdx, %rcx
addl 0x4(%rcx), %eax
imull 0x16310(%rip), %eax     # 0x19a30
cltd
idivl 0x1630d(%rip)           # 0x19a34
movl -0x18(%rbp), %edx
movl %eax, %ecx
movl -0xc(%rbp), %r8d
movl -0x10(%rbp), %r9d
movq 0x160dd(%rip), %r10     # 0x19818
movq 0x160d6(%rip), %rax     # 0x19818
xorl %r11d, %r11d
movl $0x0, (%rsp)
movq %r10, 0x8(%rsp)
movq %rax, 0x10(%rsp)
callq 0x22c0
movq %rax, %rdx
movslq -0x4(%rbp), %rcx
leaq 0x16747(%rip), %rax     # 0x19eb0
movq %rdx, (%rax,%rcx,8)
movq 0x16084(%rip), %rdi     # 0x197f8
movslq -0x4(%rbp), %rcx
leaq 0x16731(%rip), %rax     # 0x19eb0
movq (%rax,%rcx,8), %rsi
callq 0x2220
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x3655
movl $0x0, 0x167a8(%rip)     # 0x19f48
movl $0x0, -0x8(%rbp)
cmpl $0x8, -0x8(%rbp)
jge 0x3803
movl $0x0, -0x4(%rbp)
cmpl $0x100, -0x4(%rbp)      # imm = 0x100
jge 0x37e6
movslq -0x8(%rbp), %rcx
leaq 0x16788(%rip), %rax     # 0x19f50
shlq $0xb, %rcx
addq %rcx, %rax
movslq -0x4(%rbp), %rcx
movq $0x0, (%rax,%rcx,8)
movl -0x4(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x4(%rbp)
jmp 0x37b4
movslq -0x8(%rbp), %rcx
leaq 0x1a75f(%rip), %rax     # 0x1df50
movl $0x0, (%rax,%rcx,4)
movl -0x8(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x8(%rbp)
jmp 0x37a7
callq 0x3050
addq $0x30, %rsp
popq %rbp
retq
nop