// File: thunlp[P]KB2E/CTransR/Test_CTransR.cpp
// Function: prepare()
void prepare()
{
    FILE* f1 = fopen("../data/entity2id.txt","r");
	FILE* f2 = fopen("../data/relation2id.txt","r");
	int x;
	while (fscanf(f1,"%s%d",buf,&x)==2)
	{
		string st=buf;
		entity2id[st]=x;
		id2entity[x]=st;
		mid2type[st]="None";
		entity_num++;
	}
	while (fscanf(f2,"%s%d",buf,&x)==2)
	{
		string st=buf;
		relation2id[st]=x;
		id2relation[x]=st;
		fb_relation_num++;
	}


	FILE* f_kb_train = fopen("../data/train.txt","r");
	FILE* f_train_cluster = fopen("../cluster/output/train_cluster.txt","r");
	while (fscanf(f_kb_train,"%s",buf)==1)
    {
        string s1=buf;
        fscanf(f_kb_train,"%s",buf);
        string s2=buf;
        fscanf(f_kb_train,"%s",buf);
        string s3=buf;
        int rel_fb = relation2id[s3];
        int rel;
        fscanf(f_train_cluster,"%d",&rel);
        if (cluster2fb.count(rel)==0)
        {
            relation_num+=1;
            cluster2fb[rel]=rel_fb;
            fb2cluster[rel_fb].push_back(rel);
        }
        else
        if (cluster2fb[rel]!=rel_fb)
        {
            cout<<"not map:"<<entity2id[s1]<<" "<<entity2id[s2]<<" "<<rel<<' '<<rel_fb<<endl;
            exit(-1);
        }
        test.add(entity2id[s1],entity2id[s2],relation2id[s3],false);
    }

    fclose(f_train_cluster);
    fclose(f_kb_train);

    FILE* f_kb_test = fopen("../data/test.txt","r");
	while (fscanf(f_kb_test,"%s",buf)==1)
    {
        string s1=buf;
        fscanf(f_kb_test,"%s",buf);
        string s2=buf;
        fscanf(f_kb_test,"%s",buf);
        string s3=buf;
        test.add(entity2id[s1],entity2id[s2],relation2id[s3],true);
    }
    fclose(f_kb_test);

    FILE* f_kb_valid = fopen("../data/valid.txt","r");
	while (fscanf(f_kb_valid,"%s",buf)==1)
    {
        string s1=buf;
        fscanf(f_kb_valid,"%s",buf);
        string s2=buf;
        fscanf(f_kb_valid,"%s",buf);
        string s3=buf;
        test.add(entity2id[s1],entity2id[s2],relation2id[s3],false);
    }
    fclose(f_kb_valid);
}

// Assembly:
subq $0x398, %rsp            # imm = 0x398
leaq 0x13593(%rip), %rdi     # 0x16061
leaq 0x135a2(%rip), %rsi     # 0x16077
callq 0x2270
movq %rax, 0x390(%rsp)
leaq 0x13590(%rip), %rdi     # 0x16079
leaq 0x13587(%rip), %rsi     # 0x16077
callq 0x2270
movq %rax, 0x388(%rsp)
movq 0x390(%rsp), %rdi
leaq 0x13585(%rip), %rsi     # 0x16091
leaq 0x1d99d(%rip), %rdx     # 0x204b0
leaq 0x384(%rsp), %rcx
movb $0x0, %al
callq 0x2370
cmpl $0x2, %eax
jne 0x2c7e
leaq 0x35f(%rsp), %rdi
movq %rdi, 0x188(%rsp)
callq 0x2340
movq 0x188(%rsp), %rdx
leaq 0x1d961(%rip), %rsi     # 0x204b0
leaq 0x360(%rsp), %rdi
callq 0x39b0
jmp 0x2b5e
leaq 0x35f(%rsp), %rdi
callq 0x2230
movl 0x384(%rsp), %eax
movl %eax, 0x17c(%rsp)
leaq 0x1d708(%rip), %rdi     # 0x20288
leaq 0x360(%rsp), %rsi
callq 0x3d30
movq %rax, 0x180(%rsp)
jmp 0x2b97
movq 0x180(%rsp), %rax
movl 0x17c(%rsp), %ecx
movl %ecx, (%rax)
leaq 0x1d709(%rip), %rdi     # 0x202b8
leaq 0x384(%rsp), %rsi
callq 0x3e20
movq %rax, 0x170(%rsp)
jmp 0x2bc6
movq 0x170(%rsp), %rdi
leaq 0x360(%rsp), %rsi
callq 0x2040
jmp 0x2bdd
leaq 0x1d764(%rip), %rdi     # 0x20348
leaq 0x360(%rsp), %rsi
callq 0x3f10
movq %rax, 0x168(%rsp)
jmp 0x2bfb
movq 0x168(%rsp), %rdi
leaq 0x1348c(%rip), %rsi     # 0x16096
callq 0x22a0
jmp 0x2c11
movl 0x1d825(%rip), %eax     # 0x2043c
addl $0x1, %eax
movl %eax, 0x1d81c(%rip)     # 0x2043c
leaq 0x360(%rsp), %rdi
callq 0x23b8
jmp 0x2afd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x35f(%rsp), %rdi
callq 0x2230
jmp 0x3923
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x360(%rsp), %rdi
callq 0x23b8
jmp 0x3923
jmp 0x2c80
movq 0x388(%rsp), %rdi
leaq 0x13402(%rip), %rsi     # 0x16091
leaq 0x1d81a(%rip), %rdx     # 0x204b0
leaq 0x384(%rsp), %rcx
movb $0x0, %al
callq 0x2370
cmpl $0x2, %eax
jne 0x2dcd
leaq 0x327(%rsp), %rdi
movq %rdi, 0x160(%rsp)
callq 0x2340
movq 0x160(%rsp), %rdx
leaq 0x1d7de(%rip), %rsi     # 0x204b0
leaq 0x328(%rsp), %rdi
callq 0x39b0
jmp 0x2ce1
leaq 0x327(%rsp), %rdi
callq 0x2230
movl 0x384(%rsp), %eax
movl %eax, 0x154(%rsp)
leaq 0x1d555(%rip), %rdi     # 0x20258
leaq 0x328(%rsp), %rsi
callq 0x3d30
movq %rax, 0x158(%rsp)
jmp 0x2d1a
movq 0x158(%rsp), %rax
movl 0x154(%rsp), %ecx
movl %ecx, (%rax)
leaq 0x1d5b6(%rip), %rdi     # 0x202e8
leaq 0x384(%rsp), %rsi
callq 0x3e20
movq %rax, 0x148(%rsp)
jmp 0x2d49
movq 0x148(%rsp), %rdi
leaq 0x328(%rsp), %rsi
callq 0x2040
jmp 0x2d60
movl 0x1d6da(%rip), %eax     # 0x20440
addl $0x1, %eax
movl %eax, 0x1d6d1(%rip)     # 0x20440
leaq 0x328(%rsp), %rdi
callq 0x23b8
jmp 0x2c80
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x327(%rsp), %rdi
callq 0x2230
jmp 0x3923
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x328(%rsp), %rdi
callq 0x23b8
jmp 0x3923
leaq 0x132c7(%rip), %rdi     # 0x1609b
leaq 0x1329c(%rip), %rsi     # 0x16077
callq 0x2270
movq %rax, 0x318(%rsp)
leaq 0x132be(%rip), %rdi     # 0x160ad
leaq 0x13281(%rip), %rsi     # 0x16077
callq 0x2270
movq %rax, 0x310(%rsp)
movq 0x318(%rsp), %rdi
leaq 0x132bf(%rip), %rsi     # 0x160d1
leaq 0x1d697(%rip), %rdx     # 0x204b0
movb $0x0, %al
callq 0x2370
cmpl $0x1, %eax
jne 0x336b
leaq 0x2ef(%rsp), %rdi
movq %rdi, 0x140(%rsp)
callq 0x2340
movq 0x140(%rsp), %rdx
leaq 0x1d663(%rip), %rsi     # 0x204b0
leaq 0x2f0(%rsp), %rdi
callq 0x39b0
jmp 0x2e5c
leaq 0x2ef(%rsp), %rdi
callq 0x2230
movq 0x318(%rsp), %rdi
leaq 0x13259(%rip), %rsi     # 0x160d1
leaq 0x1d631(%rip), %rdx     # 0x204b0
xorl %eax, %eax
callq 0x2370
jmp 0x2e88
leaq 0x2c7(%rsp), %rdi
movq %rdi, 0x138(%rsp)
callq 0x2340
movq 0x138(%rsp), %rdx
leaq 0x1d604(%rip), %rsi     # 0x204b0
leaq 0x2c8(%rsp), %rdi
callq 0x39b0
jmp 0x2ebb
leaq 0x2c7(%rsp), %rdi
callq 0x2230
movq 0x318(%rsp), %rdi
leaq 0x131fa(%rip), %rsi     # 0x160d1
leaq 0x1d5d2(%rip), %rdx     # 0x204b0
xorl %eax, %eax
callq 0x2370
jmp 0x2ee7
leaq 0x29f(%rsp), %rdi
movq %rdi, 0x130(%rsp)
callq 0x2340
movq 0x130(%rsp), %rdx
leaq 0x1d5a5(%rip), %rsi     # 0x204b0
leaq 0x2a0(%rsp), %rdi
callq 0x39b0
jmp 0x2f1a
leaq 0x29f(%rsp), %rdi
callq 0x2230
leaq 0x1d32a(%rip), %rdi     # 0x20258
leaq 0x2a0(%rsp), %rsi
callq 0x3d30
movq %rax, 0x128(%rsp)
jmp 0x2f45
movq 0x128(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x298(%rsp)
movq 0x310(%rsp), %rdi
leaq 0x1312e(%rip), %rsi     # 0x16093
xorl %eax, %eax
leaq 0x294(%rsp), %rdx
callq 0x2370
jmp 0x2f76
leaq 0x1d4cb(%rip), %rdi     # 0x20448
leaq 0x294(%rsp), %rsi
callq 0x4000
movq %rax, 0x120(%rsp)
jmp 0x2f94
movq 0x120(%rsp), %rax
cmpq $0x0, %rax
jne 0x30f5
movl 0x1d48c(%rip), %eax     # 0x20438
incl %eax
movl %eax, 0x1d484(%rip)     # 0x20438
movl 0x298(%rsp), %eax
movl %eax, 0x114(%rsp)
leaq 0x1d47f(%rip), %rdi     # 0x20448
leaq 0x294(%rsp), %rsi
callq 0x4060
movq %rax, 0x118(%rsp)
jmp 0x2fe0
movq 0x118(%rsp), %rax
movl 0x114(%rsp), %ecx
movl %ecx, (%rax)
leaq 0x1d480(%rip), %rdi     # 0x20478
leaq 0x298(%rsp), %rsi
callq 0x4150
movq %rax, 0x108(%rsp)
jmp 0x300f
movq 0x108(%rsp), %rdi
leaq 0x294(%rsp), %rsi
callq 0x4240
jmp 0x3026
jmp 0x327b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x2ef(%rsp), %rdi
callq 0x2230
jmp 0x3923
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x3359
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x2c7(%rsp), %rdi
callq 0x2230
jmp 0x3359
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x334c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x29f(%rsp), %rdi
callq 0x2230
jmp 0x334c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x2a0(%rsp), %rdi
callq 0x23b8
jmp 0x334c
leaq 0x1d34c(%rip), %rdi     # 0x20448
leaq 0x294(%rsp), %rsi
callq 0x4060
movq %rax, 0x100(%rsp)
jmp 0x3113
movq 0x100(%rsp), %rax
movl (%rax), %eax
cmpl 0x298(%rsp), %eax
je 0x3279
movq 0x1cea7(%rip), %rdi     # 0x1ffd8
leaq 0x12f9c(%rip), %rsi     # 0x160d4
callq 0x21c0
movq %rax, 0xf8(%rsp)
jmp 0x3147
leaq 0x1d13a(%rip), %rdi     # 0x20288
leaq 0x2f0(%rsp), %rsi
callq 0x3d30
movq %rax, 0xf0(%rsp)
jmp 0x3165
movq 0xf8(%rsp), %rdi
movq 0xf0(%rsp), %rax
movl (%rax), %esi
callq 0x2320
movq %rax, 0xe8(%rsp)
jmp 0x3186
movq 0xe8(%rsp), %rdi
leaq 0x12f48(%rip), %rsi     # 0x160dd
callq 0x21c0
movq %rax, 0xe0(%rsp)
jmp 0x31a4
leaq 0x1d0dd(%rip), %rdi     # 0x20288
leaq 0x2c8(%rsp), %rsi
callq 0x3d30
movq %rax, 0xd8(%rsp)
jmp 0x31c2
movq 0xe0(%rsp), %rdi
movq 0xd8(%rsp), %rax
movl (%rax), %esi
callq 0x2320
movq %rax, 0xd0(%rsp)
jmp 0x31e3
movq 0xd0(%rsp), %rdi
leaq 0x12eeb(%rip), %rsi     # 0x160dd
callq 0x21c0
movq %rax, 0xc8(%rsp)
jmp 0x3201
movq 0xc8(%rsp), %rdi
movl 0x294(%rsp), %esi
callq 0x2320
movq %rax, 0xc0(%rsp)
jmp 0x321f
movq 0xc0(%rsp), %rdi
movl $0x20, %esi
callq 0x2260
movq %rax, 0xb8(%rsp)
jmp 0x323b
movq 0xb8(%rsp), %rdi
movl 0x298(%rsp), %esi
callq 0x2320
movq %rax, 0xb0(%rsp)
jmp 0x3259
movq 0xb0(%rsp), %rdi
movq 0x1cd58(%rip), %rsi     # 0x1ffc0
callq 0x2210
jmp 0x326f
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
callq 0x2280
jmp 0x327b
leaq 0x1d006(%rip), %rdi     # 0x20288
leaq 0x2f0(%rsp), %rsi
callq 0x3d30
movq %rax, 0xa8(%rsp)
jmp 0x3299
movq 0xa8(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x9c(%rsp)
leaq 0x1cfd7(%rip), %rdi     # 0x20288
leaq 0x2c8(%rsp), %rsi
callq 0x3d30
movq %rax, 0xa0(%rsp)
jmp 0x32c8
movq 0xa0(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x8c(%rsp)
leaq 0x1cf78(%rip), %rdi     # 0x20258
leaq 0x2a0(%rsp), %rsi
callq 0x3d30
movq %rax, 0x90(%rsp)
jmp 0x32f7
movl 0x8c(%rsp), %edx
movl 0x9c(%rsp), %esi
movq 0x90(%rsp), %rax
movl (%rax), %ecx
leaq 0x4deda(%rip), %rdi     # 0x511f0
xorl %r8d, %r8d
callq 0x42b0
jmp 0x3320
leaq 0x2a0(%rsp), %rdi
callq 0x23b8
leaq 0x2c8(%rsp), %rdi
callq 0x23b8
leaq 0x2f0(%rsp), %rdi
callq 0x23b8
jmp 0x2e03
leaq 0x2c8(%rsp), %rdi
callq 0x23b8
leaq 0x2f0(%rsp), %rdi
callq 0x23b8
jmp 0x3923
movq 0x310(%rsp), %rdi
callq 0x21d0
movq 0x318(%rsp), %rdi
callq 0x21d0
leaq 0x12d53(%rip), %rdi     # 0x160df
leaq 0x12ce4(%rip), %rsi     # 0x16077
callq 0x2270
movq %rax, 0x288(%rsp)
movq 0x288(%rsp), %rdi
leaq 0x12d22(%rip), %rsi     # 0x160d1
leaq 0x1d0fa(%rip), %rdx     # 0x204b0
movb $0x0, %al
callq 0x2370
cmpl $0x1, %eax
jne 0x3649
leaq 0x267(%rsp), %rdi
movq %rdi, 0x80(%rsp)
callq 0x2340
movq 0x80(%rsp), %rdx
leaq 0x1d0c6(%rip), %rsi     # 0x204b0
leaq 0x268(%rsp), %rdi
callq 0x39b0
jmp 0x33f9
leaq 0x267(%rsp), %rdi
callq 0x2230
movq 0x288(%rsp), %rdi
leaq 0x12cbc(%rip), %rsi     # 0x160d1
leaq 0x1d094(%rip), %rdx     # 0x204b0
xorl %eax, %eax
callq 0x2370
jmp 0x3425
leaq 0x23f(%rsp), %rdi
movq %rdi, 0x78(%rsp)
callq 0x2340
movq 0x78(%rsp), %rdx
leaq 0x1d06d(%rip), %rsi     # 0x204b0
leaq 0x240(%rsp), %rdi
callq 0x39b0
jmp 0x3452
leaq 0x23f(%rsp), %rdi
callq 0x2230
movq 0x288(%rsp), %rdi
leaq 0x12c63(%rip), %rsi     # 0x160d1
leaq 0x1d03b(%rip), %rdx     # 0x204b0
xorl %eax, %eax
callq 0x2370
jmp 0x347e
leaq 0x217(%rsp), %rdi
movq %rdi, 0x70(%rsp)
callq 0x2340
movq 0x70(%rsp), %rdx
leaq 0x1d014(%rip), %rsi     # 0x204b0
leaq 0x218(%rsp), %rdi
callq 0x39b0
jmp 0x34ab
leaq 0x217(%rsp), %rdi
callq 0x2230
leaq 0x1cdc9(%rip), %rdi     # 0x20288
leaq 0x268(%rsp), %rsi
callq 0x3d30
movq %rax, 0x68(%rsp)
jmp 0x34d3
movq 0x68(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x5c(%rsp)
leaq 0x1cda3(%rip), %rdi     # 0x20288
leaq 0x240(%rsp), %rsi
callq 0x3d30
movq %rax, 0x60(%rsp)
jmp 0x34f9
movq 0x60(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x4c(%rsp)
leaq 0x1cd4d(%rip), %rdi     # 0x20258
leaq 0x218(%rsp), %rsi
callq 0x3d30
movq %rax, 0x50(%rsp)
jmp 0x351f
movl 0x4c(%rsp), %edx
movl 0x5c(%rsp), %esi
movq 0x50(%rsp), %rax
movl (%rax), %ecx
leaq 0x4dcbb(%rip), %rdi     # 0x511f0
movl $0x1, %r8d
callq 0x42b0
jmp 0x3542
leaq 0x218(%rsp), %rdi
callq 0x23b8
leaq 0x240(%rsp), %rdi
callq 0x23b8
leaq 0x268(%rsp), %rdi
callq 0x23b8
jmp 0x33a0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x267(%rsp), %rdi
callq 0x2230
jmp 0x3923
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x3637
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x23f(%rsp), %rdi
callq 0x2230
jmp 0x3637
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x362a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x217(%rsp), %rdi
callq 0x2230
jmp 0x362a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x218(%rsp), %rdi
callq 0x23b8
leaq 0x240(%rsp), %rdi
callq 0x23b8
leaq 0x268(%rsp), %rdi
callq 0x23b8
jmp 0x3923
movq 0x288(%rsp), %rdi
callq 0x21d0
leaq 0x12a93(%rip), %rdi     # 0x160f0
leaq 0x12a13(%rip), %rsi     # 0x16077
callq 0x2270
movq %rax, 0x208(%rsp)
movq 0x208(%rsp), %rdi
leaq 0x12a51(%rip), %rsi     # 0x160d1
leaq 0x1ce29(%rip), %rdx     # 0x204b0
movb $0x0, %al
callq 0x2370
cmpl $0x1, %eax
jne 0x390e
leaq 0x1e7(%rsp), %rdi
movq %rdi, 0x40(%rsp)
callq 0x2340
movq 0x40(%rsp), %rdx
leaq 0x1cdfb(%rip), %rsi     # 0x204b0
leaq 0x1e8(%rsp), %rdi
callq 0x39b0
jmp 0x36c4
leaq 0x1e7(%rsp), %rdi
callq 0x2230
movq 0x208(%rsp), %rdi
leaq 0x129f1(%rip), %rsi     # 0x160d1
leaq 0x1cdc9(%rip), %rdx     # 0x204b0
xorl %eax, %eax
callq 0x2370
jmp 0x36f0
leaq 0x1bf(%rsp), %rdi
movq %rdi, 0x38(%rsp)
callq 0x2340
movq 0x38(%rsp), %rdx
leaq 0x1cda2(%rip), %rsi     # 0x204b0
leaq 0x1c0(%rsp), %rdi
callq 0x39b0
jmp 0x371d
leaq 0x1bf(%rsp), %rdi
callq 0x2230
movq 0x208(%rsp), %rdi
leaq 0x12998(%rip), %rsi     # 0x160d1
leaq 0x1cd70(%rip), %rdx     # 0x204b0
xorl %eax, %eax
callq 0x2370
jmp 0x3749
leaq 0x197(%rsp), %rdi
movq %rdi, 0x30(%rsp)
callq 0x2340
movq 0x30(%rsp), %rdx
leaq 0x1cd49(%rip), %rsi     # 0x204b0
leaq 0x198(%rsp), %rdi
callq 0x39b0
jmp 0x3776
leaq 0x197(%rsp), %rdi
callq 0x2230
leaq 0x1cafe(%rip), %rdi     # 0x20288
leaq 0x1e8(%rsp), %rsi
callq 0x3d30
movq %rax, 0x28(%rsp)
jmp 0x379e
movq 0x28(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x1c(%rsp)
leaq 0x1cad8(%rip), %rdi     # 0x20288
leaq 0x1c0(%rsp), %rsi
callq 0x3d30
movq %rax, 0x20(%rsp)
jmp 0x37c4
movq 0x20(%rsp), %rax
movl (%rax), %eax
movl %eax, 0xc(%rsp)
leaq 0x1ca82(%rip), %rdi     # 0x20258
leaq 0x198(%rsp), %rsi
callq 0x3d30
movq %rax, 0x10(%rsp)
jmp 0x37ea
movl 0xc(%rsp), %edx
movl 0x1c(%rsp), %esi
movq 0x10(%rsp), %rax
movl (%rax), %ecx
leaq 0x4d9f0(%rip), %rdi     # 0x511f0
xorl %r8d, %r8d
callq 0x42b0
jmp 0x380a
leaq 0x198(%rsp), %rdi
callq 0x23b8
leaq 0x1c0(%rsp), %rdi
callq 0x23b8
leaq 0x1e8(%rsp), %rdi
callq 0x23b8
jmp 0x3671
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x1e7(%rsp), %rdi
callq 0x2230
jmp 0x3923
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x38ff
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x1bf(%rsp), %rdi
callq 0x2230
jmp 0x38ff
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x38f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x197(%rsp), %rdi
callq 0x2230
jmp 0x38f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x198(%rsp), %rdi
callq 0x23b8
leaq 0x1c0(%rsp), %rdi
callq 0x23b8
leaq 0x1e8(%rsp), %rdi
callq 0x23b8
jmp 0x3923
movq 0x208(%rsp), %rdi
callq 0x21d0
addq $0x398, %rsp            # imm = 0x398
retq
movq 0x350(%rsp), %rdi
callq 0x2330