// File: /workspace/github_c_makefile_star2_O0/Aethlas[P]fflz4/./lib/lz4/lz4.c
// Function: LZ4_compress_forceExtDict
int LZ4_compress_forceExtDict (LZ4_stream_t* LZ4_dict, const char* source, char* dest, int srcSize)
{
    LZ4_stream_t_internal* streamPtr = &LZ4_dict->internal_donotuse;
    int result;

    LZ4_renormDictT(streamPtr, srcSize);

    if ((streamPtr->dictSize < 64 KB) && (streamPtr->dictSize < streamPtr->currentOffset)) {
        result = LZ4_compress_generic(streamPtr, source, dest, srcSize, NULL, 0, notLimited, byU32, usingExtDict, dictSmall, 1);
    } else {
        result = LZ4_compress_generic(streamPtr, source, dest, srcSize, NULL, 0, notLimited, byU32, usingExtDict, noDictIssue, 1);
    }

    streamPtr->dictionary = (const BYTE*)source;
    streamPtr->dictSize = (U32)srcSize;

    return result;
}

// Assembly:
subq $0x838, %rsp            # imm = 0x838
movq %rdi, 0x190(%rsp)
movq %rsi, 0x188(%rsp)
movq %rdx, 0x180(%rsp)
movl %ecx, 0x17c(%rsp)
movq 0x190(%rsp), %rax
movq %rax, 0x170(%rsp)
movq 0x170(%rsp), %rdi
movl 0x17c(%rsp), %esi
callq 0x31680
movq 0x170(%rsp), %rax
cmpl $0x10000, 0x4018(%rax)  # imm = 0x10000
jae 0x33cc6
movq 0x170(%rsp), %rax
movl 0x4018(%rax), %eax
movq 0x170(%rsp), %rcx
cmpl 0x4000(%rcx), %eax
jae 0x33cc6
movq 0x170(%rsp), %rsi
movq 0x188(%rsp), %rdx
movq 0x180(%rsp), %rcx
movl 0x17c(%rsp), %eax
movq %rsi, 0x458(%rsp)
movq %rdx, 0x450(%rsp)
movq %rcx, 0x448(%rsp)
movl %eax, 0x444(%rsp)
movq $0x0, 0x438(%rsp)
movl $0x0, 0x434(%rsp)
movl $0x0, 0x430(%rsp)
movl $0x2, 0x42c(%rsp)
movl $0x2, 0x428(%rsp)
movl $0x1, 0x424(%rsp)
movl $0x1, 0x420(%rsp)
movq 0x450(%rsp), %rax
movq %rax, 0x410(%rsp)
movq 0x458(%rsp), %rax
movl 0x4000(%rax), %eax
movl %eax, 0x40c(%rsp)
movq 0x450(%rsp), %rax
movl 0x40c(%rsp), %ecx
movl %ecx, %edx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x400(%rsp)
movq 0x458(%rsp), %rax
movq 0x4010(%rax), %rax
movq %rax, 0x3f0(%rsp)
cmpl $0x3, 0x428(%rsp)
jne 0x31920
movq 0x3f0(%rsp), %rax
movq 0x4008(%rax), %rax
movq %rax, 0x160(%rsp)
jmp 0x31937
movq 0x458(%rsp), %rax
movq 0x4008(%rax), %rax
movq %rax, 0x160(%rsp)
movq 0x160(%rsp), %rax
movq %rax, 0x3e8(%rsp)
cmpl $0x3, 0x428(%rsp)
jne 0x31968
movq 0x3f0(%rsp), %rax
movl 0x4018(%rax), %eax
movl %eax, 0x15c(%rsp)
jmp 0x3197d
movq 0x458(%rsp), %rax
movl 0x4018(%rax), %eax
movl %eax, 0x15c(%rsp)
movl 0x15c(%rsp), %eax
movl %eax, 0x3e4(%rsp)
cmpl $0x3, 0x428(%rsp)
jne 0x319b3
movl 0x40c(%rsp), %eax
movq 0x3f0(%rsp), %rcx
subl 0x4000(%rcx), %eax
movl %eax, 0x158(%rsp)
jmp 0x319be
xorl %eax, %eax
movl %eax, 0x158(%rsp)
jmp 0x319be
movl 0x158(%rsp), %eax
movl %eax, 0x3e0(%rsp)
movb $0x1, %al
cmpl $0x2, 0x428(%rsp)
movb %al, 0x157(%rsp)
je 0x319f1
cmpl $0x3, 0x428(%rsp)
sete %al
movb %al, 0x157(%rsp)
movb 0x157(%rsp), %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, 0x3dc(%rsp)
movl 0x40c(%rsp), %eax
subl 0x3e4(%rsp), %eax
movl %eax, 0x3d8(%rsp)
movq 0x3e8(%rsp), %rax
movl 0x3e4(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x3d0(%rsp)
movq 0x450(%rsp), %rax
movq %rax, 0x3c8(%rsp)
movq 0x410(%rsp), %rax
movslq 0x444(%rsp), %rcx
addq %rcx, %rax
movq %rax, 0x3c0(%rsp)
movq 0x3c0(%rsp), %rax
addq $-0xc, %rax
addq $0x1, %rax
movq %rax, 0x3b8(%rsp)
movq 0x3c0(%rsp), %rax
addq $-0x5, %rax
movq %rax, 0x3b0(%rsp)
cmpl $0x3, 0x428(%rsp)
jne 0x31ac8
movq 0x3e8(%rsp), %rax
movl 0x3e4(%rsp), %ecx
addq %rcx, %rax
movq 0x3f0(%rsp), %rcx
movl 0x4000(%rcx), %ecx
movl %ecx, %edx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x148(%rsp)
jmp 0x31af3
movq 0x3e8(%rsp), %rax
movl 0x3e4(%rsp), %ecx
addq %rcx, %rax
movl 0x40c(%rsp), %ecx
movl %ecx, %edx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x148(%rsp)
movq 0x148(%rsp), %rax
movq %rax, 0x3a8(%rsp)
movq 0x448(%rsp), %rax
movq %rax, 0x3a0(%rsp)
movq 0x3a0(%rsp), %rax
movslq 0x434(%rsp), %rcx
addq %rcx, %rax
movq %rax, 0x398(%rsp)
movl $0x0, 0x394(%rsp)
cmpl $0x2, 0x430(%rsp)
jne 0x31b5d
cmpl $0x1, 0x434(%rsp)
jge 0x31b5d
movl $0x0, 0x460(%rsp)
jmp 0x33cb3
cmpl $0x7e000000, 0x444(%rsp) # imm = 0x7E000000
jbe 0x31b7a
movl $0x0, 0x460(%rsp)
jmp 0x33cb3
cmpl $0x3, 0x42c(%rsp)
jne 0x31ba1
cmpl $0x1000b, 0x444(%rsp) # imm = 0x1000B
jl 0x31ba1
movl $0x0, 0x460(%rsp)
jmp 0x33cb3
cmpl $0x1, 0x42c(%rsp)
jne 0x31bad
jmp 0x31bad
movq 0x450(%rsp), %rax
movq %rax, 0x140(%rsp)
cmpl $0x1, 0x428(%rsp)
jne 0x31bd7
movl 0x3e4(%rsp), %eax
movl %eax, 0x13c(%rsp)
jmp 0x31be2
xorl %eax, %eax
movl %eax, 0x13c(%rsp)
jmp 0x31be2
movq 0x140(%rsp), %rax
movl 0x13c(%rsp), %ecx
movl %ecx, %ecx
movl %ecx, %edx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x3f8(%rsp)
cmpl $0x3, 0x428(%rsp)
jne 0x31c39
movq 0x458(%rsp), %rax
movq $0x0, 0x4010(%rax)
movl 0x444(%rsp), %ecx
movq 0x458(%rsp), %rax
movl %ecx, 0x4018(%rax)
jmp 0x31c54
movl 0x444(%rsp), %ecx
movq 0x458(%rsp), %rax
addl 0x4018(%rax), %ecx
movl %ecx, 0x4018(%rax)
movl 0x444(%rsp), %ecx
movq 0x458(%rsp), %rax
addl 0x4000(%rax), %ecx
movl %ecx, 0x4000(%rax)
movl 0x42c(%rsp), %eax
movw %ax, %cx
movq 0x458(%rsp), %rax
movw %cx, 0x4006(%rax)
cmpl $0xd, 0x444(%rsp)
jge 0x31c97
jmp 0x33a6a
movq 0x410(%rsp), %rsi
movq 0x458(%rsp), %rdx
movl 0x42c(%rsp), %ecx
movq 0x400(%rsp), %rax
movq %rsi, 0x4d0(%rsp)
movq %rdx, 0x4c8(%rsp)
movl %ecx, 0x4c4(%rsp)
movq %rax, 0x4b8(%rsp)
movq 0x4d0(%rsp), %rcx
movl 0x4c4(%rsp), %eax
movq %rcx, 0x588(%rsp)
movl %eax, 0x584(%rsp)
cmpl $0x3, 0x584(%rsp)
je 0x31d22
movq 0x588(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x584(%rsp), %esi
callq 0x46f60
movl %eax, 0x590(%rsp)
jmp 0x31d44
movq 0x588(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x584(%rsp), %esi
callq 0x47020
movl %eax, 0x590(%rsp)
movl 0x590(%rsp), %eax
movl %eax, 0x4b4(%rsp)
movq 0x4d0(%rsp), %rdi
movl 0x4b4(%rsp), %esi
movq 0x4c8(%rsp), %rdx
movl 0x4c4(%rsp), %ecx
movq 0x4b8(%rsp), %r8
callq 0x46c30
movq 0x410(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x410(%rsp)
movq 0x410(%rsp), %rcx
movl 0x42c(%rsp), %eax
movq %rcx, 0x608(%rsp)
movl %eax, 0x604(%rsp)
cmpl $0x3, 0x604(%rsp)
je 0x31dde
movq 0x608(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x604(%rsp), %esi
callq 0x46f60
movl %eax, 0x610(%rsp)
jmp 0x31e00
movq 0x608(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x604(%rsp), %esi
callq 0x47020
movl %eax, 0x610(%rsp)
movl 0x610(%rsp), %eax
movl %eax, 0x390(%rsp)
cmpl $0x1, 0x42c(%rsp)
jne 0x31ffd
movq 0x410(%rsp), %rax
movq %rax, 0x370(%rsp)
movl $0x1, 0x36c(%rsp)
movl 0x420(%rsp), %eax
shll $0x6, %eax
movl %eax, 0x368(%rsp)
movl 0x390(%rsp), %eax
movl %eax, 0x364(%rsp)
movq 0x370(%rsp), %rax
movq %rax, 0x410(%rsp)
movl 0x36c(%rsp), %ecx
movq 0x370(%rsp), %rax
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, 0x370(%rsp)
movl 0x368(%rsp), %eax
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, 0x368(%rsp)
sarl $0x6, %eax
movl %eax, 0x36c(%rsp)
movq 0x370(%rsp), %rax
cmpq 0x3b8(%rsp), %rax
seta %al
testb $0x1, %al
jne 0x31eb9
jmp 0x31ebe
jmp 0x33a6a
movl 0x364(%rsp), %edi
movq 0x458(%rsp), %rsi
movl 0x42c(%rsp), %edx
movq 0x400(%rsp), %rcx
callq 0x46b90
movq %rax, 0x388(%rsp)
movq 0x370(%rsp), %rcx
movl 0x42c(%rsp), %eax
movq %rcx, 0x5b8(%rsp)
movl %eax, 0x5b4(%rsp)
cmpl $0x3, 0x5b4(%rsp)
je 0x31f36
movq 0x5b8(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x5b4(%rsp), %esi
callq 0x46f60
movl %eax, 0x5c0(%rsp)
jmp 0x31f58
movq 0x5b8(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x5b4(%rsp), %esi
callq 0x47020
movl %eax, 0x5c0(%rsp)
movl 0x5c0(%rsp), %eax
movl %eax, 0x390(%rsp)
movq 0x410(%rsp), %rdi
movl 0x364(%rsp), %esi
movq 0x458(%rsp), %rdx
movl 0x42c(%rsp), %ecx
movq 0x400(%rsp), %r8
callq 0x46c30
movq 0x388(%rsp), %rcx
addq $0xffff, %rcx           # imm = 0xFFFF
movb $0x1, %al
cmpq 0x410(%rsp), %rcx
movb %al, 0x13b(%rsp)
jb 0x31fe9
movq 0x388(%rsp), %rdi
callq 0x46ce0
movl %eax, 0x134(%rsp)
movq 0x410(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0x134(%rsp), %eax
cmpl %ecx, %eax
setne %al
movb %al, 0x13b(%rsp)
movb 0x13b(%rsp), %al
testb $0x1, %al
jne 0x31e48
jmp 0x32349
movq 0x410(%rsp), %rax
movq %rax, 0x358(%rsp)
movl $0x1, 0x354(%rsp)
movl 0x420(%rsp), %eax
shll $0x6, %eax
movl %eax, 0x350(%rsp)
movl 0x390(%rsp), %eax
movl %eax, 0x34c(%rsp)
movq 0x358(%rsp), %rax
movq 0x400(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x348(%rsp)
movl 0x34c(%rsp), %edi
movq 0x458(%rsp), %rsi
movl 0x42c(%rsp), %edx
callq 0x46cf0
movl %eax, 0x344(%rsp)
movq 0x358(%rsp), %rax
movq %rax, 0x410(%rsp)
movl 0x354(%rsp), %ecx
movq 0x358(%rsp), %rax
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, 0x358(%rsp)
movl 0x350(%rsp), %eax
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, 0x350(%rsp)
sarl $0x6, %eax
movl %eax, 0x354(%rsp)
movq 0x358(%rsp), %rax
cmpq 0x3b8(%rsp), %rax
seta %al
testb $0x1, %al
jne 0x320d6
jmp 0x320db
jmp 0x33a6a
cmpl $0x3, 0x428(%rsp)
jne 0x32189
movl 0x344(%rsp), %eax
cmpl 0x40c(%rsp), %eax
jae 0x3215a
movl 0x34c(%rsp), %edi
movq 0x3f0(%rsp), %rsi
movl $0x2, %edx
callq 0x46cf0
movl %eax, 0x344(%rsp)
movq 0x3a8(%rsp), %rax
movl 0x344(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x388(%rsp)
movl 0x3e0(%rsp), %eax
addl 0x344(%rsp), %eax
movl %eax, 0x344(%rsp)
movq 0x3e8(%rsp), %rax
movq %rax, 0x3f8(%rsp)
jmp 0x32184
movq 0x400(%rsp), %rax
movl 0x344(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x388(%rsp)
movq 0x450(%rsp), %rax
movq %rax, 0x3f8(%rsp)
jmp 0x32217
cmpl $0x2, 0x428(%rsp)
jne 0x321fb
movl 0x344(%rsp), %eax
cmpl 0x40c(%rsp), %eax
jae 0x321cf
movq 0x3a8(%rsp), %rax
movl 0x344(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x388(%rsp)
movq 0x3e8(%rsp), %rax
movq %rax, 0x3f8(%rsp)
jmp 0x321f9
movq 0x400(%rsp), %rax
movl 0x344(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x388(%rsp)
movq 0x450(%rsp), %rax
movq %rax, 0x3f8(%rsp)
jmp 0x32215
movq 0x400(%rsp), %rax
movl 0x344(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x388(%rsp)
jmp 0x32217
movq 0x358(%rsp), %rcx
movl 0x42c(%rsp), %eax
movq %rcx, 0x5f8(%rsp)
movl %eax, 0x5f4(%rsp)
cmpl $0x3, 0x5f4(%rsp)
je 0x32264
movq 0x5f8(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x5f4(%rsp), %esi
callq 0x46f60
movl %eax, 0x600(%rsp)
jmp 0x32286
movq 0x5f8(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x5f4(%rsp), %esi
callq 0x47020
movl %eax, 0x600(%rsp)
movl 0x600(%rsp), %eax
movl %eax, 0x390(%rsp)
movl 0x348(%rsp), %edi
movl 0x34c(%rsp), %esi
movq 0x458(%rsp), %rdx
movl 0x42c(%rsp), %ecx
callq 0x46d60
cmpl $0x1, 0x424(%rsp)
jne 0x322d2
movl 0x344(%rsp), %eax
cmpl 0x3d8(%rsp), %eax
jae 0x322d2
jmp 0x32344
cmpl $0x3, 0x42c(%rsp)
je 0x322f3
movl 0x344(%rsp), %eax
addl $0xffff, %eax           # imm = 0xFFFF
cmpl 0x348(%rsp), %eax
jae 0x322f3
jmp 0x32344
movq 0x388(%rsp), %rdi
callq 0x46ce0
movl %eax, 0x130(%rsp)
movq 0x410(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0x130(%rsp), %eax
cmpl %ecx, %eax
jne 0x32342
cmpl $0x0, 0x3dc(%rsp)
je 0x32340
movl 0x348(%rsp), %eax
subl 0x344(%rsp), %eax
movl %eax, 0x394(%rsp)
jmp 0x32349
jmp 0x32344
jmp 0x32029
movq 0x410(%rsp), %rax
movq %rax, 0x378(%rsp)
movq 0x410(%rsp), %rax
cmpq 0x3c8(%rsp), %rax
seta %al
andb $0x1, %al
movzbl %al, %ecx
movq 0x388(%rsp), %rax
cmpq 0x3f8(%rsp), %rax
seta %al
andb $0x1, %al
movzbl %al, %eax
andl %eax, %ecx
xorl %eax, %eax
cmpl $0x0, %ecx
movb %al, 0x12f(%rsp)
je 0x323bd
movq 0x410(%rsp), %rax
movzbl -0x1(%rax), %eax
movq 0x388(%rsp), %rcx
movzbl -0x1(%rcx), %ecx
cmpl %ecx, %eax
sete %al
movb %al, 0x12f(%rsp)
movb 0x12f(%rsp), %al
testb $0x1, %al
jne 0x323ca
jmp 0x323f7
movq 0x410(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x410(%rsp)
movq 0x388(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x388(%rsp)
jmp 0x32359
movq 0x410(%rsp), %rax
movq 0x3c8(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x340(%rsp)
movq 0x3a0(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x3a0(%rsp)
movq %rax, 0x380(%rsp)
cmpl $0x1, 0x430(%rsp)
jne 0x32498
movq 0x3a0(%rsp), %rax
movl 0x340(%rsp), %ecx
addq %rcx, %rax
addq $0x8, %rax
movq %rax, 0x120(%rsp)
movl 0x340(%rsp), %eax
movl $0xff, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, %ecx
movq 0x120(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
cmpq 0x398(%rsp), %rax
seta %al
testb $0x1, %al
jne 0x32488
jmp 0x32498
movl $0x0, 0x460(%rsp)
jmp 0x33cb3
cmpl $0x2, 0x430(%rsp)
jne 0x3251a
movq 0x3a0(%rsp), %rax
movq %rax, 0x118(%rsp)
movl 0x340(%rsp), %eax
addl $0xf0, %eax
movl $0xff, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, %ecx
movq 0x118(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movl 0x340(%rsp), %ecx
addq %rcx, %rax
addq $0x2, %rax
addq $0x1, %rax
addq $0xc, %rax
addq $-0x4, %rax
cmpq 0x398(%rsp), %rax
seta %al
testb $0x1, %al
jne 0x32501
jmp 0x3251a
movq 0x3a0(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x3a0(%rsp)
jmp 0x33a6a
cmpl $0xf, 0x340(%rsp)
jb 0x325a0
movl 0x340(%rsp), %eax
subl $0xf, %eax
movl %eax, 0x33c(%rsp)
movq 0x380(%rsp), %rax
movb $-0x10, (%rax)
cmpl $0xff, 0x33c(%rsp)
jl 0x3257c
movq 0x3a0(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x3a0(%rsp)
movb $-0x1, (%rax)
movl 0x33c(%rsp), %eax
subl $0xff, %eax
movl %eax, 0x33c(%rsp)
jmp 0x32540
movl 0x33c(%rsp), %eax
movb %al, %cl
movq 0x3a0(%rsp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x3a0(%rsp)
movb %cl, (%rax)
jmp 0x325b6
movl 0x340(%rsp), %eax
shll $0x4, %eax
movb %al, %cl
movq 0x380(%rsp), %rax
movb %cl, (%rax)
movq 0x3a0(%rsp), %rdi
movq 0x3c8(%rsp), %rsi
movq 0x3a0(%rsp), %rdx
movl 0x340(%rsp), %eax
addq %rax, %rdx
callq 0x46de0
movl 0x340(%rsp), %ecx
movq 0x3a0(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x3a0(%rsp)
cmpl $0x2, 0x430(%rsp)
jne 0x3263a
movq 0x3a0(%rsp), %rax
addq $0x2, %rax
addq $0x1, %rax
addq $0xc, %rax
addq $-0x4, %rax
cmpq 0x398(%rsp), %rax
jbe 0x3263a
movq 0x380(%rsp), %rax
movq %rax, 0x3a0(%rsp)
jmp 0x33a6a
cmpl $0x0, 0x3dc(%rsp)
je 0x32671
movq 0x3a0(%rsp), %rdi
movl 0x394(%rsp), %eax
movzwl %ax, %esi
callq 0x46e50
movq 0x3a0(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x3a0(%rsp)
jmp 0x326a8
movq 0x3a0(%rsp), %rdi
movq 0x410(%rsp), %rax
movq 0x388(%rsp), %rcx
subq %rcx, %rax
movzwl %ax, %esi
callq 0x46e50
movq 0x3a0(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x3a0(%rsp)
cmpl $0x2, 0x428(%rsp)
je 0x326c0
cmpl $0x3, 0x428(%rsp)
jne 0x32da9
movq 0x3f8(%rsp), %rax
cmpq 0x3e8(%rsp), %rax
jne 0x32da9
movq 0x410(%rsp), %rax
movq 0x3d0(%rsp), %rcx
movq 0x388(%rsp), %rdx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x330(%rsp)
movq 0x330(%rsp), %rax
cmpq 0x3b0(%rsp), %rax
jbe 0x3271e
movq 0x3b0(%rsp), %rax
movq %rax, 0x330(%rsp)
movq 0x410(%rsp), %rdx
addq $0x4, %rdx
movq 0x388(%rsp), %rcx
addq $0x4, %rcx
movq 0x330(%rsp), %rax
movq %rdx, 0x6d8(%rsp)
movq %rcx, 0x6d0(%rsp)
movq %rax, 0x6c8(%rsp)
movq 0x6d8(%rsp), %rax
movq %rax, 0x6c0(%rsp)
movq 0x6d8(%rsp), %rax
movq 0x6c8(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x32789
jmp 0x3280f
movq 0x6d0(%rsp), %rdi
callq 0x47010
movq %rax, 0x110(%rsp)
movq 0x6d8(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0x110(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x6b8(%rsp)
cmpq $0x0, 0x6b8(%rsp)
jne 0x327f6
movq 0x6d8(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x6d8(%rsp)
movq 0x6d0(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x6d0(%rsp)
jmp 0x3280f
movq 0x6b8(%rsp), %rdi
callq 0x47090
movl %eax, 0x6e4(%rsp)
jmp 0x32a26
jmp 0x32811
movq 0x6d8(%rsp), %rax
movq 0x6c8(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x32834
jmp 0x328e7
movq 0x6d0(%rsp), %rdi
callq 0x47010
movq %rax, 0x108(%rsp)
movq 0x6d8(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0x108(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x6b0(%rsp)
cmpq $0x0, 0x6b0(%rsp)
jne 0x328a4
movq 0x6d8(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x6d8(%rsp)
movq 0x6d0(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x6d0(%rsp)
jmp 0x32811
movq 0x6b0(%rsp), %rdi
callq 0x47090
movl %eax, %ecx
movq 0x6d8(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x6d8(%rsp)
movq 0x6d8(%rsp), %rax
movq 0x6c0(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x6e4(%rsp)
jmp 0x32a26
movq 0x6d8(%rsp), %rax
movq 0x6c8(%rsp), %rcx
addq $-0x3, %rcx
cmpq %rcx, %rax
jae 0x32956
movq 0x6d0(%rsp), %rdi
callq 0x46ce0
movl %eax, 0x104(%rsp)
movq 0x6d8(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0x104(%rsp), %eax
cmpl %ecx, %eax
jne 0x32956
movq 0x6d8(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x6d8(%rsp)
movq 0x6d0(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x6d0(%rsp)
movq 0x6d8(%rsp), %rax
movq 0x6c8(%rsp), %rcx
addq $-0x1, %rcx
cmpq %rcx, %rax
jae 0x329cc
movq 0x6d0(%rsp), %rdi
callq 0x470e0
movzwl %ax, %eax
movl %eax, 0x100(%rsp)
movq 0x6d8(%rsp), %rdi
callq 0x470e0
movw %ax, %cx
movl 0x100(%rsp), %eax
movzwl %cx, %ecx
cmpl %ecx, %eax
jne 0x329cc
movq 0x6d8(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x6d8(%rsp)
movq 0x6d0(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x6d0(%rsp)
movq 0x6d8(%rsp), %rax
cmpq 0x6c8(%rsp), %rax
jae 0x32a0c
movq 0x6d0(%rsp), %rax
movzbl (%rax), %eax
movq 0x6d8(%rsp), %rcx
movzbl (%rcx), %ecx
cmpl %ecx, %eax
jne 0x32a0c
movq 0x6d8(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x6d8(%rsp)
movq 0x6d8(%rsp), %rax
movq 0x6c0(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x6e4(%rsp)
movl 0x6e4(%rsp), %eax
movl %eax, 0x338(%rsp)
movl 0x338(%rsp), %eax
addq $0x4, %rax
addq 0x410(%rsp), %rax
movq %rax, 0x410(%rsp)
movq 0x410(%rsp), %rax
cmpq 0x330(%rsp), %rax
jne 0x32da4
movq 0x330(%rsp), %rdx
movq 0x450(%rsp), %rcx
movq 0x3b0(%rsp), %rax
movq %rdx, 0x6a0(%rsp)
movq %rcx, 0x698(%rsp)
movq %rax, 0x690(%rsp)
movq 0x6a0(%rsp), %rax
movq %rax, 0x688(%rsp)
movq 0x6a0(%rsp), %rax
movq 0x690(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x32ac8
jmp 0x32b4e
movq 0x698(%rsp), %rdi
callq 0x47010
movq %rax, 0xf8(%rsp)
movq 0x6a0(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0xf8(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x680(%rsp)
cmpq $0x0, 0x680(%rsp)
jne 0x32b35
movq 0x6a0(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x6a0(%rsp)
movq 0x698(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x698(%rsp)
jmp 0x32b4e
movq 0x680(%rsp), %rdi
callq 0x47090
movl %eax, 0x6ac(%rsp)
jmp 0x32d65
jmp 0x32b50
movq 0x6a0(%rsp), %rax
movq 0x690(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x32b73
jmp 0x32c26
movq 0x698(%rsp), %rdi
callq 0x47010
movq %rax, 0xf0(%rsp)
movq 0x6a0(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0xf0(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x678(%rsp)
cmpq $0x0, 0x678(%rsp)
jne 0x32be3
movq 0x6a0(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x6a0(%rsp)
movq 0x698(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x698(%rsp)
jmp 0x32b50
movq 0x678(%rsp), %rdi
callq 0x47090
movl %eax, %ecx
movq 0x6a0(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x6a0(%rsp)
movq 0x6a0(%rsp), %rax
movq 0x688(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x6ac(%rsp)
jmp 0x32d65
movq 0x6a0(%rsp), %rax
movq 0x690(%rsp), %rcx
addq $-0x3, %rcx
cmpq %rcx, %rax
jae 0x32c95
movq 0x698(%rsp), %rdi
callq 0x46ce0
movl %eax, 0xec(%rsp)
movq 0x6a0(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0xec(%rsp), %eax
cmpl %ecx, %eax
jne 0x32c95
movq 0x6a0(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x6a0(%rsp)
movq 0x698(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x698(%rsp)
movq 0x6a0(%rsp), %rax
movq 0x690(%rsp), %rcx
addq $-0x1, %rcx
cmpq %rcx, %rax
jae 0x32d0b
movq 0x698(%rsp), %rdi
callq 0x470e0
movzwl %ax, %eax
movl %eax, 0xe8(%rsp)
movq 0x6a0(%rsp), %rdi
callq 0x470e0
movw %ax, %cx
movl 0xe8(%rsp), %eax
movzwl %cx, %ecx
cmpl %ecx, %eax
jne 0x32d0b
movq 0x6a0(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x6a0(%rsp)
movq 0x698(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x698(%rsp)
movq 0x6a0(%rsp), %rax
cmpq 0x690(%rsp), %rax
jae 0x32d4b
movq 0x698(%rsp), %rax
movzbl (%rax), %eax
movq 0x6a0(%rsp), %rcx
movzbl (%rcx), %ecx
cmpl %ecx, %eax
jne 0x32d4b
movq 0x6a0(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x6a0(%rsp)
movq 0x6a0(%rsp), %rax
movq 0x688(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x6ac(%rsp)
movl 0x6ac(%rsp), %eax
movl %eax, 0x32c(%rsp)
movl 0x32c(%rsp), %eax
addl 0x338(%rsp), %eax
movl %eax, 0x338(%rsp)
movl 0x32c(%rsp), %ecx
movq 0x410(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x410(%rsp)
jmp 0x330da
movq 0x410(%rsp), %rdx
addq $0x4, %rdx
movq 0x388(%rsp), %rcx
addq $0x4, %rcx
movq 0x3b0(%rsp), %rax
movq %rdx, 0x710(%rsp)
movq %rcx, 0x708(%rsp)
movq %rax, 0x700(%rsp)
movq 0x710(%rsp), %rax
movq %rax, 0x6f8(%rsp)
movq 0x710(%rsp), %rax
movq 0x700(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x32e14
jmp 0x32e9a
movq 0x708(%rsp), %rdi
callq 0x47010
movq %rax, 0xe0(%rsp)
movq 0x710(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0xe0(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x6f0(%rsp)
cmpq $0x0, 0x6f0(%rsp)
jne 0x32e81
movq 0x710(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x710(%rsp)
movq 0x708(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x708(%rsp)
jmp 0x32e9a
movq 0x6f0(%rsp), %rdi
callq 0x47090
movl %eax, 0x71c(%rsp)
jmp 0x330b1
jmp 0x32e9c
movq 0x710(%rsp), %rax
movq 0x700(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x32ebf
jmp 0x32f72
movq 0x708(%rsp), %rdi
callq 0x47010
movq %rax, 0xd8(%rsp)
movq 0x710(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0xd8(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x6e8(%rsp)
cmpq $0x0, 0x6e8(%rsp)
jne 0x32f2f
movq 0x710(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x710(%rsp)
movq 0x708(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x708(%rsp)
jmp 0x32e9c
movq 0x6e8(%rsp), %rdi
callq 0x47090
movl %eax, %ecx
movq 0x710(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x710(%rsp)
movq 0x710(%rsp), %rax
movq 0x6f8(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x71c(%rsp)
jmp 0x330b1
movq 0x710(%rsp), %rax
movq 0x700(%rsp), %rcx
addq $-0x3, %rcx
cmpq %rcx, %rax
jae 0x32fe1
movq 0x708(%rsp), %rdi
callq 0x46ce0
movl %eax, 0xd4(%rsp)
movq 0x710(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0xd4(%rsp), %eax
cmpl %ecx, %eax
jne 0x32fe1
movq 0x710(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x710(%rsp)
movq 0x708(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x708(%rsp)
movq 0x710(%rsp), %rax
movq 0x700(%rsp), %rcx
addq $-0x1, %rcx
cmpq %rcx, %rax
jae 0x33057
movq 0x708(%rsp), %rdi
callq 0x470e0
movzwl %ax, %eax
movl %eax, 0xd0(%rsp)
movq 0x710(%rsp), %rdi
callq 0x470e0
movw %ax, %cx
movl 0xd0(%rsp), %eax
movzwl %cx, %ecx
cmpl %ecx, %eax
jne 0x33057
movq 0x710(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x710(%rsp)
movq 0x708(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x708(%rsp)
movq 0x710(%rsp), %rax
cmpq 0x700(%rsp), %rax
jae 0x33097
movq 0x708(%rsp), %rax
movzbl (%rax), %eax
movq 0x710(%rsp), %rcx
movzbl (%rcx), %ecx
cmpl %ecx, %eax
jne 0x33097
movq 0x710(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x710(%rsp)
movq 0x710(%rsp), %rax
movq 0x6f8(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x71c(%rsp)
movl 0x71c(%rsp), %eax
movl %eax, 0x338(%rsp)
movl 0x338(%rsp), %eax
addq $0x4, %rax
addq 0x410(%rsp), %rax
movq %rax, 0x410(%rsp)
cmpl $0x0, 0x430(%rsp)
je 0x332aa
movq 0x3a0(%rsp), %rax
addq $0x6, %rax
movq %rax, 0xc8(%rsp)
movl 0x338(%rsp), %eax
addl $0xf0, %eax
movl $0xff, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, %ecx
movq 0xc8(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
cmpq 0x398(%rsp), %rax
seta %al
testb $0x1, %al
jne 0x33134
jmp 0x332aa
cmpl $0x2, 0x430(%rsp)
jne 0x3329a
movq 0x398(%rsp), %rax
movq 0x3a0(%rsp), %rcx
subq %rcx, %rax
subl $0x1, %eax
subl $0x5, %eax
imull $0xff, %eax, %eax
addl $0xe, %eax
movl %eax, 0x328(%rsp)
movl 0x338(%rsp), %ecx
subl 0x328(%rsp), %ecx
movq 0x410(%rsp), %rax
movl %ecx, %ecx
movl %ecx, %edx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x410(%rsp)
movl 0x328(%rsp), %eax
movl %eax, 0x338(%rsp)
movq 0x410(%rsp), %rax
cmpq 0x378(%rsp), %rax
setbe %al
testb $0x1, %al
jne 0x331bf
jmp 0x33298
movq 0x410(%rsp), %rax
movq %rax, 0x320(%rsp)
movq 0x320(%rsp), %rax
cmpq 0x378(%rsp), %rax
ja 0x33296
movq 0x320(%rsp), %rcx
movl 0x42c(%rsp), %eax
movq %rcx, 0x5c8(%rsp)
movl %eax, 0x5c4(%rsp)
cmpl $0x3, 0x5c4(%rsp)
je 0x33232
movq 0x5c8(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x5c4(%rsp), %esi
callq 0x46f60
movl %eax, 0x5d0(%rsp)
jmp 0x33254
movq 0x5c8(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x5c4(%rsp), %esi
callq 0x47020
movl %eax, 0x5d0(%rsp)
movl 0x5d0(%rsp), %eax
movl %eax, 0x31c(%rsp)
movl 0x31c(%rsp), %edi
movq 0x458(%rsp), %rsi
movl 0x42c(%rsp), %edx
callq 0x46eb0
movq 0x320(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x320(%rsp)
jmp 0x331cf
jmp 0x33298
jmp 0x332aa
movl $0x0, 0x460(%rsp)
jmp 0x33cb3
cmpl $0xf, 0x338(%rsp)
jb 0x33387
movq 0x380(%rsp), %rax
movzbl (%rax), %ecx
addl $0xf, %ecx
movb %cl, (%rax)
movl 0x338(%rsp), %eax
subl $0xf, %eax
movl %eax, 0x338(%rsp)
movq 0x3a0(%rsp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x46f40
cmpl $0x3fc, 0x338(%rsp) # imm = 0x3FC
jb 0x33333
movq 0x3a0(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x3a0(%rsp)
movq 0x3a0(%rsp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x46f40
movl 0x338(%rsp), %eax
subl $0x3fc, %eax            # imm = 0x3FC
movl %eax, 0x338(%rsp)
jmp 0x332eb
movl 0x338(%rsp), %eax
movl $0xff, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, %ecx
movq 0x3a0(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x3a0(%rsp)
movl 0x338(%rsp), %eax
movl $0xff, %ecx
xorl %edx, %edx
divl %ecx
movb %dl, %cl
movq 0x3a0(%rsp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x3a0(%rsp)
movb %cl, (%rax)
jmp 0x333a0
movl 0x338(%rsp), %eax
movzbl %al, %edx
movq 0x380(%rsp), %rax
movzbl (%rax), %ecx
addl %edx, %ecx
movb %cl, (%rax)
movq 0x410(%rsp), %rax
movq %rax, 0x3c8(%rsp)
movq 0x410(%rsp), %rax
cmpq 0x3b8(%rsp), %rax
jb 0x333c7
jmp 0x33a6a
movq 0x410(%rsp), %rsi
addq $-0x2, %rsi
movq 0x458(%rsp), %rdx
movl 0x42c(%rsp), %ecx
movq 0x400(%rsp), %rax
movq %rsi, 0x4a8(%rsp)
movq %rdx, 0x4a0(%rsp)
movl %ecx, 0x49c(%rsp)
movq %rax, 0x490(%rsp)
movq 0x4a8(%rsp), %rcx
movl 0x49c(%rsp), %eax
movq %rcx, 0x598(%rsp)
movl %eax, 0x594(%rsp)
cmpl $0x3, 0x594(%rsp)
je 0x33456
movq 0x598(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x594(%rsp), %esi
callq 0x46f60
movl %eax, 0x5a0(%rsp)
jmp 0x33478
movq 0x598(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x594(%rsp), %esi
callq 0x47020
movl %eax, 0x5a0(%rsp)
movl 0x5a0(%rsp), %eax
movl %eax, 0x48c(%rsp)
movq 0x4a8(%rsp), %rdi
movl 0x48c(%rsp), %esi
movq 0x4a0(%rsp), %rdx
movl 0x49c(%rsp), %ecx
movq 0x490(%rsp), %r8
callq 0x46c30
cmpl $0x1, 0x42c(%rsp)
jne 0x33705
movq 0x410(%rsp), %rsi
movq 0x458(%rsp), %rdx
movl 0x42c(%rsp), %ecx
movq 0x400(%rsp), %rax
movq %rsi, 0x7e0(%rsp)
movq %rdx, 0x7d8(%rsp)
movl %ecx, 0x7d4(%rsp)
movq %rax, 0x7c8(%rsp)
movq 0x7e0(%rsp), %rcx
movl 0x7d4(%rsp), %eax
movq %rcx, 0x7f0(%rsp)
movl %eax, 0x7ec(%rsp)
cmpl $0x3, 0x7ec(%rsp)
je 0x3354a
movq 0x7f0(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x7ec(%rsp), %esi
callq 0x46f60
movl %eax, 0x7f8(%rsp)
jmp 0x3356c
movq 0x7f0(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x7ec(%rsp), %esi
callq 0x47020
movl %eax, 0x7f8(%rsp)
movl 0x7f8(%rsp), %eax
movl %eax, 0x7c4(%rsp)
movl 0x7c4(%rsp), %edi
movq 0x7d8(%rsp), %rsi
movl 0x7d4(%rsp), %edx
movq 0x7c8(%rsp), %rcx
callq 0x46b90
movq %rax, 0x388(%rsp)
movq 0x410(%rsp), %rsi
movq 0x458(%rsp), %rdx
movl 0x42c(%rsp), %ecx
movq 0x400(%rsp), %rax
movq %rsi, 0x480(%rsp)
movq %rdx, 0x478(%rsp)
movl %ecx, 0x474(%rsp)
movq %rax, 0x468(%rsp)
movq 0x480(%rsp), %rcx
movl 0x474(%rsp), %eax
movq %rcx, 0x5a8(%rsp)
movl %eax, 0x5a4(%rsp)
cmpl $0x3, 0x5a4(%rsp)
je 0x33630
movq 0x5a8(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x5a4(%rsp), %esi
callq 0x46f60
movl %eax, 0x5b0(%rsp)
jmp 0x33652
movq 0x5a8(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x5a4(%rsp), %esi
callq 0x47020
movl %eax, 0x5b0(%rsp)
movl 0x5b0(%rsp), %eax
movl %eax, 0x464(%rsp)
movq 0x480(%rsp), %rdi
movl 0x464(%rsp), %esi
movq 0x478(%rsp), %rdx
movl 0x474(%rsp), %ecx
movq 0x468(%rsp), %r8
callq 0x46c30
movq 0x388(%rsp), %rax
addq $0xffff, %rax           # imm = 0xFFFF
cmpq 0x410(%rsp), %rax
jb 0x33700
movq 0x388(%rsp), %rdi
callq 0x46ce0
movl %eax, 0xc4(%rsp)
movq 0x410(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0xc4(%rsp), %eax
cmpl %ecx, %eax
jne 0x33700
movq 0x3a0(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x3a0(%rsp)
movq %rax, 0x380(%rsp)
movq 0x380(%rsp), %rax
movb $0x0, (%rax)
jmp 0x325f9
jmp 0x339dc
movq 0x410(%rsp), %rcx
movl 0x42c(%rsp), %eax
movq %rcx, 0x5e8(%rsp)
movl %eax, 0x5e4(%rsp)
cmpl $0x3, 0x5e4(%rsp)
je 0x33752
movq 0x5e8(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x5e4(%rsp), %esi
callq 0x46f60
movl %eax, 0x5f0(%rsp)
jmp 0x33774
movq 0x5e8(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x5e4(%rsp), %esi
callq 0x47020
movl %eax, 0x5f0(%rsp)
movl 0x5f0(%rsp), %eax
movl %eax, 0x318(%rsp)
movq 0x410(%rsp), %rax
movq 0x400(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x314(%rsp)
movl 0x318(%rsp), %edi
movq 0x458(%rsp), %rsi
movl 0x42c(%rsp), %edx
callq 0x46cf0
movl %eax, 0x310(%rsp)
cmpl $0x3, 0x428(%rsp)
jne 0x3386c
movl 0x310(%rsp), %eax
cmpl 0x40c(%rsp), %eax
jae 0x3383d
movl 0x318(%rsp), %edi
movq 0x3f0(%rsp), %rsi
movl $0x2, %edx
callq 0x46cf0
movl %eax, 0x310(%rsp)
movq 0x3a8(%rsp), %rax
movl 0x310(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x388(%rsp)
movq 0x3e8(%rsp), %rax
movq %rax, 0x3f8(%rsp)
movl 0x3e0(%rsp), %eax
addl 0x310(%rsp), %eax
movl %eax, 0x310(%rsp)
jmp 0x33867
movq 0x400(%rsp), %rax
movl 0x310(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x388(%rsp)
movq 0x450(%rsp), %rax
movq %rax, 0x3f8(%rsp)
jmp 0x338fa
cmpl $0x2, 0x428(%rsp)
jne 0x338de
movl 0x310(%rsp), %eax
cmpl 0x40c(%rsp), %eax
jae 0x338b2
movq 0x3a8(%rsp), %rax
movl 0x310(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x388(%rsp)
movq 0x3e8(%rsp), %rax
movq %rax, 0x3f8(%rsp)
jmp 0x338dc
movq 0x400(%rsp), %rax
movl 0x310(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x388(%rsp)
movq 0x450(%rsp), %rax
movq %rax, 0x3f8(%rsp)
jmp 0x338f8
movq 0x400(%rsp), %rax
movl 0x310(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x388(%rsp)
jmp 0x338fa
movl 0x314(%rsp), %edi
movl 0x318(%rsp), %esi
movq 0x458(%rsp), %rdx
movl 0x42c(%rsp), %ecx
callq 0x46d60
cmpl $0x1, 0x424(%rsp)
jne 0x3393b
movl 0x310(%rsp), %eax
cmpl 0x3d8(%rsp), %eax
jae 0x3393d
jmp 0x339da
jmp 0x3393d
cmpl $0x3, 0x42c(%rsp)
jne 0x33949
jmp 0x3395e
movl 0x310(%rsp), %eax
addl $0xffff, %eax           # imm = 0xFFFF
cmpl 0x314(%rsp), %eax
jb 0x339da
movq 0x388(%rsp), %rdi
callq 0x46ce0
movl %eax, 0xc0(%rsp)
movq 0x410(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0xc0(%rsp), %eax
cmpl %ecx, %eax
jne 0x339da
movq 0x3a0(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x3a0(%rsp)
movq %rax, 0x380(%rsp)
movq 0x380(%rsp), %rax
movb $0x0, (%rax)
cmpl $0x0, 0x3dc(%rsp)
je 0x339d5
movl 0x314(%rsp), %eax
subl 0x310(%rsp), %eax
movl %eax, 0x394(%rsp)
jmp 0x325f9
jmp 0x339dc
movq 0x410(%rsp), %rcx
addq $0x1, %rcx
movq %rcx, 0x410(%rsp)
movl 0x42c(%rsp), %eax
movq %rcx, 0x5d8(%rsp)
movl %eax, 0x5d4(%rsp)
cmpl $0x3, 0x5d4(%rsp)
je 0x33a35
movq 0x5d8(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x5d4(%rsp), %esi
callq 0x46f60
movl %eax, 0x5e0(%rsp)
jmp 0x33a57
movq 0x5d8(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x5d4(%rsp), %esi
callq 0x47020
movl %eax, 0x5e0(%rsp)
movl 0x5e0(%rsp), %eax
movl %eax, 0x390(%rsp)
jmp 0x31e0e
movq 0x3c0(%rsp), %rax
movq 0x3c8(%rsp), %rcx
subq %rcx, %rax
movq %rax, 0x308(%rsp)
cmpl $0x0, 0x430(%rsp)
je 0x33b4c
movq 0x3a0(%rsp), %rax
addq 0x308(%rsp), %rax
addq $0x1, %rax
movq %rax, 0xb8(%rsp)
movq 0x308(%rsp), %rax
addq $0xff, %rax
subq $0xf, %rax
movl $0xff, %ecx
xorl %edx, %edx
divq %rcx
movq %rax, %rcx
movq 0xb8(%rsp), %rax
addq %rcx, %rax
cmpq 0x398(%rsp), %rax
jbe 0x33b4c
cmpl $0x2, 0x430(%rsp)
jne 0x33b3c
movq 0x398(%rsp), %rax
movq 0x3a0(%rsp), %rcx
subq %rcx, %rax
subq $0x1, %rax
movq %rax, 0x308(%rsp)
movq 0x308(%rsp), %rax
addq $0xf0, %rax
movl $0xff, %ecx
xorl %edx, %edx
divq %rcx
movq %rax, %rcx
movq 0x308(%rsp), %rax
subq %rcx, %rax
movq %rax, 0x308(%rsp)
jmp 0x33b4c
movl $0x0, 0x460(%rsp)
jmp 0x33cb3
cmpq $0xf, 0x308(%rsp)
jb 0x33bee
movq 0x308(%rsp), %rax
subq $0xf, %rax
movq %rax, 0x300(%rsp)
movq 0x3a0(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x3a0(%rsp)
movb $-0x10, (%rax)
cmpq $0xff, 0x300(%rsp)
jb 0x33bc9
movq 0x3a0(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x3a0(%rsp)
movb $-0x1, (%rax)
movq 0x300(%rsp), %rax
subq $0xff, %rax
movq %rax, 0x300(%rsp)
jmp 0x33b89
movq 0x300(%rsp), %rax
movb %al, %cl
movq 0x3a0(%rsp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x3a0(%rsp)
movb %cl, (%rax)
jmp 0x33c15
movq 0x308(%rsp), %rax
shlq $0x4, %rax
movb %al, %cl
movq 0x3a0(%rsp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x3a0(%rsp)
movb %cl, (%rax)
movq 0x3a0(%rsp), %rdi
movq 0x3c8(%rsp), %rsi
movq 0x308(%rsp), %rdx
callq 0x1140
movq 0x3c8(%rsp), %rax
addq 0x308(%rsp), %rax
movq %rax, 0x410(%rsp)
movq 0x308(%rsp), %rax
addq 0x3a0(%rsp), %rax
movq %rax, 0x3a0(%rsp)
cmpl $0x2, 0x430(%rsp)
jne 0x33c8b
movq 0x410(%rsp), %rax
movq 0x450(%rsp), %rcx
subq %rcx, %rax
movl %eax, %ecx
movq 0x438(%rsp), %rax
movl %ecx, (%rax)
movq 0x3a0(%rsp), %rax
movq 0x448(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x41c(%rsp)
movl 0x41c(%rsp), %eax
movl %eax, 0x460(%rsp)
movl 0x460(%rsp), %eax
movl %eax, 0x16c(%rsp)
jmp 0x360fe
movq 0x170(%rsp), %rsi
movq 0x188(%rsp), %rdx
movq 0x180(%rsp), %rcx
movl 0x17c(%rsp), %eax
movq %rsi, 0x2f0(%rsp)
movq %rdx, 0x2e8(%rsp)
movq %rcx, 0x2e0(%rsp)
movl %eax, 0x2dc(%rsp)
movq $0x0, 0x2d0(%rsp)
movl $0x0, 0x2cc(%rsp)
movl $0x0, 0x2c8(%rsp)
movl $0x2, 0x2c4(%rsp)
movl $0x2, 0x2c0(%rsp)
movl $0x0, 0x2bc(%rsp)
movl $0x1, 0x2b8(%rsp)
movq 0x2e8(%rsp), %rax
movq %rax, 0x2a8(%rsp)
movq 0x2f0(%rsp), %rax
movl 0x4000(%rax), %eax
movl %eax, 0x2a4(%rsp)
movq 0x2e8(%rsp), %rax
movl 0x2a4(%rsp), %ecx
movl %ecx, %edx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x298(%rsp)
movq 0x2f0(%rsp), %rax
movq 0x4010(%rax), %rax
movq %rax, 0x288(%rsp)
cmpl $0x3, 0x2c0(%rsp)
jne 0x33dd2
movq 0x288(%rsp), %rax
movq 0x4008(%rax), %rax
movq %rax, 0xb0(%rsp)
jmp 0x33de9
movq 0x2f0(%rsp), %rax
movq 0x4008(%rax), %rax
movq %rax, 0xb0(%rsp)
movq 0xb0(%rsp), %rax
movq %rax, 0x280(%rsp)
cmpl $0x3, 0x2c0(%rsp)
jne 0x33e1a
movq 0x288(%rsp), %rax
movl 0x4018(%rax), %eax
movl %eax, 0xac(%rsp)
jmp 0x33e2f
movq 0x2f0(%rsp), %rax
movl 0x4018(%rax), %eax
movl %eax, 0xac(%rsp)
movl 0xac(%rsp), %eax
movl %eax, 0x27c(%rsp)
cmpl $0x3, 0x2c0(%rsp)
jne 0x33e65
movl 0x2a4(%rsp), %eax
movq 0x288(%rsp), %rcx
subl 0x4000(%rcx), %eax
movl %eax, 0xa8(%rsp)
jmp 0x33e70
xorl %eax, %eax
movl %eax, 0xa8(%rsp)
jmp 0x33e70
movl 0xa8(%rsp), %eax
movl %eax, 0x278(%rsp)
movb $0x1, %al
cmpl $0x2, 0x2c0(%rsp)
movb %al, 0xa7(%rsp)
je 0x33ea3
cmpl $0x3, 0x2c0(%rsp)
sete %al
movb %al, 0xa7(%rsp)
movb 0xa7(%rsp), %al
andb $0x1, %al
movzbl %al, %eax
movl %eax, 0x274(%rsp)
movl 0x2a4(%rsp), %eax
subl 0x27c(%rsp), %eax
movl %eax, 0x270(%rsp)
movq 0x280(%rsp), %rax
movl 0x27c(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x268(%rsp)
movq 0x2e8(%rsp), %rax
movq %rax, 0x260(%rsp)
movq 0x2a8(%rsp), %rax
movslq 0x2dc(%rsp), %rcx
addq %rcx, %rax
movq %rax, 0x258(%rsp)
movq 0x258(%rsp), %rax
addq $-0xc, %rax
addq $0x1, %rax
movq %rax, 0x250(%rsp)
movq 0x258(%rsp), %rax
addq $-0x5, %rax
movq %rax, 0x248(%rsp)
cmpl $0x3, 0x2c0(%rsp)
jne 0x33f7a
movq 0x280(%rsp), %rax
movl 0x27c(%rsp), %ecx
addq %rcx, %rax
movq 0x288(%rsp), %rcx
movl 0x4000(%rcx), %ecx
movl %ecx, %edx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x98(%rsp)
jmp 0x33fa5
movq 0x280(%rsp), %rax
movl 0x27c(%rsp), %ecx
addq %rcx, %rax
movl 0x2a4(%rsp), %ecx
movl %ecx, %edx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x98(%rsp)
movq 0x98(%rsp), %rax
movq %rax, 0x240(%rsp)
movq 0x2e0(%rsp), %rax
movq %rax, 0x238(%rsp)
movq 0x238(%rsp), %rax
movslq 0x2cc(%rsp), %rcx
addq %rcx, %rax
movq %rax, 0x230(%rsp)
movl $0x0, 0x22c(%rsp)
cmpl $0x2, 0x2c8(%rsp)
jne 0x3400f
cmpl $0x1, 0x2cc(%rsp)
jge 0x3400f
movl $0x0, 0x2fc(%rsp)
jmp 0x360f0
cmpl $0x7e000000, 0x2dc(%rsp) # imm = 0x7E000000
jbe 0x3402c
movl $0x0, 0x2fc(%rsp)
jmp 0x360f0
cmpl $0x3, 0x2c4(%rsp)
jne 0x34053
cmpl $0x1000b, 0x2dc(%rsp) # imm = 0x1000B
jl 0x34053
movl $0x0, 0x2fc(%rsp)
jmp 0x360f0
cmpl $0x1, 0x2c4(%rsp)
jne 0x3405f
jmp 0x3405f
movq 0x2e8(%rsp), %rax
movq %rax, 0x90(%rsp)
cmpl $0x1, 0x2c0(%rsp)
jne 0x34089
movl 0x27c(%rsp), %eax
movl %eax, 0x8c(%rsp)
jmp 0x34094
xorl %eax, %eax
movl %eax, 0x8c(%rsp)
jmp 0x34094
movq 0x90(%rsp), %rax
movl 0x8c(%rsp), %ecx
movl %ecx, %ecx
movl %ecx, %edx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x290(%rsp)
cmpl $0x3, 0x2c0(%rsp)
jne 0x340eb
movq 0x2f0(%rsp), %rax
movq $0x0, 0x4010(%rax)
movl 0x2dc(%rsp), %ecx
movq 0x2f0(%rsp), %rax
movl %ecx, 0x4018(%rax)
jmp 0x34106
movl 0x2dc(%rsp), %ecx
movq 0x2f0(%rsp), %rax
addl 0x4018(%rax), %ecx
movl %ecx, 0x4018(%rax)
movl 0x2dc(%rsp), %ecx
movq 0x2f0(%rsp), %rax
addl 0x4000(%rax), %ecx
movl %ecx, 0x4000(%rax)
movl 0x2c4(%rsp), %eax
movw %ax, %cx
movq 0x2f0(%rsp), %rax
movw %cx, 0x4006(%rax)
cmpl $0xd, 0x2dc(%rsp)
jge 0x34149
jmp 0x35ead
movq 0x2a8(%rsp), %rsi
movq 0x2f0(%rsp), %rdx
movl 0x2c4(%rsp), %ecx
movq 0x298(%rsp), %rax
movq %rsi, 0x548(%rsp)
movq %rdx, 0x540(%rsp)
movl %ecx, 0x53c(%rsp)
movq %rax, 0x530(%rsp)
movq 0x548(%rsp), %rcx
movl 0x53c(%rsp), %eax
movq %rcx, 0x558(%rsp)
movl %eax, 0x554(%rsp)
cmpl $0x3, 0x554(%rsp)
je 0x341d4
movq 0x558(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x554(%rsp), %esi
callq 0x46f60
movl %eax, 0x560(%rsp)
jmp 0x341f6
movq 0x558(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x554(%rsp), %esi
callq 0x47020
movl %eax, 0x560(%rsp)
movl 0x560(%rsp), %eax
movl %eax, 0x52c(%rsp)
movq 0x548(%rsp), %rdi
movl 0x52c(%rsp), %esi
movq 0x540(%rsp), %rdx
movl 0x53c(%rsp), %ecx
movq 0x530(%rsp), %r8
callq 0x46c30
movq 0x2a8(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x2a8(%rsp)
movq 0x2a8(%rsp), %rcx
movl 0x2c4(%rsp), %eax
movq %rcx, 0x668(%rsp)
movl %eax, 0x664(%rsp)
cmpl $0x3, 0x664(%rsp)
je 0x34290
movq 0x668(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x664(%rsp), %esi
callq 0x46f60
movl %eax, 0x674(%rsp)
jmp 0x342b2
movq 0x668(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x664(%rsp), %esi
callq 0x47020
movl %eax, 0x674(%rsp)
movl 0x674(%rsp), %eax
movl %eax, 0x228(%rsp)
cmpl $0x1, 0x2c4(%rsp)
jne 0x344af
movq 0x2a8(%rsp), %rax
movq %rax, 0x208(%rsp)
movl $0x1, 0x204(%rsp)
movl 0x2b8(%rsp), %eax
shll $0x6, %eax
movl %eax, 0x200(%rsp)
movl 0x228(%rsp), %eax
movl %eax, 0x1fc(%rsp)
movq 0x208(%rsp), %rax
movq %rax, 0x2a8(%rsp)
movl 0x204(%rsp), %ecx
movq 0x208(%rsp), %rax
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, 0x208(%rsp)
movl 0x200(%rsp), %eax
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, 0x200(%rsp)
sarl $0x6, %eax
movl %eax, 0x204(%rsp)
movq 0x208(%rsp), %rax
cmpq 0x250(%rsp), %rax
seta %al
testb $0x1, %al
jne 0x3436b
jmp 0x34370
jmp 0x35ead
movl 0x1fc(%rsp), %edi
movq 0x2f0(%rsp), %rsi
movl 0x2c4(%rsp), %edx
movq 0x298(%rsp), %rcx
callq 0x46b90
movq %rax, 0x220(%rsp)
movq 0x208(%rsp), %rcx
movl 0x2c4(%rsp), %eax
movq %rcx, 0x618(%rsp)
movl %eax, 0x614(%rsp)
cmpl $0x3, 0x614(%rsp)
je 0x343e8
movq 0x618(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x614(%rsp), %esi
callq 0x46f60
movl %eax, 0x620(%rsp)
jmp 0x3440a
movq 0x618(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x614(%rsp), %esi
callq 0x47020
movl %eax, 0x620(%rsp)
movl 0x620(%rsp), %eax
movl %eax, 0x228(%rsp)
movq 0x2a8(%rsp), %rdi
movl 0x1fc(%rsp), %esi
movq 0x2f0(%rsp), %rdx
movl 0x2c4(%rsp), %ecx
movq 0x298(%rsp), %r8
callq 0x46c30
movq 0x220(%rsp), %rcx
addq $0xffff, %rcx           # imm = 0xFFFF
movb $0x1, %al
cmpq 0x2a8(%rsp), %rcx
movb %al, 0x8b(%rsp)
jb 0x3449b
movq 0x220(%rsp), %rdi
callq 0x46ce0
movl %eax, 0x84(%rsp)
movq 0x2a8(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0x84(%rsp), %eax
cmpl %ecx, %eax
setne %al
movb %al, 0x8b(%rsp)
movb 0x8b(%rsp), %al
testb $0x1, %al
jne 0x342fa
jmp 0x347fb
movq 0x2a8(%rsp), %rax
movq %rax, 0x1f0(%rsp)
movl $0x1, 0x1ec(%rsp)
movl 0x2b8(%rsp), %eax
shll $0x6, %eax
movl %eax, 0x1e8(%rsp)
movl 0x228(%rsp), %eax
movl %eax, 0x1e4(%rsp)
movq 0x1f0(%rsp), %rax
movq 0x298(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x1e0(%rsp)
movl 0x1e4(%rsp), %edi
movq 0x2f0(%rsp), %rsi
movl 0x2c4(%rsp), %edx
callq 0x46cf0
movl %eax, 0x1dc(%rsp)
movq 0x1f0(%rsp), %rax
movq %rax, 0x2a8(%rsp)
movl 0x1ec(%rsp), %ecx
movq 0x1f0(%rsp), %rax
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, 0x1f0(%rsp)
movl 0x1e8(%rsp), %eax
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, 0x1e8(%rsp)
sarl $0x6, %eax
movl %eax, 0x1ec(%rsp)
movq 0x1f0(%rsp), %rax
cmpq 0x250(%rsp), %rax
seta %al
testb $0x1, %al
jne 0x34588
jmp 0x3458d
jmp 0x35ead
cmpl $0x3, 0x2c0(%rsp)
jne 0x3463b
movl 0x1dc(%rsp), %eax
cmpl 0x2a4(%rsp), %eax
jae 0x3460c
movl 0x1e4(%rsp), %edi
movq 0x288(%rsp), %rsi
movl $0x2, %edx
callq 0x46cf0
movl %eax, 0x1dc(%rsp)
movq 0x240(%rsp), %rax
movl 0x1dc(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x220(%rsp)
movl 0x278(%rsp), %eax
addl 0x1dc(%rsp), %eax
movl %eax, 0x1dc(%rsp)
movq 0x280(%rsp), %rax
movq %rax, 0x290(%rsp)
jmp 0x34636
movq 0x298(%rsp), %rax
movl 0x1dc(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x220(%rsp)
movq 0x2e8(%rsp), %rax
movq %rax, 0x290(%rsp)
jmp 0x346c9
cmpl $0x2, 0x2c0(%rsp)
jne 0x346ad
movl 0x1dc(%rsp), %eax
cmpl 0x2a4(%rsp), %eax
jae 0x34681
movq 0x240(%rsp), %rax
movl 0x1dc(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x220(%rsp)
movq 0x280(%rsp), %rax
movq %rax, 0x290(%rsp)
jmp 0x346ab
movq 0x298(%rsp), %rax
movl 0x1dc(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x220(%rsp)
movq 0x2e8(%rsp), %rax
movq %rax, 0x290(%rsp)
jmp 0x346c7
movq 0x298(%rsp), %rax
movl 0x1dc(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x220(%rsp)
jmp 0x346c9
movq 0x1f0(%rsp), %rcx
movl 0x2c4(%rsp), %eax
movq %rcx, 0x658(%rsp)
movl %eax, 0x654(%rsp)
cmpl $0x3, 0x654(%rsp)
je 0x34716
movq 0x658(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x654(%rsp), %esi
callq 0x46f60
movl %eax, 0x660(%rsp)
jmp 0x34738
movq 0x658(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x654(%rsp), %esi
callq 0x47020
movl %eax, 0x660(%rsp)
movl 0x660(%rsp), %eax
movl %eax, 0x228(%rsp)
movl 0x1e0(%rsp), %edi
movl 0x1e4(%rsp), %esi
movq 0x2f0(%rsp), %rdx
movl 0x2c4(%rsp), %ecx
callq 0x46d60
cmpl $0x1, 0x2bc(%rsp)
jne 0x34784
movl 0x1dc(%rsp), %eax
cmpl 0x270(%rsp), %eax
jae 0x34784
jmp 0x347f6
cmpl $0x3, 0x2c4(%rsp)
je 0x347a5
movl 0x1dc(%rsp), %eax
addl $0xffff, %eax           # imm = 0xFFFF
cmpl 0x1e0(%rsp), %eax
jae 0x347a5
jmp 0x347f6
movq 0x220(%rsp), %rdi
callq 0x46ce0
movl %eax, 0x80(%rsp)
movq 0x2a8(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0x80(%rsp), %eax
cmpl %ecx, %eax
jne 0x347f4
cmpl $0x0, 0x274(%rsp)
je 0x347f2
movl 0x1e0(%rsp), %eax
subl 0x1dc(%rsp), %eax
movl %eax, 0x22c(%rsp)
jmp 0x347fb
jmp 0x347f6
jmp 0x344db
movq 0x2a8(%rsp), %rax
movq %rax, 0x210(%rsp)
movq 0x2a8(%rsp), %rax
cmpq 0x260(%rsp), %rax
seta %al
andb $0x1, %al
movzbl %al, %ecx
movq 0x220(%rsp), %rax
cmpq 0x290(%rsp), %rax
seta %al
andb $0x1, %al
movzbl %al, %eax
andl %eax, %ecx
xorl %eax, %eax
cmpl $0x0, %ecx
movb %al, 0x7f(%rsp)
je 0x34869
movq 0x2a8(%rsp), %rax
movzbl -0x1(%rax), %eax
movq 0x220(%rsp), %rcx
movzbl -0x1(%rcx), %ecx
cmpl %ecx, %eax
sete %al
movb %al, 0x7f(%rsp)
movb 0x7f(%rsp), %al
testb $0x1, %al
jne 0x34873
jmp 0x348a0
movq 0x2a8(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x2a8(%rsp)
movq 0x220(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x220(%rsp)
jmp 0x3480b
movq 0x2a8(%rsp), %rax
movq 0x260(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x1d8(%rsp)
movq 0x238(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x238(%rsp)
movq %rax, 0x218(%rsp)
cmpl $0x1, 0x2c8(%rsp)
jne 0x3493b
movq 0x238(%rsp), %rax
movl 0x1d8(%rsp), %ecx
addq %rcx, %rax
addq $0x8, %rax
movq %rax, 0x70(%rsp)
movl 0x1d8(%rsp), %eax
movl $0xff, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, %ecx
movq 0x70(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
cmpq 0x230(%rsp), %rax
seta %al
testb $0x1, %al
jne 0x3492b
jmp 0x3493b
movl $0x0, 0x2fc(%rsp)
jmp 0x360f0
cmpl $0x2, 0x2c8(%rsp)
jne 0x349b7
movq 0x238(%rsp), %rax
movq %rax, 0x68(%rsp)
movl 0x1d8(%rsp), %eax
addl $0xf0, %eax
movl $0xff, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, %ecx
movq 0x68(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movl 0x1d8(%rsp), %ecx
addq %rcx, %rax
addq $0x2, %rax
addq $0x1, %rax
addq $0xc, %rax
addq $-0x4, %rax
cmpq 0x230(%rsp), %rax
seta %al
testb $0x1, %al
jne 0x3499e
jmp 0x349b7
movq 0x238(%rsp), %rax
addq $-0x1, %rax
movq %rax, 0x238(%rsp)
jmp 0x35ead
cmpl $0xf, 0x1d8(%rsp)
jb 0x34a3d
movl 0x1d8(%rsp), %eax
subl $0xf, %eax
movl %eax, 0x1d4(%rsp)
movq 0x218(%rsp), %rax
movb $-0x10, (%rax)
cmpl $0xff, 0x1d4(%rsp)
jl 0x34a19
movq 0x238(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x238(%rsp)
movb $-0x1, (%rax)
movl 0x1d4(%rsp), %eax
subl $0xff, %eax
movl %eax, 0x1d4(%rsp)
jmp 0x349dd
movl 0x1d4(%rsp), %eax
movb %al, %cl
movq 0x238(%rsp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x238(%rsp)
movb %cl, (%rax)
jmp 0x34a53
movl 0x1d8(%rsp), %eax
shll $0x4, %eax
movb %al, %cl
movq 0x218(%rsp), %rax
movb %cl, (%rax)
movq 0x238(%rsp), %rdi
movq 0x260(%rsp), %rsi
movq 0x238(%rsp), %rdx
movl 0x1d8(%rsp), %eax
addq %rax, %rdx
callq 0x46de0
movl 0x1d8(%rsp), %ecx
movq 0x238(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x238(%rsp)
cmpl $0x2, 0x2c8(%rsp)
jne 0x34ad7
movq 0x238(%rsp), %rax
addq $0x2, %rax
addq $0x1, %rax
addq $0xc, %rax
addq $-0x4, %rax
cmpq 0x230(%rsp), %rax
jbe 0x34ad7
movq 0x218(%rsp), %rax
movq %rax, 0x238(%rsp)
jmp 0x35ead
cmpl $0x0, 0x274(%rsp)
je 0x34b0e
movq 0x238(%rsp), %rdi
movl 0x22c(%rsp), %eax
movzwl %ax, %esi
callq 0x46e50
movq 0x238(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x238(%rsp)
jmp 0x34b45
movq 0x238(%rsp), %rdi
movq 0x2a8(%rsp), %rax
movq 0x220(%rsp), %rcx
subq %rcx, %rax
movzwl %ax, %esi
callq 0x46e50
movq 0x238(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x238(%rsp)
cmpl $0x2, 0x2c0(%rsp)
je 0x34b5d
cmpl $0x3, 0x2c0(%rsp)
jne 0x35216
movq 0x290(%rsp), %rax
cmpq 0x280(%rsp), %rax
jne 0x35216
movq 0x2a8(%rsp), %rax
movq 0x268(%rsp), %rcx
movq 0x220(%rsp), %rdx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x1c8(%rsp)
movq 0x1c8(%rsp), %rax
cmpq 0x248(%rsp), %rax
jbe 0x34bbb
movq 0x248(%rsp), %rax
movq %rax, 0x1c8(%rsp)
movq 0x2a8(%rsp), %rdx
addq $0x4, %rdx
movq 0x220(%rsp), %rcx
addq $0x4, %rcx
movq 0x1c8(%rsp), %rax
movq %rdx, 0x780(%rsp)
movq %rcx, 0x778(%rsp)
movq %rax, 0x770(%rsp)
movq 0x780(%rsp), %rax
movq %rax, 0x768(%rsp)
movq 0x780(%rsp), %rax
movq 0x770(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x34c26
jmp 0x34ca6
movq 0x778(%rsp), %rdi
callq 0x47010
movq %rax, 0x60(%rsp)
movq 0x780(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0x60(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x760(%rsp)
cmpq $0x0, 0x760(%rsp)
jne 0x34c8d
movq 0x780(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x780(%rsp)
movq 0x778(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x778(%rsp)
jmp 0x34ca6
movq 0x760(%rsp), %rdi
callq 0x47090
movl %eax, 0x78c(%rsp)
jmp 0x34eab
jmp 0x34ca8
movq 0x780(%rsp), %rax
movq 0x770(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x34ccb
jmp 0x34d78
movq 0x778(%rsp), %rdi
callq 0x47010
movq %rax, 0x58(%rsp)
movq 0x780(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0x58(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x758(%rsp)
cmpq $0x0, 0x758(%rsp)
jne 0x34d35
movq 0x780(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x780(%rsp)
movq 0x778(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x778(%rsp)
jmp 0x34ca8
movq 0x758(%rsp), %rdi
callq 0x47090
movl %eax, %ecx
movq 0x780(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x780(%rsp)
movq 0x780(%rsp), %rax
movq 0x768(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x78c(%rsp)
jmp 0x34eab
movq 0x780(%rsp), %rax
movq 0x770(%rsp), %rcx
addq $-0x3, %rcx
cmpq %rcx, %rax
jae 0x34de1
movq 0x778(%rsp), %rdi
callq 0x46ce0
movl %eax, 0x54(%rsp)
movq 0x780(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0x54(%rsp), %eax
cmpl %ecx, %eax
jne 0x34de1
movq 0x780(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x780(%rsp)
movq 0x778(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x778(%rsp)
movq 0x780(%rsp), %rax
movq 0x770(%rsp), %rcx
addq $-0x1, %rcx
cmpq %rcx, %rax
jae 0x34e51
movq 0x778(%rsp), %rdi
callq 0x470e0
movzwl %ax, %eax
movl %eax, 0x50(%rsp)
movq 0x780(%rsp), %rdi
callq 0x470e0
movw %ax, %cx
movl 0x50(%rsp), %eax
movzwl %cx, %ecx
cmpl %ecx, %eax
jne 0x34e51
movq 0x780(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x780(%rsp)
movq 0x778(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x778(%rsp)
movq 0x780(%rsp), %rax
cmpq 0x770(%rsp), %rax
jae 0x34e91
movq 0x778(%rsp), %rax
movzbl (%rax), %eax
movq 0x780(%rsp), %rcx
movzbl (%rcx), %ecx
cmpl %ecx, %eax
jne 0x34e91
movq 0x780(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x780(%rsp)
movq 0x780(%rsp), %rax
movq 0x768(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x78c(%rsp)
movl 0x78c(%rsp), %eax
movl %eax, 0x1d0(%rsp)
movl 0x1d0(%rsp), %eax
addq $0x4, %rax
addq 0x2a8(%rsp), %rax
movq %rax, 0x2a8(%rsp)
movq 0x2a8(%rsp), %rax
cmpq 0x1c8(%rsp), %rax
jne 0x35211
movq 0x1c8(%rsp), %rdx
movq 0x2e8(%rsp), %rcx
movq 0x248(%rsp), %rax
movq %rdx, 0x748(%rsp)
movq %rcx, 0x740(%rsp)
movq %rax, 0x738(%rsp)
movq 0x748(%rsp), %rax
movq %rax, 0x730(%rsp)
movq 0x748(%rsp), %rax
movq 0x738(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x34f4d
jmp 0x34fcd
movq 0x740(%rsp), %rdi
callq 0x47010
movq %rax, 0x48(%rsp)
movq 0x748(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0x48(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x728(%rsp)
cmpq $0x0, 0x728(%rsp)
jne 0x34fb4
movq 0x748(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x748(%rsp)
movq 0x740(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x740(%rsp)
jmp 0x34fcd
movq 0x728(%rsp), %rdi
callq 0x47090
movl %eax, 0x754(%rsp)
jmp 0x351d2
jmp 0x34fcf
movq 0x748(%rsp), %rax
movq 0x738(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x34ff2
jmp 0x3509f
movq 0x740(%rsp), %rdi
callq 0x47010
movq %rax, 0x40(%rsp)
movq 0x748(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0x40(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x720(%rsp)
cmpq $0x0, 0x720(%rsp)
jne 0x3505c
movq 0x748(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x748(%rsp)
movq 0x740(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x740(%rsp)
jmp 0x34fcf
movq 0x720(%rsp), %rdi
callq 0x47090
movl %eax, %ecx
movq 0x748(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x748(%rsp)
movq 0x748(%rsp), %rax
movq 0x730(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x754(%rsp)
jmp 0x351d2
movq 0x748(%rsp), %rax
movq 0x738(%rsp), %rcx
addq $-0x3, %rcx
cmpq %rcx, %rax
jae 0x35108
movq 0x740(%rsp), %rdi
callq 0x46ce0
movl %eax, 0x3c(%rsp)
movq 0x748(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0x3c(%rsp), %eax
cmpl %ecx, %eax
jne 0x35108
movq 0x748(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x748(%rsp)
movq 0x740(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x740(%rsp)
movq 0x748(%rsp), %rax
movq 0x738(%rsp), %rcx
addq $-0x1, %rcx
cmpq %rcx, %rax
jae 0x35178
movq 0x740(%rsp), %rdi
callq 0x470e0
movzwl %ax, %eax
movl %eax, 0x38(%rsp)
movq 0x748(%rsp), %rdi
callq 0x470e0
movw %ax, %cx
movl 0x38(%rsp), %eax
movzwl %cx, %ecx
cmpl %ecx, %eax
jne 0x35178
movq 0x748(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x748(%rsp)
movq 0x740(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x740(%rsp)
movq 0x748(%rsp), %rax
cmpq 0x738(%rsp), %rax
jae 0x351b8
movq 0x740(%rsp), %rax
movzbl (%rax), %eax
movq 0x748(%rsp), %rcx
movzbl (%rcx), %ecx
cmpl %ecx, %eax
jne 0x351b8
movq 0x748(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x748(%rsp)
movq 0x748(%rsp), %rax
movq 0x730(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x754(%rsp)
movl 0x754(%rsp), %eax
movl %eax, 0x1c4(%rsp)
movl 0x1c4(%rsp), %eax
addl 0x1d0(%rsp), %eax
movl %eax, 0x1d0(%rsp)
movl 0x1c4(%rsp), %ecx
movq 0x2a8(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x2a8(%rsp)
jmp 0x3552f
movq 0x2a8(%rsp), %rdx
addq $0x4, %rdx
movq 0x220(%rsp), %rcx
addq $0x4, %rcx
movq 0x248(%rsp), %rax
movq %rdx, 0x7b8(%rsp)
movq %rcx, 0x7b0(%rsp)
movq %rax, 0x7a8(%rsp)
movq 0x7b8(%rsp), %rax
movq %rax, 0x7a0(%rsp)
movq 0x7b8(%rsp), %rax
movq 0x7a8(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x35281
jmp 0x35301
movq 0x7b0(%rsp), %rdi
callq 0x47010
movq %rax, 0x30(%rsp)
movq 0x7b8(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0x30(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x798(%rsp)
cmpq $0x0, 0x798(%rsp)
jne 0x352e8
movq 0x7b8(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x7b8(%rsp)
movq 0x7b0(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x7b0(%rsp)
jmp 0x35301
movq 0x798(%rsp), %rdi
callq 0x47090
movl %eax, 0x7c0(%rsp)
jmp 0x35506
jmp 0x35303
movq 0x7b8(%rsp), %rax
movq 0x7a8(%rsp), %rcx
addq $-0x7, %rcx
cmpq %rcx, %rax
setb %al
testb $0x1, %al
jne 0x35326
jmp 0x353d3
movq 0x7b0(%rsp), %rdi
callq 0x47010
movq %rax, 0x28(%rsp)
movq 0x7b8(%rsp), %rdi
callq 0x47010
movq %rax, %rcx
movq 0x28(%rsp), %rax
xorq %rcx, %rax
movq %rax, 0x790(%rsp)
cmpq $0x0, 0x790(%rsp)
jne 0x35390
movq 0x7b8(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x7b8(%rsp)
movq 0x7b0(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x7b0(%rsp)
jmp 0x35303
movq 0x790(%rsp), %rdi
callq 0x47090
movl %eax, %ecx
movq 0x7b8(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x7b8(%rsp)
movq 0x7b8(%rsp), %rax
movq 0x7a0(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x7c0(%rsp)
jmp 0x35506
movq 0x7b8(%rsp), %rax
movq 0x7a8(%rsp), %rcx
addq $-0x3, %rcx
cmpq %rcx, %rax
jae 0x3543c
movq 0x7b0(%rsp), %rdi
callq 0x46ce0
movl %eax, 0x24(%rsp)
movq 0x7b8(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0x24(%rsp), %eax
cmpl %ecx, %eax
jne 0x3543c
movq 0x7b8(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x7b8(%rsp)
movq 0x7b0(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x7b0(%rsp)
movq 0x7b8(%rsp), %rax
movq 0x7a8(%rsp), %rcx
addq $-0x1, %rcx
cmpq %rcx, %rax
jae 0x354ac
movq 0x7b0(%rsp), %rdi
callq 0x470e0
movzwl %ax, %eax
movl %eax, 0x20(%rsp)
movq 0x7b8(%rsp), %rdi
callq 0x470e0
movw %ax, %cx
movl 0x20(%rsp), %eax
movzwl %cx, %ecx
cmpl %ecx, %eax
jne 0x354ac
movq 0x7b8(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x7b8(%rsp)
movq 0x7b0(%rsp), %rax
addq $0x2, %rax
movq %rax, 0x7b0(%rsp)
movq 0x7b8(%rsp), %rax
cmpq 0x7a8(%rsp), %rax
jae 0x354ec
movq 0x7b0(%rsp), %rax
movzbl (%rax), %eax
movq 0x7b8(%rsp), %rcx
movzbl (%rcx), %ecx
cmpl %ecx, %eax
jne 0x354ec
movq 0x7b8(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x7b8(%rsp)
movq 0x7b8(%rsp), %rax
movq 0x7a0(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x7c0(%rsp)
movl 0x7c0(%rsp), %eax
movl %eax, 0x1d0(%rsp)
movl 0x1d0(%rsp), %eax
addq $0x4, %rax
addq 0x2a8(%rsp), %rax
movq %rax, 0x2a8(%rsp)
cmpl $0x0, 0x2c8(%rsp)
je 0x356f9
movq 0x238(%rsp), %rax
addq $0x6, %rax
movq %rax, 0x18(%rsp)
movl 0x1d0(%rsp), %eax
addl $0xf0, %eax
movl $0xff, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, %ecx
movq 0x18(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
cmpq 0x230(%rsp), %rax
seta %al
testb $0x1, %al
jne 0x35583
jmp 0x356f9
cmpl $0x2, 0x2c8(%rsp)
jne 0x356e9
movq 0x230(%rsp), %rax
movq 0x238(%rsp), %rcx
subq %rcx, %rax
subl $0x1, %eax
subl $0x5, %eax
imull $0xff, %eax, %eax
addl $0xe, %eax
movl %eax, 0x1c0(%rsp)
movl 0x1d0(%rsp), %ecx
subl 0x1c0(%rsp), %ecx
movq 0x2a8(%rsp), %rax
movl %ecx, %ecx
movl %ecx, %edx
xorl %ecx, %ecx
subq %rdx, %rcx
addq %rcx, %rax
movq %rax, 0x2a8(%rsp)
movl 0x1c0(%rsp), %eax
movl %eax, 0x1d0(%rsp)
movq 0x2a8(%rsp), %rax
cmpq 0x210(%rsp), %rax
setbe %al
testb $0x1, %al
jne 0x3560e
jmp 0x356e7
movq 0x2a8(%rsp), %rax
movq %rax, 0x1b8(%rsp)
movq 0x1b8(%rsp), %rax
cmpq 0x210(%rsp), %rax
ja 0x356e5
movq 0x1b8(%rsp), %rcx
movl 0x2c4(%rsp), %eax
movq %rcx, 0x628(%rsp)
movl %eax, 0x624(%rsp)
cmpl $0x3, 0x624(%rsp)
je 0x35681
movq 0x628(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x624(%rsp), %esi
callq 0x46f60
movl %eax, 0x630(%rsp)
jmp 0x356a3
movq 0x628(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x624(%rsp), %esi
callq 0x47020
movl %eax, 0x630(%rsp)
movl 0x630(%rsp), %eax
movl %eax, 0x1b4(%rsp)
movl 0x1b4(%rsp), %edi
movq 0x2f0(%rsp), %rsi
movl 0x2c4(%rsp), %edx
callq 0x46eb0
movq 0x1b8(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x1b8(%rsp)
jmp 0x3561e
jmp 0x356e7
jmp 0x356f9
movl $0x0, 0x2fc(%rsp)
jmp 0x360f0
cmpl $0xf, 0x1d0(%rsp)
jb 0x357d6
movq 0x218(%rsp), %rax
movzbl (%rax), %ecx
addl $0xf, %ecx
movb %cl, (%rax)
movl 0x1d0(%rsp), %eax
subl $0xf, %eax
movl %eax, 0x1d0(%rsp)
movq 0x238(%rsp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x46f40
cmpl $0x3fc, 0x1d0(%rsp) # imm = 0x3FC
jb 0x35782
movq 0x238(%rsp), %rax
addq $0x4, %rax
movq %rax, 0x238(%rsp)
movq 0x238(%rsp), %rdi
movl $0xffffffff, %esi       # imm = 0xFFFFFFFF
callq 0x46f40
movl 0x1d0(%rsp), %eax
subl $0x3fc, %eax            # imm = 0x3FC
movl %eax, 0x1d0(%rsp)
jmp 0x3573a
movl 0x1d0(%rsp), %eax
movl $0xff, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, %ecx
movq 0x238(%rsp), %rax
movl %ecx, %ecx
addq %rcx, %rax
movq %rax, 0x238(%rsp)
movl 0x1d0(%rsp), %eax
movl $0xff, %ecx
xorl %edx, %edx
divl %ecx
movb %dl, %cl
movq 0x238(%rsp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x238(%rsp)
movb %cl, (%rax)
jmp 0x357ef
movl 0x1d0(%rsp), %eax
movzbl %al, %edx
movq 0x218(%rsp), %rax
movzbl (%rax), %ecx
addl %edx, %ecx
movb %cl, (%rax)
movq 0x2a8(%rsp), %rax
movq %rax, 0x260(%rsp)
movq 0x2a8(%rsp), %rax
cmpq 0x250(%rsp), %rax
jb 0x35816
jmp 0x35ead
movq 0x2a8(%rsp), %rsi
addq $-0x2, %rsi
movq 0x2f0(%rsp), %rdx
movl 0x2c4(%rsp), %ecx
movq 0x298(%rsp), %rax
movq %rsi, 0x520(%rsp)
movq %rdx, 0x518(%rsp)
movl %ecx, 0x514(%rsp)
movq %rax, 0x508(%rsp)
movq 0x520(%rsp), %rcx
movl 0x514(%rsp), %eax
movq %rcx, 0x568(%rsp)
movl %eax, 0x564(%rsp)
cmpl $0x3, 0x564(%rsp)
je 0x358a5
movq 0x568(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x564(%rsp), %esi
callq 0x46f60
movl %eax, 0x570(%rsp)
jmp 0x358c7
movq 0x568(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x564(%rsp), %esi
callq 0x47020
movl %eax, 0x570(%rsp)
movl 0x570(%rsp), %eax
movl %eax, 0x504(%rsp)
movq 0x520(%rsp), %rdi
movl 0x504(%rsp), %esi
movq 0x518(%rsp), %rdx
movl 0x514(%rsp), %ecx
movq 0x508(%rsp), %r8
callq 0x46c30
cmpl $0x1, 0x2c4(%rsp)
jne 0x35b4e
movq 0x2a8(%rsp), %rsi
movq 0x2f0(%rsp), %rdx
movl 0x2c4(%rsp), %ecx
movq 0x298(%rsp), %rax
movq %rsi, 0x818(%rsp)
movq %rdx, 0x810(%rsp)
movl %ecx, 0x80c(%rsp)
movq %rax, 0x800(%rsp)
movq 0x818(%rsp), %rcx
movl 0x80c(%rsp), %eax
movq %rcx, 0x828(%rsp)
movl %eax, 0x824(%rsp)
cmpl $0x3, 0x824(%rsp)
je 0x35999
movq 0x828(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x824(%rsp), %esi
callq 0x46f60
movl %eax, 0x834(%rsp)
jmp 0x359bb
movq 0x828(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x824(%rsp), %esi
callq 0x47020
movl %eax, 0x834(%rsp)
movl 0x834(%rsp), %eax
movl %eax, 0x7fc(%rsp)
movl 0x7fc(%rsp), %edi
movq 0x810(%rsp), %rsi
movl 0x80c(%rsp), %edx
movq 0x800(%rsp), %rcx
callq 0x46b90
movq %rax, 0x220(%rsp)
movq 0x2a8(%rsp), %rsi
movq 0x2f0(%rsp), %rdx
movl 0x2c4(%rsp), %ecx
movq 0x298(%rsp), %rax
movq %rsi, 0x4f8(%rsp)
movq %rdx, 0x4f0(%rsp)
movl %ecx, 0x4ec(%rsp)
movq %rax, 0x4e0(%rsp)
movq 0x4f8(%rsp), %rcx
movl 0x4ec(%rsp), %eax
movq %rcx, 0x578(%rsp)
movl %eax, 0x574(%rsp)
cmpl $0x3, 0x574(%rsp)
je 0x35a7f
movq 0x578(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x574(%rsp), %esi
callq 0x46f60
movl %eax, 0x580(%rsp)
jmp 0x35aa1
movq 0x578(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x574(%rsp), %esi
callq 0x47020
movl %eax, 0x580(%rsp)
movl 0x580(%rsp), %eax
movl %eax, 0x4dc(%rsp)
movq 0x4f8(%rsp), %rdi
movl 0x4dc(%rsp), %esi
movq 0x4f0(%rsp), %rdx
movl 0x4ec(%rsp), %ecx
movq 0x4e0(%rsp), %r8
callq 0x46c30
movq 0x220(%rsp), %rax
addq $0xffff, %rax           # imm = 0xFFFF
cmpq 0x2a8(%rsp), %rax
jb 0x35b49
movq 0x220(%rsp), %rdi
callq 0x46ce0
movl %eax, 0x14(%rsp)
movq 0x2a8(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0x14(%rsp), %eax
cmpl %ecx, %eax
jne 0x35b49
movq 0x238(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x238(%rsp)
movq %rax, 0x218(%rsp)
movq 0x218(%rsp), %rax
movb $0x0, (%rax)
jmp 0x34a96
jmp 0x35e1f
movq 0x2a8(%rsp), %rcx
movl 0x2c4(%rsp), %eax
movq %rcx, 0x648(%rsp)
movl %eax, 0x644(%rsp)
cmpl $0x3, 0x644(%rsp)
je 0x35b9b
movq 0x648(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x644(%rsp), %esi
callq 0x46f60
movl %eax, 0x650(%rsp)
jmp 0x35bbd
movq 0x648(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x644(%rsp), %esi
callq 0x47020
movl %eax, 0x650(%rsp)
movl 0x650(%rsp), %eax
movl %eax, 0x1b0(%rsp)
movq 0x2a8(%rsp), %rax
movq 0x298(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x1ac(%rsp)
movl 0x1b0(%rsp), %edi
movq 0x2f0(%rsp), %rsi
movl 0x2c4(%rsp), %edx
callq 0x46cf0
movl %eax, 0x1a8(%rsp)
cmpl $0x3, 0x2c0(%rsp)
jne 0x35cb5
movl 0x1a8(%rsp), %eax
cmpl 0x2a4(%rsp), %eax
jae 0x35c86
movl 0x1b0(%rsp), %edi
movq 0x288(%rsp), %rsi
movl $0x2, %edx
callq 0x46cf0
movl %eax, 0x1a8(%rsp)
movq 0x240(%rsp), %rax
movl 0x1a8(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x220(%rsp)
movq 0x280(%rsp), %rax
movq %rax, 0x290(%rsp)
movl 0x278(%rsp), %eax
addl 0x1a8(%rsp), %eax
movl %eax, 0x1a8(%rsp)
jmp 0x35cb0
movq 0x298(%rsp), %rax
movl 0x1a8(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x220(%rsp)
movq 0x2e8(%rsp), %rax
movq %rax, 0x290(%rsp)
jmp 0x35d43
cmpl $0x2, 0x2c0(%rsp)
jne 0x35d27
movl 0x1a8(%rsp), %eax
cmpl 0x2a4(%rsp), %eax
jae 0x35cfb
movq 0x240(%rsp), %rax
movl 0x1a8(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x220(%rsp)
movq 0x280(%rsp), %rax
movq %rax, 0x290(%rsp)
jmp 0x35d25
movq 0x298(%rsp), %rax
movl 0x1a8(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x220(%rsp)
movq 0x2e8(%rsp), %rax
movq %rax, 0x290(%rsp)
jmp 0x35d41
movq 0x298(%rsp), %rax
movl 0x1a8(%rsp), %ecx
addq %rcx, %rax
movq %rax, 0x220(%rsp)
jmp 0x35d43
movl 0x1ac(%rsp), %edi
movl 0x1b0(%rsp), %esi
movq 0x2f0(%rsp), %rdx
movl 0x2c4(%rsp), %ecx
callq 0x46d60
cmpl $0x1, 0x2bc(%rsp)
jne 0x35d84
movl 0x1a8(%rsp), %eax
cmpl 0x270(%rsp), %eax
jae 0x35d86
jmp 0x35e1d
jmp 0x35d86
cmpl $0x3, 0x2c4(%rsp)
jne 0x35d92
jmp 0x35da7
movl 0x1a8(%rsp), %eax
addl $0xffff, %eax           # imm = 0xFFFF
cmpl 0x1ac(%rsp), %eax
jb 0x35e1d
movq 0x220(%rsp), %rdi
callq 0x46ce0
movl %eax, 0x10(%rsp)
movq 0x2a8(%rsp), %rdi
callq 0x46ce0
movl %eax, %ecx
movl 0x10(%rsp), %eax
cmpl %ecx, %eax
jne 0x35e1d
movq 0x238(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x238(%rsp)
movq %rax, 0x218(%rsp)
movq 0x218(%rsp), %rax
movb $0x0, (%rax)
cmpl $0x0, 0x274(%rsp)
je 0x35e18
movl 0x1ac(%rsp), %eax
subl 0x1a8(%rsp), %eax
movl %eax, 0x22c(%rsp)
jmp 0x34a96
jmp 0x35e1f
movq 0x2a8(%rsp), %rcx
addq $0x1, %rcx
movq %rcx, 0x2a8(%rsp)
movl 0x2c4(%rsp), %eax
movq %rcx, 0x638(%rsp)
movl %eax, 0x634(%rsp)
cmpl $0x3, 0x634(%rsp)
je 0x35e78
movq 0x638(%rsp), %rdi
callq 0x47010
movq %rax, %rdi
movl 0x634(%rsp), %esi
callq 0x46f60
movl %eax, 0x640(%rsp)
jmp 0x35e9a
movq 0x638(%rsp), %rdi
callq 0x46ce0
movl %eax, %edi
movl 0x634(%rsp), %esi
callq 0x47020
movl %eax, 0x640(%rsp)
movl 0x640(%rsp), %eax
movl %eax, 0x228(%rsp)
jmp 0x342c0
movq 0x258(%rsp), %rax
movq 0x260(%rsp), %rcx
subq %rcx, %rax
movq %rax, 0x1a0(%rsp)
cmpl $0x0, 0x2c8(%rsp)
je 0x35f89
movq 0x238(%rsp), %rax
addq 0x1a0(%rsp), %rax
addq $0x1, %rax
movq %rax, 0x8(%rsp)
movq 0x1a0(%rsp), %rax
addq $0xff, %rax
subq $0xf, %rax
movl $0xff, %ecx
xorl %edx, %edx
divq %rcx
movq %rax, %rcx
movq 0x8(%rsp), %rax
addq %rcx, %rax
cmpq 0x230(%rsp), %rax
jbe 0x35f89
cmpl $0x2, 0x2c8(%rsp)
jne 0x35f79
movq 0x230(%rsp), %rax
movq 0x238(%rsp), %rcx
subq %rcx, %rax
subq $0x1, %rax
movq %rax, 0x1a0(%rsp)
movq 0x1a0(%rsp), %rax
addq $0xf0, %rax
movl $0xff, %ecx
xorl %edx, %edx
divq %rcx
movq %rax, %rcx
movq 0x1a0(%rsp), %rax
subq %rcx, %rax
movq %rax, 0x1a0(%rsp)
jmp 0x35f89
movl $0x0, 0x2fc(%rsp)
jmp 0x360f0
cmpq $0xf, 0x1a0(%rsp)
jb 0x3602b
movq 0x1a0(%rsp), %rax
subq $0xf, %rax
movq %rax, 0x198(%rsp)
movq 0x238(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x238(%rsp)
movb $-0x10, (%rax)
cmpq $0xff, 0x198(%rsp)
jb 0x36006
movq 0x238(%rsp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, 0x238(%rsp)
movb $-0x1, (%rax)
movq 0x198(%rsp), %rax
subq $0xff, %rax
movq %rax, 0x198(%rsp)
jmp 0x35fc6
movq 0x198(%rsp), %rax
movb %al, %cl
movq 0x238(%rsp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x238(%rsp)
movb %cl, (%rax)
jmp 0x36052
movq 0x1a0(%rsp), %rax
shlq $0x4, %rax
movb %al, %cl
movq 0x238(%rsp), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x238(%rsp)
movb %cl, (%rax)
movq 0x238(%rsp), %rdi
movq 0x260(%rsp), %rsi
movq 0x1a0(%rsp), %rdx
callq 0x1140
movq 0x260(%rsp), %rax
addq 0x1a0(%rsp), %rax
movq %rax, 0x2a8(%rsp)
movq 0x1a0(%rsp), %rax
addq 0x238(%rsp), %rax
movq %rax, 0x238(%rsp)
cmpl $0x2, 0x2c8(%rsp)
jne 0x360c8
movq 0x2a8(%rsp), %rax
movq 0x2e8(%rsp), %rcx
subq %rcx, %rax
movl %eax, %ecx
movq 0x2d0(%rsp), %rax
movl %ecx, (%rax)
movq 0x238(%rsp), %rax
movq 0x2e0(%rsp), %rcx
subq %rcx, %rax
movl %eax, 0x2b4(%rsp)
movl 0x2b4(%rsp), %eax
movl %eax, 0x2fc(%rsp)
movl 0x2fc(%rsp), %eax
movl %eax, 0x16c(%rsp)
movq 0x188(%rsp), %rcx
movq 0x170(%rsp), %rax
movq %rcx, 0x4008(%rax)
movl 0x17c(%rsp), %ecx
movq 0x170(%rsp), %rax
movl %ecx, 0x4018(%rax)
movl 0x16c(%rsp), %eax
addq $0x838, %rsp            # imm = 0x838
retq
nopl (%rax)