// File: /workspace/github_cpp_makefile_star2_O2/davinash[P]regex/test/tregex.cpp
// Function: main
int main( int argc, char **argv ) {
	RegEx re;
	re.Compile("abcd");
	assert ( true == re.Match("abcd"));
	assert ( true == re.Match("abcde"));
	assert ( false == re.Match("acde"));

	re.Compile("ab*");
	assert ( true == re.Match("ac"));
	assert ( true == re.Match("abc"));
	assert ( true == re.Match("abbc"));
	assert ( true == re.Match("acbb"));
	assert ( false == re.Match("xcbb"));

	re.Compile("ab+");
	assert ( true == re.Match("abc"));
	assert ( true == re.Match("abbc"));
	assert ( false == re.Match ("ac"));

	re.Compile("ab?");
	assert ( true == re.Match("ac"));
	assert ( true == re.Match("abc"));
	assert ( true == re.Match ("abbc"));

	re.Compile("a|b*");
	assert ( true == re.Match("a"));
	assert ( true == re.Match("b"));
	assert ( true == re.Match ("bbb"));
	assert ( true == re.Match ("bb"));
		
	re.Compile("(a|b)*");
	assert ( true == re.Match("a"));
	assert ( true == re.Match("b"));
	assert ( true == re.Match ("aa"));
	assert ( true == re.Match ("ab"));
	assert ( true == re.Match ("ba"));
	assert ( true == re.Match ("bb"));
	assert ( true == re.Match ("aaa"));

	re.Compile("a*b");
	assert ( false == re.Match("a"));
	assert ( true == re.Match("ab"));
	assert ( true == re.Match("aaaabbbcccb"));
	assert ( false == re.Match("a12344b"));
	assert ( false == re.Match("a@#$@#$b"));
	assert ( true == re.Match("b"));

	re.Compile("(a|b)*abb");
	assert ( true == re.Match("abb"));
	assert ( true == re.Match("aabb"));
	assert ( true == re.Match("babb"));
	assert ( true == re.Match("aaabb"));
	assert ( true == re.Match("bbabb"));
	assert ( true == re.Match("ababb"));
	assert ( true == re.Match("aababb"));

	re.Compile("ab[0-9]");
	assert ( true == re.Match("ab0"));
	assert ( true == re.Match("ab1"));
	assert ( true == re.Match("ab2"));
	assert ( true == re.Match("ab3"));
	assert ( true == re.Match("ab4"));
	assert ( true == re.Match("ab5"));
	assert ( true == re.Match("ab6"));
	assert ( true == re.Match("ab7"));
	assert ( true == re.Match("ab8"));
	assert ( true == re.Match("ab9"));
	assert ( true == re.Match("ab199"));

	re.Compile("XYZ[aeiou]");
	assert ( true == re.Match("XYZa"));
	assert ( true == re.Match("XYZe"));
	assert ( true == re.Match("XYZi"));
	assert ( true == re.Match("XYZo"));
	assert ( true == re.Match("XYZu"));
	assert ( false == re.Match("XYZb"));

	return 0;
}

// Assembly:
pushq %rbx
subq $0x980, %rsp            # imm = 0x980
leaq 0x10(%rsp), %rdi
callq 0x4024
leaq 0x6bdf(%rip), %rsi      # 0x9004
leaq 0x960(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x960(%rsp), %rsi
callq 0x52fc
leaq 0x960(%rsp), %rdi
callq 0x2090
leaq 0x6ba7(%rip), %rsi      # 0x9004
leaq 0x940(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x940(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3423
leaq 0x940(%rsp), %rdi
callq 0x2090
leaq 0x6ba7(%rip), %rsi      # 0x9044
leaq 0x920(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x920(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x343f
leaq 0x920(%rsp), %rdi
callq 0x2090
leaq 0x6b87(%rip), %rsi      # 0x9064
leaq 0x900(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x900(%rsp), %rsi
callq 0x546e
testb %al, %al
jne 0x345b
leaq 0x900(%rsp), %rdi
callq 0x2090
leaq 0x6b66(%rip), %rsi      # 0x9083
leaq 0x8e0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x8e0(%rsp), %rsi
callq 0x52fc
leaq 0x8e0(%rsp), %rdi
callq 0x2090
leaq 0x6b32(%rip), %rsi      # 0x9087
leaq 0x8c0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x8c0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3477
leaq 0x8c0(%rsp), %rdi
callq 0x2090
leaq 0x6b0c(%rip), %rsi      # 0x90a1
leaq 0x8a0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x8a0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3493
leaq 0x8a0(%rsp), %rdi
callq 0x2090
leaq 0x6ae8(%rip), %rsi      # 0x90bd
leaq 0x880(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x880(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x34af
leaq 0x880(%rsp), %rdi
callq 0x2090
leaq 0x6ac6(%rip), %rsi      # 0x90db
leaq 0x860(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x860(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x34cb
leaq 0x860(%rsp), %rdi
callq 0x2090
leaq 0x6aa4(%rip), %rsi      # 0x90f9
leaq 0x840(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x840(%rsp), %rsi
callq 0x546e
testb %al, %al
jne 0x34e7
leaq 0x840(%rsp), %rdi
callq 0x2090
leaq 0x6a83(%rip), %rsi      # 0x9118
leaq 0x820(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x820(%rsp), %rsi
callq 0x52fc
leaq 0x820(%rsp), %rdi
callq 0x2090
leaq 0x69d4(%rip), %rsi      # 0x90a1
leaq 0x800(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x800(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3503
leaq 0x800(%rsp), %rdi
callq 0x2090
leaq 0x69b0(%rip), %rsi      # 0x90bd
leaq 0x7e0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x7e0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x351f
leaq 0x7e0(%rsp), %rdi
callq 0x2090
leaq 0x693a(%rip), %rsi      # 0x9087
leaq 0x7c0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x7c0(%rsp), %rsi
callq 0x546e
testb %al, %al
jne 0x353b
leaq 0x7c0(%rsp), %rdi
callq 0x2090
leaq 0x69a8(%rip), %rsi      # 0x9135
leaq 0x7a0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x7a0(%rsp), %rsi
callq 0x52fc
leaq 0x7a0(%rsp), %rdi
callq 0x2090
leaq 0x68c2(%rip), %rsi      # 0x9087
leaq 0x780(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x780(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3557
leaq 0x780(%rsp), %rdi
callq 0x2090
leaq 0x689c(%rip), %rsi      # 0x90a1
leaq 0x760(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x760(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3573
leaq 0x760(%rsp), %rdi
callq 0x2090
leaq 0x6878(%rip), %rsi      # 0x90bd
leaq 0x740(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x740(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x358f
leaq 0x740(%rsp), %rdi
callq 0x2090
leaq 0x68ce(%rip), %rsi      # 0x9153
leaq 0x720(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x720(%rsp), %rsi
callq 0x52fc
leaq 0x720(%rsp), %rdi
callq 0x2090
leaq 0x6c36(%rip), %rsi      # 0x94f3
leaq 0x700(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x700(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x35ab
leaq 0x700(%rsp), %rdi
callq 0x2090
leaq 0x69b8(%rip), %rsi      # 0x92b5
leaq 0x6e0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x6e0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x35c7
leaq 0x6e0(%rsp), %rdi
callq 0x2090
leaq 0x6847(%rip), %rsi      # 0x9184
leaq 0x6c0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x6c0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x35e3
leaq 0x6c0(%rsp), %rdi
callq 0x2090
leaq 0x695f(%rip), %rsi      # 0x92dc
leaq 0x6a0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x6a0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x35ff
leaq 0x6a0(%rsp), %rdi
callq 0x2090
leaq 0x67fc(%rip), %rsi      # 0x91b9
leaq 0x680(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x680(%rsp), %rsi
callq 0x52fc
leaq 0x680(%rsp), %rdi
callq 0x2090
leaq 0x6afe(%rip), %rsi      # 0x94f3
leaq 0x660(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x660(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x361b
leaq 0x660(%rsp), %rdi
callq 0x2090
leaq 0x6880(%rip), %rsi      # 0x92b5
leaq 0x640(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x640(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3637
leaq 0x640(%rsp), %rdi
callq 0x2090
leaq 0x679a(%rip), %rsi      # 0x920f
leaq 0x620(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x620(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3653
leaq 0x620(%rsp), %rdi
callq 0x2090
leaq 0x6723(%rip), %rsi      # 0x91d8
leaq 0x600(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x600(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x366f
leaq 0x600(%rsp), %rdi
callq 0x2090
leaq 0x66fe(%rip), %rsi      # 0x91f3
leaq 0x5e0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x5e0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x368b
leaq 0x5e0(%rsp), %rdi
callq 0x2090
leaq 0x67a7(%rip), %rsi      # 0x92dc
leaq 0x5c0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x5c0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x36a7
leaq 0x5c0(%rsp), %rdi
callq 0x2090
leaq 0x6699(%rip), %rsi      # 0x920e
leaq 0x5a0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x5a0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x36c3
leaq 0x5a0(%rsp), %rdi
callq 0x2090
leaq 0x6676(%rip), %rsi      # 0x922b
leaq 0x580(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x580(%rsp), %rsi
callq 0x52fc
leaq 0x580(%rsp), %rdi
callq 0x2090
leaq 0x6906(%rip), %rsi      # 0x94f3
leaq 0x560(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x560(%rsp), %rsi
callq 0x546e
testb %al, %al
jne 0x36df
leaq 0x560(%rsp), %rdi
callq 0x2090
leaq 0x65ab(%rip), %rsi      # 0x91d8
leaq 0x540(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x540(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x36fb
leaq 0x540(%rsp), %rdi
callq 0x2090
leaq 0x65f0(%rip), %rsi      # 0x925d
leaq 0x520(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x520(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3717
leaq 0x520(%rsp), %rdi
callq 0x2090
leaq 0x65dc(%rip), %rsi      # 0x9289
leaq 0x500(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x500(%rsp), %rsi
callq 0x546e
testb %al, %al
jne 0x3733
leaq 0x500(%rsp), %rdi
callq 0x2090
leaq 0x65c1(%rip), %rsi      # 0x92ae
leaq 0x4e0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x4e0(%rsp), %rsi
callq 0x546e
testb %al, %al
jne 0x374f
leaq 0x4e0(%rsp), %rdi
callq 0x2090
leaq 0x6588(%rip), %rsi      # 0x92b5
leaq 0x4c0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x4c0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x376b
leaq 0x4c0(%rsp), %rdi
callq 0x2090
leaq 0x6568(%rip), %rsi      # 0x92d5
leaq 0x4a0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x4a0(%rsp), %rsi
callq 0x52fc
leaq 0x4a0(%rsp), %rdi
callq 0x2090
leaq 0x6536(%rip), %rsi      # 0x92db
leaq 0x480(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x480(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3787
leaq 0x480(%rsp), %rdi
callq 0x2090
leaq 0x6545(%rip), %rsi      # 0x932a
leaq 0x460(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x460(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x37a3
leaq 0x460(%rsp), %rdi
callq 0x2090
leaq 0x6560(%rip), %rsi      # 0x9385
leaq 0x440(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x440(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x37bf
leaq 0x440(%rsp), %rdi
callq 0x2090
leaq 0x64c4(%rip), %rsi      # 0x9329
leaq 0x420(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x420(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x37db
leaq 0x420(%rsp), %rdi
callq 0x2090
leaq 0x64a4(%rip), %rsi      # 0x9349
leaq 0x400(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x400(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x37f7
leaq 0x400(%rsp), %rdi
callq 0x2090
leaq 0x649f(%rip), %rsi      # 0x9384
leaq 0x3e0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x3e0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3813
leaq 0x3e0(%rsp), %rdi
callq 0x2090
leaq 0x645e(%rip), %rsi      # 0x9383
leaq 0x3c0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x3c0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x382f
leaq 0x3c0(%rsp), %rdi
callq 0x2090
leaq 0x6440(%rip), %rsi      # 0x93a5
leaq 0x3a0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x3a0(%rsp), %rsi
callq 0x52fc
leaq 0x3a0(%rsp), %rdi
callq 0x2090
leaq 0x6410(%rip), %rsi      # 0x93ad
leaq 0x380(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x380(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x384b
leaq 0x380(%rsp), %rdi
callq 0x2090
leaq 0x63ec(%rip), %rsi      # 0x93c9
leaq 0x360(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x360(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3867
leaq 0x360(%rsp), %rdi
callq 0x2090
leaq 0x63c8(%rip), %rsi      # 0x93e5
leaq 0x340(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x340(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3883
leaq 0x340(%rsp), %rdi
callq 0x2090
leaq 0x63a4(%rip), %rsi      # 0x9401
leaq 0x320(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x320(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x389f
leaq 0x320(%rsp), %rdi
callq 0x2090
leaq 0x6380(%rip), %rsi      # 0x941d
leaq 0x300(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x300(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x38bb
leaq 0x300(%rsp), %rdi
callq 0x2090
leaq 0x635c(%rip), %rsi      # 0x9439
leaq 0x2e0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x2e0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x38d7
leaq 0x2e0(%rsp), %rdi
callq 0x2090
leaq 0x6338(%rip), %rsi      # 0x9455
leaq 0x2c0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x2c0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x38f3
leaq 0x2c0(%rsp), %rdi
callq 0x2090
leaq 0x6314(%rip), %rsi      # 0x9471
leaq 0x2a0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x2a0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x390f
leaq 0x2a0(%rsp), %rdi
callq 0x2090
leaq 0x62f0(%rip), %rsi      # 0x948d
leaq 0x280(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x280(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x392b
leaq 0x280(%rsp), %rdi
callq 0x2090
leaq 0x62cc(%rip), %rsi      # 0x94a9
leaq 0x260(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x260(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3947
leaq 0x260(%rsp), %rdi
callq 0x2090
leaq 0x62a8(%rip), %rsi      # 0x94c5
leaq 0x240(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x240(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3963
leaq 0x240(%rsp), %rdi
callq 0x2090
leaq 0x6288(%rip), %rsi      # 0x94e5
leaq 0x220(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x220(%rsp), %rsi
callq 0x52fc
leaq 0x220(%rsp), %rdi
callq 0x2090
leaq 0x625b(%rip), %rsi      # 0x94f0
leaq 0x200(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x397f
leaq 0x200(%rsp), %rdi
callq 0x2090
leaq 0x6239(%rip), %rsi      # 0x950e
leaq 0x1e0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x1e0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x3998
leaq 0x1e0(%rsp), %rdi
callq 0x2090
leaq 0x6217(%rip), %rsi      # 0x952c
leaq 0x1c0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x1c0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x39b1
leaq 0x1c0(%rsp), %rdi
callq 0x2090
leaq 0x61f5(%rip), %rsi      # 0x954a
leaq 0x1a0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x1a0(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x39ca
leaq 0x1a0(%rsp), %rdi
callq 0x2090
leaq 0x61d3(%rip), %rsi      # 0x9568
leaq 0x180(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x180(%rsp), %rsi
callq 0x546e
testb %al, %al
je 0x39e3
leaq 0x180(%rsp), %rdi
callq 0x2090
leaq 0x61b1(%rip), %rsi      # 0x9586
leaq 0x160(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x3f50
leaq 0x10(%rsp), %rdi
leaq 0x160(%rsp), %rsi
callq 0x546e
testb %al, %al
jne 0x39fc
leaq 0x160(%rsp), %rdi
callq 0x2090
leaq 0x10(%rsp), %rdi
callq 0x40e8
xorl %eax, %eax
addq $0x980, %rsp            # imm = 0x980
popq %rbx
retq
leaq 0x5bdf(%rip), %rdi      # 0x9009
leaq 0x5bf1(%rip), %rsi      # 0x9022
leaq 0x5bf5(%rip), %rcx      # 0x902d
pushq $0x1f
jmp 0x3a13
leaq 0x5c04(%rip), %rdi      # 0x904a
leaq 0x5bd5(%rip), %rsi      # 0x9022
leaq 0x5bd9(%rip), %rcx      # 0x902d
pushq $0x20
jmp 0x3a13
leaq 0x5c07(%rip), %rdi      # 0x9069
leaq 0x5bb9(%rip), %rsi      # 0x9022
leaq 0x5bbd(%rip), %rcx      # 0x902d
pushq $0x21
jmp 0x3a13
leaq 0x5c0c(%rip), %rdi      # 0x908a
leaq 0x5b9d(%rip), %rsi      # 0x9022
leaq 0x5ba1(%rip), %rcx      # 0x902d
pushq $0x24
jmp 0x3a13
leaq 0x5c0b(%rip), %rdi      # 0x90a5
leaq 0x5b81(%rip), %rsi      # 0x9022
leaq 0x5b85(%rip), %rcx      # 0x902d
pushq $0x25
jmp 0x3a13
leaq 0x5c0c(%rip), %rdi      # 0x90c2
leaq 0x5b65(%rip), %rsi      # 0x9022
leaq 0x5b69(%rip), %rcx      # 0x902d
pushq $0x26
jmp 0x3a13
leaq 0x5c0e(%rip), %rdi      # 0x90e0
leaq 0x5b49(%rip), %rsi      # 0x9022
leaq 0x5b4d(%rip), %rcx      # 0x902d
pushq $0x27
jmp 0x3a13
leaq 0x5c10(%rip), %rdi      # 0x90fe
leaq 0x5b2d(%rip), %rsi      # 0x9022
leaq 0x5b31(%rip), %rcx      # 0x902d
pushq $0x28
jmp 0x3a13
leaq 0x5b9b(%rip), %rdi      # 0x90a5
leaq 0x5b11(%rip), %rsi      # 0x9022
leaq 0x5b15(%rip), %rcx      # 0x902d
pushq $0x2b
jmp 0x3a13
leaq 0x5b9c(%rip), %rdi      # 0x90c2
leaq 0x5af5(%rip), %rsi      # 0x9022
leaq 0x5af9(%rip), %rcx      # 0x902d
pushq $0x2c
jmp 0x3a13
leaq 0x5bda(%rip), %rdi      # 0x911c
leaq 0x5ad9(%rip), %rsi      # 0x9022
leaq 0x5add(%rip), %rcx      # 0x902d
pushq $0x2d
jmp 0x3a13
leaq 0x5b2c(%rip), %rdi      # 0x908a
leaq 0x5abd(%rip), %rsi      # 0x9022
leaq 0x5ac1(%rip), %rcx      # 0x902d
pushq $0x30
jmp 0x3a13
leaq 0x5b2b(%rip), %rdi      # 0x90a5
leaq 0x5aa1(%rip), %rsi      # 0x9022
leaq 0x5aa5(%rip), %rcx      # 0x902d
pushq $0x31
jmp 0x3a13
leaq 0x5ba3(%rip), %rdi      # 0x9139
leaq 0x5a85(%rip), %rsi      # 0x9022
leaq 0x5a89(%rip), %rcx      # 0x902d
pushq $0x32
jmp 0x3a13
leaq 0x5ba6(%rip), %rdi      # 0x9158
leaq 0x5a69(%rip), %rsi      # 0x9022
leaq 0x5a6d(%rip), %rcx      # 0x902d
pushq $0x35
jmp 0x3a13
leaq 0x5ba0(%rip), %rdi      # 0x916e
leaq 0x5a4d(%rip), %rsi      # 0x9022
leaq 0x5a51(%rip), %rcx      # 0x902d
pushq $0x36
jmp 0x3a13
leaq 0x5b9e(%rip), %rdi      # 0x9188
leaq 0x5a31(%rip), %rsi      # 0x9022
leaq 0x5a35(%rip), %rcx      # 0x902d
pushq $0x37
jmp 0x3a13
leaq 0x5b9b(%rip), %rdi      # 0x91a1
leaq 0x5a15(%rip), %rsi      # 0x9022
leaq 0x5a19(%rip), %rcx      # 0x902d
pushq $0x38
jmp 0x3a13
leaq 0x5b36(%rip), %rdi      # 0x9158
leaq 0x59f9(%rip), %rsi      # 0x9022
leaq 0x59fd(%rip), %rcx      # 0x902d
pushq $0x3b
jmp 0x3a13
leaq 0x5b30(%rip), %rdi      # 0x916e
leaq 0x59dd(%rip), %rsi      # 0x9022
leaq 0x59e1(%rip), %rcx      # 0x902d
pushq $0x3c
jmp 0x3a13
leaq 0x5b66(%rip), %rdi      # 0x91c0
leaq 0x59c1(%rip), %rsi      # 0x9022
leaq 0x59c5(%rip), %rcx      # 0x902d
pushq $0x3d
jmp 0x3a13
leaq 0x5b65(%rip), %rdi      # 0x91db
leaq 0x59a5(%rip), %rsi      # 0x9022
leaq 0x59a9(%rip), %rcx      # 0x902d
pushq $0x3e
jmp 0x3a13
leaq 0x5b64(%rip), %rdi      # 0x91f6
leaq 0x5989(%rip), %rsi      # 0x9022
leaq 0x598d(%rip), %rcx      # 0x902d
pushq $0x3f
jmp 0x3a13
leaq 0x5af3(%rip), %rdi      # 0x91a1
leaq 0x596d(%rip), %rsi      # 0x9022
leaq 0x5971(%rip), %rcx      # 0x902d
pushq $0x40
jmp 0x3a13
leaq 0x5b48(%rip), %rdi      # 0x9212
leaq 0x5951(%rip), %rsi      # 0x9022
leaq 0x5955(%rip), %rcx      # 0x902d
pushq $0x41
jmp 0x3a13
leaq 0x5b49(%rip), %rdi      # 0x922f
leaq 0x5935(%rip), %rsi      # 0x9022
leaq 0x5939(%rip), %rcx      # 0x902d
pushq $0x44
jmp 0x3a13
leaq 0x5b44(%rip), %rdi      # 0x9246
leaq 0x5919(%rip), %rsi      # 0x9022
leaq 0x591d(%rip), %rcx      # 0x902d
pushq $0x45
jmp 0x3a13
leaq 0x5b4b(%rip), %rdi      # 0x9269
leaq 0x58fd(%rip), %rsi      # 0x9022
leaq 0x5901(%rip), %rcx      # 0x902d
pushq $0x46
jmp 0x3a13
leaq 0x5b57(%rip), %rdi      # 0x9291
leaq 0x58e1(%rip), %rsi      # 0x9022
leaq 0x58e5(%rip), %rcx      # 0x902d
pushq $0x47
jmp 0x3a13
leaq 0x5b61(%rip), %rdi      # 0x92b7
leaq 0x58c5(%rip), %rsi      # 0x9022
leaq 0x58c9(%rip), %rcx      # 0x902d
pushq $0x48
jmp 0x3a13
leaq 0x59fc(%rip), %rdi      # 0x916e
leaq 0x58a9(%rip), %rsi      # 0x9022
leaq 0x58ad(%rip), %rcx      # 0x902d
pushq $0x49
jmp 0x3a13
leaq 0x5b51(%rip), %rdi      # 0x92df
leaq 0x588d(%rip), %rsi      # 0x9022
leaq 0x5891(%rip), %rcx      # 0x902d
pushq $0x4c
jmp 0x3a13
leaq 0x5b4d(%rip), %rdi      # 0x92f7
leaq 0x5871(%rip), %rsi      # 0x9022
leaq 0x5875(%rip), %rcx      # 0x902d
pushq $0x4d
jmp 0x3a13
leaq 0x5b4a(%rip), %rdi      # 0x9310
leaq 0x5855(%rip), %rsi      # 0x9022
leaq 0x5859(%rip), %rcx      # 0x902d
pushq $0x4e
jmp 0x3a13
leaq 0x5b4d(%rip), %rdi      # 0x932f
leaq 0x5839(%rip), %rsi      # 0x9022
leaq 0x583d(%rip), %rcx      # 0x902d
pushq $0x4f
jmp 0x3a13
leaq 0x5b51(%rip), %rdi      # 0x934f
leaq 0x581d(%rip), %rsi      # 0x9022
leaq 0x5821(%rip), %rcx      # 0x902d
pushq $0x50
jmp 0x3a13
leaq 0x5b4f(%rip), %rdi      # 0x9369
leaq 0x5801(%rip), %rsi      # 0x9022
leaq 0x5805(%rip), %rcx      # 0x902d
pushq $0x51
jmp 0x3a13
leaq 0x5b54(%rip), %rdi      # 0x938a
leaq 0x57e5(%rip), %rsi      # 0x9022
leaq 0x57e9(%rip), %rcx      # 0x902d
pushq $0x52
jmp 0x3a13
leaq 0x5b5f(%rip), %rdi      # 0x93b1
leaq 0x57c9(%rip), %rsi      # 0x9022
leaq 0x57cd(%rip), %rcx      # 0x902d
pushq $0x55
jmp 0x3a13
leaq 0x5b5f(%rip), %rdi      # 0x93cd
leaq 0x57ad(%rip), %rsi      # 0x9022
leaq 0x57b1(%rip), %rcx      # 0x902d
pushq $0x56
jmp 0x3a13
leaq 0x5b5f(%rip), %rdi      # 0x93e9
leaq 0x5791(%rip), %rsi      # 0x9022
leaq 0x5795(%rip), %rcx      # 0x902d
pushq $0x57
jmp 0x3a13
leaq 0x5b5f(%rip), %rdi      # 0x9405
leaq 0x5775(%rip), %rsi      # 0x9022
leaq 0x5779(%rip), %rcx      # 0x902d
pushq $0x58
jmp 0x3a13
leaq 0x5b5f(%rip), %rdi      # 0x9421
leaq 0x5759(%rip), %rsi      # 0x9022
leaq 0x575d(%rip), %rcx      # 0x902d
pushq $0x59
jmp 0x3a13
leaq 0x5b5f(%rip), %rdi      # 0x943d
leaq 0x573d(%rip), %rsi      # 0x9022
leaq 0x5741(%rip), %rcx      # 0x902d
pushq $0x5a
jmp 0x3a13
leaq 0x5b5f(%rip), %rdi      # 0x9459
leaq 0x5721(%rip), %rsi      # 0x9022
leaq 0x5725(%rip), %rcx      # 0x902d
pushq $0x5b
jmp 0x3a13
leaq 0x5b5f(%rip), %rdi      # 0x9475
leaq 0x5705(%rip), %rsi      # 0x9022
leaq 0x5709(%rip), %rcx      # 0x902d
pushq $0x5c
jmp 0x3a13
leaq 0x5b5f(%rip), %rdi      # 0x9491
leaq 0x56e9(%rip), %rsi      # 0x9022
leaq 0x56ed(%rip), %rcx      # 0x902d
pushq $0x5d
jmp 0x3a13
leaq 0x5b5f(%rip), %rdi      # 0x94ad
leaq 0x56cd(%rip), %rsi      # 0x9022
leaq 0x56d1(%rip), %rcx      # 0x902d
pushq $0x5e
jmp 0x3a13
leaq 0x5b61(%rip), %rdi      # 0x94cb
leaq 0x56b1(%rip), %rsi      # 0x9022
leaq 0x56b5(%rip), %rcx      # 0x902d
pushq $0x5f
jmp 0x3a13
leaq 0x5b6f(%rip), %rdi      # 0x94f5
leaq 0x5695(%rip), %rsi      # 0x9022
leaq 0x5699(%rip), %rcx      # 0x902d
pushq $0x62
jmp 0x3a13
leaq 0x5b74(%rip), %rdi      # 0x9513
leaq 0x567c(%rip), %rsi      # 0x9022
leaq 0x5680(%rip), %rcx      # 0x902d
pushq $0x63
jmp 0x3a13
leaq 0x5b79(%rip), %rdi      # 0x9531
leaq 0x5663(%rip), %rsi      # 0x9022
leaq 0x5667(%rip), %rcx      # 0x902d
pushq $0x64
jmp 0x3a13
leaq 0x5b7e(%rip), %rdi      # 0x954f
leaq 0x564a(%rip), %rsi      # 0x9022
leaq 0x564e(%rip), %rcx      # 0x902d
pushq $0x65
jmp 0x3a13
leaq 0x5b83(%rip), %rdi      # 0x956d
leaq 0x5631(%rip), %rsi      # 0x9022
leaq 0x5635(%rip), %rcx      # 0x902d
pushq $0x66
jmp 0x3a13
leaq 0x5b88(%rip), %rdi      # 0x958b
leaq 0x5618(%rip), %rsi      # 0x9022
leaq 0x561c(%rip), %rcx      # 0x902d
pushq $0x67
popq %rdx
callq 0x20e0
movq %rax, %rbx
leaq 0x160(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x180(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x1a0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x1c0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x1e0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x200(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x220(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x240(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x260(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x280(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x2a0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x2c0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x2e0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x300(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x320(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x340(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x360(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x380(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x3a0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x3c0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x3e0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x400(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x420(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x440(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x460(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x480(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x4a0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x4c0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x4e0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x500(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x520(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x540(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x560(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x580(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x5a0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x5c0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x5e0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x600(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x620(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x640(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x660(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x680(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x6a0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x6c0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x6e0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x700(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x720(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x740(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x760(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x780(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x7a0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x7c0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x7e0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x800(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x820(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x840(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x860(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x880(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x8a0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x8c0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x8e0(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x900(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x920(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x940(%rsp), %rdi
jmp 0x3f34
jmp 0x3f3b
movq %rax, %rbx
leaq 0x960(%rsp), %rdi
callq 0x2090
jmp 0x3f3e
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x40e8
movq %rbx, %rdi
callq 0x2290