// File: /workspace/github_c_makefile_star2_O2/mist64[P]cbmbasic/runtime.c
// Function: kernal_dispatch
int
kernal_dispatch() {
//{ printf("kernal_dispatch $%04X; ", PC); int i; printf("stack (%02X): ", S); for (i=S+1; i<0x100; i++) { printf("%02X ", RAM[0x0100+i]); } printf("\n"); }

	unsigned int new_pc;
	switch(PC) {
		case 0x0073:	CHRGET();	break;
		case 0x0079:	CHRGOT();	break;
		case 0xFF90:	SETMSG();	break;
		case 0xFF99:	MEMTOP();	break;
		case 0xFF9C:	MEMBOT();	break;
		case 0xFFB7:	READST();	break;
		case 0xFFBA:	SETLFS();	break;
		case 0xFFBD:	SETNAM();	break;
		case 0xFFC0:	OPEN();		break;
		case 0xFFC3:	CLOSE();	break;
		case 0xFFC6:	CHKIN();	break;
		case 0xFFC9:	CHKOUT();	break;
		case 0xFFCC:	CLRCHN();	break;
		case 0xFFCF:	CHRIN();	break;
		case 0xFFD2:	CHROUT();	break;
		case 0xFFD5:	LOAD();		break;
		case 0xFFD8:	SAVE();		break;
		case 0xFFDB:	SETTIM();	break;
		case 0xFFDE:	RDTIM();	break;
		case 0xFFE1:	STOP();		break;
		case 0xFFE4:	GETIN();	break;
		case 0xFFE7:	CLALL();	break;
		case 0xFFF0:	PLOT();		break;
		case 0xFFF3:	IOBASE();	break;

		case 0:		plugin_off(); S+=2; break;
		case 1:		plugin_on(); S+=2; break;

		case MAGIC_ERROR:	new_pc = plugin_error(); PUSH_WORD(new_pc? new_pc-1:orig_error-1); break;
		case MAGIC_MAIN:	new_pc = plugin_main(); PUSH_WORD(new_pc? new_pc-1:orig_main-1); break;
		case MAGIC_CRNCH:	new_pc = plugin_crnch(); PUSH_WORD(new_pc? new_pc-1:orig_crnch-1); break;
		case MAGIC_QPLOP:	new_pc = plugin_qplop(); PUSH_WORD(new_pc? new_pc-1:orig_qplop-1); break;
		case MAGIC_GONE:	new_pc = plugin_gone(); PUSH_WORD(new_pc? new_pc-1:orig_gone-1); break;
		case MAGIC_EVAL:	new_pc = plugin_eval(); PUSH_WORD(new_pc? new_pc-1:orig_eval-1); break;
		
		case MAGIC_CONTINUATION: /*printf("--CONTINUATION--\n");*/ return 0;

		default: printf("unknown PC=$%04X S=$%02X\n", PC, S); exit(1);
	}
	return 1;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xb8, %rsp
leaq 0x1d6bc(%rip), %rax     # 0x30140
movzwl (%rax), %esi
leal -0xff00(%rsi), %eax
cmpl $0x5, %eax
jbe 0x12b61
leal -0xffba(%rsi), %eax
cmpl $0x9, %eax
jbe 0x12b88
leal -0xffc6(%rsi), %eax
cmpl $0x9, %eax
jbe 0x12bca
leal -0xffd2(%rsi), %eax
cmpl $0x9, %eax
jbe 0x12c08
leal -0xffde(%rsi), %eax
cmpl $0x9, %eax
jbe 0x12cc3
testl %esi, %esi
je 0x1323e
cmpl $0x1, %esi
je 0x132ab
cmpl $0x73, %esi
je 0x13189
cmpl $0x79, %esi
je 0x131e4
cmpl $0xff90, %esi           # imm = 0xFF90
je 0x13154
cmpl $0xff99, %esi           # imm = 0xFF99
je 0x13170
cmpl $0xff9c, %esi           # imm = 0xFF9C
je 0x131cb
cmpl $0xffb7, %esi           # imm = 0xFFB7
je 0x131ee
cmpl $0xfff0, %esi           # imm = 0xFFF0
je 0x131fd
cmpl $0xfff3, %esi           # imm = 0xFFF3
je 0x13193
xorl %ebx, %ebx
cmpl $0xffff, %esi           # imm = 0xFFFF
je 0x13472
leaq 0xd5d6(%rip), %rax      # 0x20128
movzbl (%rax), %edx
leaq 0xacad(%rip), %rdi      # 0x1d809
jmp 0x13a37
leaq 0xaaf4(%rip), %rcx      # 0x1d65c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
callq 0x13aa1
movzwl %ax, %edx
leal -0x1(%rdx), %esi
movzwl 0x1d6b1(%rip), %edi     # 0x30234
jmp 0x1310e
leaq 0xaae5(%rip), %rcx      # 0x1d674
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x1d5a6(%rip), %rax     # 0x30145
movb (%rax), %al
movb %al, 0x1d6a6(%rip)      # 0x3024d
leaq 0x1d594(%rip), %rax     # 0x30142
movb (%rax), %al
movb %al, 0x1d698(%rip)      # 0x3024e
leaq 0x1d58b(%rip), %rax     # 0x30148
movb (%rax), %al
movb %al, 0x1d68a(%rip)      # 0x3024f
jmp 0x1346f
leaq 0xaacb(%rip), %rcx      # 0x1d69c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movb $0x0, 0x1d56f(%rip)     # 0x30150
leaq 0x1d55a(%rip), %rax     # 0x30142
movzbl (%rax), %eax
leaq 0x1d56e(%rip), %rcx     # 0x30160
cmpq $0x0, (%rcx,%rax,8)
je 0x12e12
movb %al, 0x1d556(%rip)      # 0x30159
jmp 0x12e0e
leaq 0xaab5(%rip), %rcx      # 0x1d6c4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movl 0x1d606(%rip), %ebx     # 0x30224
testl %ebx, %ebx
je 0x133a0
movl $0xe10f, %edi           # imm = 0xE10F
movl $0xab4a, %esi           # imm = 0xAB4A
movl $0xab30, %edx           # imm = 0xAB30
movl $0xa47b, %ecx           # imm = 0xA47B
callq 0x127a8
testl %eax, %eax
je 0x12c5d
leaq 0x1d4fb(%rip), %rax     # 0x30145
cmpb $0x52, (%rax)
jne 0x12c55
incl 0x1d5cb(%rip)           # 0x30220
testl %ebx, %ebx
je 0x13465
movl $0xe10f, %edi           # imm = 0xE10F
movl $0xab4a, %esi           # imm = 0xAB4A
movl $0xaadc, %edx           # imm = 0xAADC
movl $0xa486, %ecx           # imm = 0xA486
callq 0x127a8
testl %eax, %eax
jne 0x13465
movzbl 0x1d4d3(%rip), %eax     # 0x30158
testq %rax, %rax
je 0x138a4
leaq 0x1d4b0(%rip), %rbx     # 0x30145
movzbl (%rbx), %edi
leaq 0x1d4c1(%rip), %rcx     # 0x30160
movq (%rcx,%rax,8), %rsi
callq 0x1130
cmpl $-0x1, %eax
jne 0x13465
leaq 0x1d48e(%rip), %rax     # 0x30146
movb $0x1, (%rax)
movb $0x7, (%rbx)
jmp 0x1346f
leaq 0xaa22(%rip), %rcx      # 0x1d6ec
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
xorl %edi, %edi
callq 0x1190
leaq 0x10(%rsp), %rdi
movq %rax, (%rdi)
leaq 0x28(%rsp), %rbx
movq %rbx, %rsi
callq 0x1040
leaq 0x18(%rsp), %r14
movq %r14, %rdi
xorl %esi, %esi
callq 0x10d0
imull $0x3c, 0x8(%rbx), %eax
addl 0x4(%rbx), %eax
imull $0x3c, %eax, %eax
addl (%rbx), %eax
imull $0x3c, %eax, %ecx
movq 0x8(%r14), %rax
movl $0x411a, %esi           # imm = 0x411A
cqto
idivq %rsi
addq %rcx, %rax
leaq 0x1d41d(%rip), %rcx     # 0x30142
movb %ah, (%rcx)
leaq 0x1d417(%rip), %rcx     # 0x30145
movb %al, (%rcx)
shrl $0x10, %eax
leaq 0x1d40e(%rip), %rcx     # 0x30148
jmp 0x12e25
movb $0x0, 0x1d40a(%rip)     # 0x30150
movzbl 0x1d500(%rip), %eax     # 0x3024d
leaq 0x1d40c(%rip), %rbx     # 0x30160
cmpq $0x0, (%rbx,%rax,8)
je 0x1331c
leaq 0x1d3e0(%rip), %rax     # 0x30146
movb $0x1, (%rax)
leaq 0x1d3d5(%rip), %rax     # 0x30145
movb $0x2, (%rax)
jmp 0x1346f
leaq 0x1d3c3(%rip), %rax     # 0x30142
movzbl (%rax), %eax
leaq 0x1d3bf(%rip), %rcx     # 0x30148
movzbl (%rcx), %ecx
shll $0x8, %ecx
orl %eax, %ecx
movw %cx, 0x1d4b2(%rip)      # 0x3024a
leaq 0x1d3a6(%rip), %rax     # 0x30145
movb (%rax), %al
movb %al, 0x1d4a5(%rip)      # 0x3024c
jmp 0x1346f
movzbl 0x1d49a(%rip), %eax     # 0x3024d
leaq 0x1d3a6(%rip), %rbx     # 0x30160
movq (%rbx,%rax,8), %rdi
testq %rdi, %rdi
je 0x12e12
callq 0x1070
movzbl 0x1d47e(%rip), %eax     # 0x3024d
andq $0x0, (%rbx,%rax,8)
jmp 0x12e0e
xorl %eax, %eax
movb %al, 0x1d37b(%rip)      # 0x30159
movb %al, 0x1d374(%rip)      # 0x30158
jmp 0x1346f
movb $0x0, 0x1d360(%rip)     # 0x30150
leaq 0x1d34b(%rip), %rax     # 0x30142
movzbl (%rax), %eax
leaq 0x1d35f(%rip), %rcx     # 0x30160
cmpq $0x0, (%rcx,%rax,8)
je 0x12e12
movb %al, 0x1d34a(%rip)      # 0x30158
xorl %eax, %eax
jmp 0x12e1e
leaq 0x1d32c(%rip), %rax     # 0x30145
movb $0x3, (%rax)
movb $0x1, %al
leaq 0x1d321(%rip), %rcx     # 0x30146
movb %al, (%rcx)
jmp 0x1346f
cmpl $0x0, 0x1d3f1(%rip)     # 0x30224
jne 0x12e42
cmpl $0x2, 0x1d3e4(%rip)     # 0x30220
je 0x13a07
movzbl 0x1d310(%rip), %eax     # 0x30159
testq %rax, %rax
je 0x13404
leaq 0x1d307(%rip), %rbx     # 0x30160
movq (%rbx,%rax,8), %rdi
callq 0x1160
testl %eax, %eax
je 0x132bf
orb $0x42, 0x1d2df(%rip)    # 0x30150
leaq 0x1d2cd(%rip), %rax     # 0x30145
movb $0xd, (%rax)
jmp 0x13465
leaq 0x1d2be(%rip), %r14     # 0x30145
movzbl (%r14), %eax
leaq 0xd2ae(%rip), %rdi      # 0x20140
movzwl (%rdi,%rax), %ebp
leaq 0x1d2a5(%rip), %rax     # 0x30142
movzbl (%rax), %eax
leaq 0x1d2a1(%rip), %rcx     # 0x30148
movzbl (%rcx), %r15d
shll $0x8, %r15d
orl %eax, %r15d
movb $0x1, %r12b
subl %ebp, %r15d
jb 0x12f2f
movzbl 0x1d38b(%rip), %eax     # 0x3024c
testq %rax, %rax
je 0x1374f
movzwl 0x1d379(%rip), %ecx     # 0x3024a
addq %rcx, %rax
movb $0x0, (%rdi,%rax)
addq %rcx, %rdi
leaq 0xa965(%rip), %rsi      # 0x1d847
callq 0x11f0
testq %rax, %rax
je 0x13780
movq %rax, %rbx
movzbl %bpl, %edi
movq %rax, %rsi
callq 0x1130
movl %ebp, %edi
shrl $0x8, %edi
movq %rbx, %rsi
callq 0x1130
movzwl %bp, %edi
addq 0xd0b2(%rip), %rdi      # 0x1ffc8
movslq %r15d, %rsi
pushq $0x1
popq %rdx
movq %rbx, %rcx
callq 0x1210
movq %rbx, %rdi
callq 0x1070
xorl %r12d, %r12d
xorl %eax, %eax
jmp 0x13782
leaq 0x1d208(%rip), %rcx     # 0x30145
cmpb $0x0, (%rcx)
jne 0x13a0e
movzbl 0x1d2ff(%rip), %eax     # 0x3024c
movb $0x1, %r12b
testq %rax, %rax
je 0x13486
movzwl 0x1d2ea(%rip), %ecx     # 0x3024a
leaq 0xd1d9(%rip), %rbp      # 0x20140
cmpb $0x24, (%rbp,%rcx)
jne 0x1348e
movl $0x22120000, 0x803(%rbp) # imm = 0x22120000
xorl %eax, %eax
cmpq $0x10, %rax
je 0x134f1
movb $0x20, 0x807(%rbp,%rax)
incq %rax
jmp 0x12f7e
leaq 0x1d1ac(%rip), %rax     # 0x30148
movzbl (%rax), %eax
shll $0x10, %eax
leaq 0x1d199(%rip), %rcx     # 0x30142
movzbl (%rcx), %ecx
shll $0x8, %ecx
orl %eax, %ecx
leaq 0x1d18d(%rip), %rax     # 0x30145
movzbl (%rax), %ebx
orl %ecx, %ebx
xorl %edi, %edi
callq 0x1190
leaq 0x10(%rsp), %rdi
movq %rax, (%rdi)
leaq 0x28(%rsp), %r14
movq %r14, %rsi
callq 0x1040
pushq $0x3c
popq %rcx
movl %ebx, %eax
xorl %edx, %edx
divl %ecx
movl %edx, %ebp
xorl %edx, %edx
divl %ecx
movl %edx, (%r14)
movl $0xe10, %ecx            # imm = 0xE10
movl %ebx, %eax
xorl %edx, %edx
divl %ecx
movl %eax, 0x4(%r14)
movl $0x34bc0, %ecx          # imm = 0x34BC0
movl %ebx, %eax
xorl %edx, %edx
divl %ecx
movl %eax, 0x8(%r14)
movq %r14, %rdi
callq 0x11d0
leaq 0x18(%rsp), %rdi
movq %rax, (%rdi)
imull $0x411a, %ebp, %eax     # imm = 0x411A
movq %rax, 0x8(%rdi)
xorl %esi, %esi
callq 0x11a0
jmp 0x1346f
movzbl 0x1d123(%rip), %eax     # 0x30159
testq %rax, %rax
je 0x1344f
leaq 0x1d11a(%rip), %rbx     # 0x30160
movq (%rbx,%rax,8), %rdi
callq 0x1160
testl %eax, %eax
je 0x132bf
orb $0x42, 0x1d0f2(%rip)    # 0x30150
leaq 0x1d0e0(%rip), %rax     # 0x30145
movb $-0x39, (%rax)
jmp 0x13465
leaq 0x1d0cf(%rip), %rax     # 0x30143
jmp 0x1346c
xorl %r14d, %r14d
pushq $0x1
popq %rbx
leaq 0x1d0da(%rip), %r15     # 0x30160
cmpq $0x80, %r14
je 0x13472
movq (%r14,%r15), %rdi
testq %rdi, %rdi
je 0x130a6
callq 0x1070
andq $0x0, (%r14,%r15)
addq $0x8, %r14
jmp 0x13086
callq 0x13aad
movzwl %ax, %edx
leal -0x1(%rdx), %esi
movzwl 0x1d17e(%rip), %edi     # 0x3023c
jmp 0x1310e
callq 0x13aa7
movzwl %ax, %edx
leal -0x1(%rdx), %esi
movzwl 0x1d166(%rip), %edi     # 0x30238
jmp 0x1310e
callq 0x13aaa
movzwl %ax, %edx
leal -0x1(%rdx), %esi
movzwl 0x1d154(%rip), %edi     # 0x3023a
jmp 0x1310e
callq 0x13aa4
movzwl %ax, %edx
leal -0x1(%rdx), %esi
movzwl 0x1d13c(%rip), %edi     # 0x30236
jmp 0x1310e
callq 0x13cfb
movzwl %ax, %edx
leal -0x1(%rdx), %esi
movzwl 0x1d130(%rip), %edi     # 0x3023e
leal -0x1(%rdi), %ecx
leaq 0xd010(%rip), %r8       # 0x20128
movzbl (%r8), %eax
leal -0x1(%rax), %r9d
decb %dil
testw %dx, %dx
cmovnel %esi, %ecx
leaq 0xd010(%rip), %rdx      # 0x20140
movb %ch, 0x100(%rdx,%rax)
movzbl %dil, %ecx
cmovnel %esi, %ecx
addl $-0x2, %eax
movb %al, (%r8)
movzbl %r9b, %eax
movb %cl, 0x100(%rdx,%rax)
jmp 0x1346f
leaq 0x1cfea(%rip), %rax     # 0x30145
movb (%rax), %cl
movb %cl, 0x1d0e5(%rip)      # 0x30248
movb 0x1cfe7(%rip), %cl      # 0x30150
movb %cl, (%rax)
jmp 0x1346f
leaq 0x1cfcb(%rip), %rax     # 0x30142
movb $0x0, (%rax)
leaq 0x1cfc7(%rip), %rax     # 0x30148
movb $-0x60, (%rax)
jmp 0x1346f
callq 0x12833
jmp 0x1346f
callq 0x1220
leaq 0xcfa1(%rip), %rbx      # 0x20140
movw %ax, 0xdc04(%rbx)
callq 0x1220
movw %ax, 0xdc08(%rbx)
leaq 0x1cf89(%rip), %rax     # 0x30142
movb $0x0, (%rax)
leaq 0x1cf85(%rip), %rax     # 0x30148
movb $-0x24, (%rax)
jmp 0x1346f
leaq 0x1cf70(%rip), %rax     # 0x30142
movb $0x0, (%rax)
leaq 0x1cf6c(%rip), %rax     # 0x30148
movb $0x8, (%rax)
jmp 0x1346f
callq 0x1290a
jmp 0x1346f
movb 0x1cf5c(%rip), %al      # 0x30150
leaq 0x1cf4a(%rip), %rcx     # 0x30145
jmp 0x13237
leaq 0x1cf42(%rip), %rax     # 0x30146
cmpb $0x0, (%rax)
je 0x13a1c
leaq 0x28(%rsp), %rbx
leaq 0x18(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x13dda
movb (%rbx), %al
leaq 0x1cf1d(%rip), %rcx     # 0x30148
movb %al, (%rcx)
movb (%r14), %al
leaq 0x1cf0b(%rip), %rcx     # 0x30142
movb %al, (%rcx)
jmp 0x1346f
cmpl $0x0, 0x1cfeb(%rip)     # 0x30230
je 0x132b0
movzwl 0x1cfe6(%rip), %eax     # 0x30234
leaq 0xceeb(%rip), %rcx      # 0x20140
movw %ax, 0x300(%rcx)
movzwl 0x1cfd3(%rip), %eax     # 0x30236
movw %ax, 0x302(%rcx)
movzwl 0x1cfc7(%rip), %eax     # 0x30238
movw %ax, 0x304(%rcx)
movzwl 0x1cfbb(%rip), %eax     # 0x3023a
movw %ax, 0x306(%rcx)
movzwl 0x1cfaf(%rip), %eax     # 0x3023c
movw %ax, 0x308(%rcx)
movzwl 0x1cfa3(%rip), %eax     # 0x3023e
movw %ax, 0x30a(%rcx)
andl $0x0, 0x1cf87(%rip)     # 0x30230
jmp 0x132b0
callq 0x129e1
leaq 0xce71(%rip), %rax      # 0x20128
addb $0x2, (%rax)
jmp 0x1346f
movzbl 0x1ce93(%rip), %ecx     # 0x30159
leaq 0x1cf13(%rip), %r14     # 0x301e0
movl (%r14,%rcx,4), %eax
cmpl $-0x1, %eax
jne 0x132ea
movq (%rbx,%rcx,8), %rdi
callq 0x1110
movzbl 0x1ce73(%rip), %ecx     # 0x30159
movl %eax, (%r14,%rcx,4)
leaq 0x1ce54(%rip), %rdx     # 0x30145
movb %al, (%rdx)
movq (%rbx,%rcx,8), %rdi
callq 0x1110
movzbl 0x1ce56(%rip), %ecx     # 0x30159
movl %eax, (%r14,%rcx,4)
cmpl $-0x1, %eax
jne 0x13465
orb $0x40, 0x1ce39(%rip)    # 0x30150
jmp 0x13465
movzbl 0x1cf29(%rip), %eax     # 0x3024c
testq %rax, %rax
je 0x13753
movzwl 0x1cf17(%rip), %edi     # 0x3024a
addq %rdi, %rax
leaq 0xce03(%rip), %r14      # 0x20140
movb (%r14,%rax), %bpl
cmpb $0x0, 0x1cf07(%rip)     # 0x3024f
leaq 0xa4a5(%rip), %rcx      # 0x1d7f4
leaq 0xa4cd(%rip), %rsi      # 0x1d823
cmoveq %rcx, %rsi
movb $0x0, (%r14,%rax)
addq %r14, %rdi
callq 0x11f0
movzbl 0x1cedf(%rip), %ecx     # 0x3024d
movq %rax, (%rbx,%rcx,8)
movzwl 0x1ced1(%rip), %edx     # 0x3024a
movzbl 0x1cecc(%rip), %esi     # 0x3024c
addq %rdx, %rsi
movb %bpl, (%r14,%rsi)
testq %rax, %rax
je 0x13859
leaq 0x1ce49(%rip), %rax     # 0x301e0
orl $-0x1, (%rax,%rcx,4)
jmp 0x13465
movl $0xe10f, %edi           # imm = 0xE10F
movl $0xab4a, %esi           # imm = 0xAB4A
movl $0xab30, %edx           # imm = 0xAB30
movl $0xe430, %ecx           # imm = 0xE430
callq 0x127a8
testl %eax, %eax
jne 0x13465
movl $0xe10f, %edi           # imm = 0xE10F
movl $0xab4a, %esi           # imm = 0xAB4A
movl $0xab30, %edx           # imm = 0xAB30
movl $0xe43d, %ecx           # imm = 0xE43D
callq 0x127a8
testl %eax, %eax
jne 0x13465
movl $0xe10f, %edi           # imm = 0xE10F
movl $0xab4a, %esi           # imm = 0xAB4A
movl $0xab30, %edx           # imm = 0xAB30
movl $0xe444, %ecx           # imm = 0xE444
callq 0x127a8
testl %eax, %eax
jne 0x13465
jmp 0x12c26
movq 0x1ce1d(%rip), %rdi     # 0x30228
testq %rdi, %rdi
je 0x1344f
cmpl $0x0, 0x1ce29(%rip)     # 0x30240
je 0x13872
movslq 0x1ce20(%rip), %rax     # 0x30244
leal 0x1(%rax), %ecx
movl %ecx, 0x1ce17(%rip)     # 0x30244
leaq 0xa43f(%rip), %rdx      # 0x1d873
movb (%rax,%rdx), %al
leaq 0x1cd07(%rip), %rdx     # 0x30145
movb %al, (%rdx)
cmpl $0x4, %ecx
jne 0x13465
andq $0x0, 0x1cddb(%rip)     # 0x30228
jmp 0x13465
callq 0x1150
cmpb $0xa, %al
pushq $0xd
popq %rcx
cmovnel %eax, %ecx
leaq 0x1cce2(%rip), %rax     # 0x30145
movb %cl, (%rax)
leaq 0x1ccda(%rip), %rax     # 0x30146
movb $0x0, (%rax)
pushq $0x1
popq %rbx
movl %ebx, %eax
addq $0xb8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movb $0x8, %r13b
jmp 0x138f9
leaq (%rcx,%rbp), %rdi
addq %rcx, %rax
movb $0x0, (%rbp,%rax)
leaq 0x28(%rsp), %rsi
callq 0x1170
movb $0x4, %r13b
cmpl $-0x1, %eax
je 0x138f2
movl $0xf000, %eax           # imm = 0xF000
andl 0x40(%rsp), %eax
movzwl 0x1cd8a(%rip), %edi     # 0x3024a
addq 0xcb01(%rip), %rdi      # 0x1ffc8
cmpl $0x4000, %eax           # imm = 0x4000
jne 0x13794
callq 0x10a0
cmpl $-0x1, %eax
je 0x138ef
andw $0x0, 0x801(%rbp)
movw $0x803, %bx             # imm = 0x803
jmp 0x13835
movl $0x807, %edi            # imm = 0x807
addq 0xcacb(%rip), %rdi      # 0x1ffc8
movl $0x100, %esi            # imm = 0x100
callq 0x1100
movb $0x5, %r13b
testq %rax, %rax
je 0x138f2
leaq 0x807(%rbp), %rdi
callq 0x1090
movq %rax, %rbx
addl $0x807, %eax            # imm = 0x807
leal 0x808(%rbx), %ecx
movl $0xffff, %edi           # imm = 0xFFFF
andl %edi, %eax
movb $0x22, (%rbp,%rax)
leal 0x809(%rbx), %eax
andl %edi, %ecx
movb $0x20, %sil
movb %sil, (%rbp,%rcx)
leal 0x80a(%rbx), %ecx
andl %edi, %eax
movb $0x30, %dl
movb %dl, (%rbp,%rax)
leal 0x80b(%rbx), %eax
andl %edi, %ecx
movb %dl, (%rbp,%rcx)
leal 0x80c(%rbx), %ecx
andl %edi, %eax
movb %sil, (%rbp,%rax)
leal 0x80d(%rbx), %eax
andl %edi, %ecx
movb $0x32, (%rbp,%rcx)
leal 0x80e(%rbx), %ecx
andl %edi, %eax
movb $0x41, (%rbp,%rax)
addl $0x80f, %ebx            # imm = 0x80F
andl %edi, %ecx
movb $0x0, (%rbp,%rcx)
movb %bl, 0x801(%rbp)
movb %bh, 0x802(%rbp)
leaq 0xa27b(%rip), %rdi      # 0x1d825
callq 0x1080
movq %rax, (%rsp)
testq %rax, %rax
leaq 0x1cb88(%rip), %rcx     # 0x30145
je 0x138f9
movl $0xffff, %r15d          # imm = 0xFFFF
movq (%rsp), %rdi
callq 0x11b0
movq %rax, %r13
movzwl %bx, %eax
testq %r13, %r13
je 0x13769
movq %rax, 0x8(%rsp)
addq $0x13, %r13
movq %r13, %rdi
callq 0x1090
movq %rax, %r12
movq %r13, %rdi
leaq 0x28(%rsp), %rsi
callq 0x1170
movq 0x58(%rsp), %rax
movl $0xfd, %ecx
addq %rcx, %rax
cqto
movl $0xfe, %ecx
idivq %rcx
movl $0xffff, %edi           # imm = 0xFFFF
cmpl %edi, %eax
movl $0xffff, %ecx           # imm = 0xFFFF
cmovll %eax, %ecx
leal 0x2(%rbx), %edx
leal 0x3(%rbx), %esi
andl %edi, %edx
movb %cl, (%rbp,%rdx)
leal 0x4(%rbx), %r14d
andl %edi, %esi
movb %ch, (%rbp,%rsi)
cmpl $0x3e7, %eax            # imm = 0x3E7
jg 0x1367b
leal 0x5(%rbx), %ecx
movzwl %r14w, %edx
movb $0x20, (%rbp,%rdx)
cmpl $0x63, %eax
jg 0x13678
leal 0x6(%rbx), %r14d
movzwl %cx, %ecx
movb $0x20, (%rbp,%rcx)
cmpl $0x9, %eax
jg 0x1367b
addl $0x7, %ebx
movzwl %r14w, %eax
movb $0x20, (%rbp,%rax)
movl %ebx, %r14d
jmp 0x1367b
movl %ecx, %r14d
leal 0x1(%r14), %edi
movzwl %r14w, %ebx
movb $0x22, %al
movb %al, (%rbp,%rbx)
cmpq $0x10, %r12
pushq $0x10
popq %rax
cmovaeq %rax, %r12
andl %r15d, %edi
addq %rbp, %rdi
movq %r13, %rsi
movq %r12, %rdx
callq 0x1180
leal (%r14,%r12), %eax
incl %eax
andl %r15d, %eax
movb $0x22, %cl
movb %cl, (%rbp,%rax)
addl $-0x10, %r12d
testl %r12d, %r12d
je 0x136d1
leal (%rbx,%r12), %eax
addl $0x12, %eax
movzwl %ax, %eax
movb $0x20, (%rbp,%rax)
incl %r12d
jmp 0x136b8
leal (%rbx,%r12), %eax
addl $0x13, %eax
leal (%rbx,%r12), %ecx
addl $0x12, %ecx
movl $0xffff, %esi           # imm = 0xFFFF
andl %esi, %ecx
movb $0x20, %dl
movb %dl, (%rbp,%rcx)
leal (%rbx,%r12), %ecx
addl $0x14, %ecx
andl %esi, %eax
movb $0x50, (%rbp,%rax)
leal (%rbx,%r12), %eax
addl $0x15, %eax
andl %esi, %ecx
movb $0x52, (%rbp,%rcx)
leal (%rbx,%r12), %ecx
addl $0x16, %ecx
andl %esi, %eax
movb $0x47, (%rbp,%rax)
leal (%rbx,%r12), %eax
addl $0x17, %eax
andl %esi, %ecx
movb %dl, (%rbp,%rcx)
leal (%rbx,%r12), %ecx
addl $0x18, %ecx
andl %esi, %eax
movb %dl, (%rbp,%rax)
addl %r12d, %ebx
addl $0x19, %ebx
andl %esi, %ecx
movb $0x0, (%rbp,%rcx)
movq 0x8(%rsp), %rax
movb %bl, (%rbp,%rax)
movb %bh, 0x1(%rbp,%rax)
jmp 0x135c9
movb $0x8, %al
jmp 0x13782
leaq 0x1c9ec(%rip), %rax     # 0x30146
movb $0x1, (%rax)
leaq 0x1c9e1(%rip), %rax     # 0x30145
jmp 0x131dc
andw $0x0, (%rbp,%rax)
movq (%rsp), %rdi
callq 0x1120
addl $0x2, %ebx
jmp 0x13835
movb $0x4, %al
leaq 0x1c9bd(%rip), %rcx     # 0x30146
movb %r12b, (%rcx)
movb %al, (%r14)
jmp 0x1346f
leaq 0xa08c(%rip), %rsi      # 0x1d827
callq 0x11f0
testq %rax, %rax
leaq 0x1c99b(%rip), %rcx     # 0x30145
je 0x138f9
movq %rax, %r14
movq %rax, %rdi
callq 0x1110
movzbl %al, %ebp
movq %r14, %rdi
callq 0x1110
shll $0x8, %eax
orl %eax, %ebp
leaq 0x1c970(%rip), %rax     # 0x30142
movzbl (%rax), %eax
leaq 0x1c96c(%rip), %rcx     # 0x30148
movzbl (%rcx), %ebx
shll $0x8, %ebx
orl %eax, %ebx
cmpb $0x0, 0x1ca64(%rip)     # 0x3024f
cmovnel %ebp, %ebx
movl $0xffff, %ebp           # imm = 0xFFFF
movl %ebx, %r15d
andl %ebp, %r15d
leaq 0xc940(%rip), %rdi      # 0x20140
addq %r15, %rdi
movl $0x10000, %edx          # imm = 0x10000
subl %r15d, %edx
pushq $0x1
popq %rsi
movq %r14, %rcx
callq 0x1060
addl %eax, %ebx
movl %ebx, %edx
andl %ebp, %edx
leaq 0xa007(%rip), %rdi      # 0x1d82a
movl %r15d, %esi
xorl %eax, %eax
callq 0x10c0
movq %r14, %rdi
callq 0x1070
leaq 0x1c909(%rip), %rcx     # 0x30145
leaq 0x1c8ff(%rip), %rax     # 0x30142
movb %bl, (%rax)
leaq 0x1c8fc(%rip), %rax     # 0x30148
movb %bh, (%rax)
xorl %r12d, %r12d
xorl %r13d, %r13d
jmp 0x138f9
leaq 0x1c8e6(%rip), %rax     # 0x30146
movb $0x1, (%rax)
leaq 0x1c8db(%rip), %rax     # 0x30145
movb $0x4, (%rax)
jmp 0x1346f
callq 0x1110
leaq 0x1c8c7(%rip), %rcx     # 0x30145
movb %al, (%rcx)
cmpb $-0x1, %al
jne 0x138df
cmpl $0x1, 0x1c995(%rip)     # 0x30220
jne 0x138df
pushq $0x1
popq %rax
movl %eax, 0x1c9aa(%rip)     # 0x30240
movl %eax, 0x1c9a8(%rip)     # 0x30244
movb $0x52, (%rcx)
jmp 0x13465
cmpl $0x0, 0x1c8a9(%rip)     # 0x30154
leaq 0x1c893(%rip), %rax     # 0x30145
movzbl (%rax), %edi
je 0x1390b
cmpl $0x22, %edi
ja 0x138d5
movl %edi, %eax
movabsq $0x400002400, %rcx      # imm = 0x400002400
btq %rax, %rcx
jae 0x138d5
andl $0x0, 0x1c87f(%rip)     # 0x30154
callq 0x1030
jmp 0x139ea
cmpb $0xa, %al
jne 0x13465
movb $0xd, (%rcx)
jmp 0x13465
movb $0x5, %r13b
leaq 0x1c84c(%rip), %rcx     # 0x30145
leaq 0x1c846(%rip), %rax     # 0x30146
movb %r12b, (%rax)
movb %r13b, (%rcx)
jmp 0x1346f
leal -0x81(%rdi), %eax
cmpl $0x1e, %eax
ja 0x1392d
leaq 0x9e5b(%rip), %rcx      # 0x1d778
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
pushq $0x8
jmp 0x139e4
leal -0xa(%rdi), %eax
cmpl $0x18, %eax
ja 0x13952
leaq 0x9dd8(%rip), %rcx      # 0x1d714
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
pushq $0xd
popq %rdi
callq 0x1030
pushq $0xa
popq %rdi
jmp 0x138d5
cmpl $0x5, %edi
jne 0x138d5
xorl %edi, %edi
jmp 0x139e5
pushq $0x6
jmp 0x139e4
pushq $0x7
jmp 0x139e4
pushq $0x5
jmp 0x139e4
pushq $0xf
jmp 0x139e4
pushq $0xe
jmp 0x139e4
pushq $0xb
jmp 0x139e4
pushq $0x9
jmp 0x139e4
pushq $0x4
jmp 0x139e4
xorl %eax, %eax
callq 0x13d72
jmp 0x139ea
xorl %eax, %eax
callq 0x13d5c
jmp 0x139ea
pushq $0xd
jmp 0x139e4
pushq $0xa
jmp 0x139e4
xorl %edi, %edi
jmp 0x139bb
xorl %eax, %eax
callq 0x13d9e
jmp 0x139ea
pushq $0xc
jmp 0x139e4
xorl %edi, %edi
xorl %esi, %esi
callq 0x13dca
jmp 0x139ea
pushq $0x1
popq %rdi
callq 0x13de1
jmp 0x139ea
pushq $0x3
jmp 0x139e4
movl $0x1, 0x1c784(%rip)     # 0x30154
jmp 0x138d5
pushq $0x1
jmp 0x139e4
xorl %eax, %eax
callq 0x13d88
jmp 0x139ea
pushq $0x2
popq %rdi
callq 0x13e05
movq 0xc5ef(%rip), %rax      # 0x1ffe0
movq (%rax), %rdi
callq 0x11c0
jmp 0x13465
xorl %eax, %eax
callq 0x13db4
jmp 0x139ea
xorl %edi, %edi
callq 0x1200
leaq 0x9e4f(%rip), %rdi      # 0x1d864
callq 0x1050
jmp 0x13a3e
leaq 0x1c725(%rip), %rax     # 0x30148
movzbl (%rax), %esi
leaq 0x1c715(%rip), %rax     # 0x30142
movzbl (%rax), %edx
leaq 0x9e13(%rip), %rdi      # 0x1d84a
xorl %eax, %eax
callq 0x10c0
pushq $0x1
popq %rdi
callq 0x1200
nop