// File: /workspace/github_cpp_makefile_star2_O1/ivanzamanov[P]kmeans/src/common/stem.cpp
// Function: stem(char*, int, int)
int stem(char * p, int i, int j)
{  b = p; k = j; k0 = i; /* copy the parameters into statics */
   if (k <= k0+1) return k; /*-DEPARTURE-*/

   /* With this line, strings of length 1 or 2 don't go through the
      stemming process, although no mention is made of this in the
      published algorithm. Remove the line to match the published
      algorithm. */

   step1ab(); step1c(); step2(); step3(); step4(); step5();
   return k;
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
movl %edx, %ebp
movq %rdi, 0x2cc0(%rip)      # 0x4088
movl %edx, 0x2cc2(%rip)      # 0x4090
movl %esi, 0x2cc0(%rip)      # 0x4094
incl %esi
cmpl %edx, %esi
jge 0x1aa1
movq %rdi, %rbx
movslq %ebp, %r14
cmpb $0x73, (%rdi,%r14)
jne 0x1431
leaq 0xcfe(%rip), %rdi       # 0x20f0
callq 0x1bd5
testl %eax, %eax
je 0x1400
addl $-0x2, %ebp
jmp 0x142b
leaq 0xcef(%rip), %rdi       # 0x20f6
callq 0x1bd5
testl %eax, %eax
je 0x1421
movslq 0x2c81(%rip), %rax      # 0x4098
movb $0x69, 0x1(%rbx,%rax)
leal 0x1(%rax), %ebp
jmp 0x142b
cmpb $0x73, -0x1(%rbx,%r14)
je 0x1431
decl %ebp
movl %ebp, 0x2c5f(%rip)      # 0x4090
leaq 0xcc3(%rip), %rdi       # 0x20fb
callq 0x1bd5
testl %eax, %eax
je 0x145b
callq 0x1c3a
testl %eax, %eax
jle 0x1512
movl 0x2c3c(%rip), %ebp      # 0x4090
decl %ebp
jmp 0x150c
leaq 0xc9e(%rip), %rdi       # 0x2100
callq 0x1bd5
testl %eax, %eax
jne 0x147f
leaq 0xc92(%rip), %rdi       # 0x2104
callq 0x1bd5
testl %eax, %eax
je 0x1512
callq 0x1ccc
testl %eax, %eax
je 0x1512
movl 0x2c06(%rip), %ebp      # 0x4098
movl %ebp, 0x2bf8(%rip)      # 0x4090
leaq 0xc6a(%rip), %rdi       # 0x2109
callq 0x1bd5
testl %eax, %eax
je 0x14bd
movslq 0x2be9(%rip), %rax      # 0x4098
movb $0x65, 0x3(%rbx,%rax)
movw $0x7461, 0x1(%rbx,%rax) # imm = 0x7461
jmp 0x1509
leaq 0xc4e(%rip), %rdi       # 0x2112
callq 0x1bd5
testl %eax, %eax
je 0x14e2
movslq 0x2bc4(%rip), %rax      # 0x4098
movb $0x65, 0x3(%rbx,%rax)
movw $0x6c62, 0x1(%rbx,%rax) # imm = 0x6C62
jmp 0x1509
leaq 0xc32(%rip), %rdi       # 0x211b
callq 0x1bd5
testl %eax, %eax
je 0x1af6
movslq 0x2b9b(%rip), %rax      # 0x4098
movb $0x65, 0x3(%rbx,%rax)
movw $0x7a69, 0x1(%rbx,%rax) # imm = 0x7A69
leal 0x3(%rax), %ebp
movl %ebp, 0x2b7e(%rip)      # 0x4090
leaq 0xc0b(%rip), %rdi       # 0x2124
callq 0x1bd5
testl %eax, %eax
je 0x1536
callq 0x1ccc
testl %eax, %eax
je 0x1536
movslq 0x2b5e(%rip), %rax      # 0x4090
movb $0x69, (%rbx,%rax)
movslq 0x2b53(%rip), %rax      # 0x4090
movzbl -0x1(%rbx,%rax), %eax
addl $-0x61, %eax
cmpl $0x13, %eax
ja 0x17dd
leaq 0xae3(%rip), %rcx       # 0x2038
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0xbc2(%rip), %rdi       # 0x2127
callq 0x1bd5
testl %eax, %eax
jne 0x15db
leaq 0xbbb(%rip), %rdi       # 0x2130
callq 0x1bd5
testl %eax, %eax
je 0x17dd
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x2b02(%rip), %rax      # 0x4098
movl $0x6e6f6974, 0x1(%rbx,%rax) # imm = 0x6E6F6974
jmp 0x17a4
leaq 0xbd8(%rip), %rdi       # 0x2182
callq 0x1bd5
testl %eax, %eax
jne 0x16f3
leaq 0xbcd(%rip), %rdi       # 0x218b
callq 0x1bd5
testl %eax, %eax
jne 0x15db
leaq 0xbc4(%rip), %rdi       # 0x2192
callq 0x1bd5
testl %eax, %eax
je 0x17dd
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x2aa9(%rip), %rax      # 0x4098
movb $0x65, 0x3(%rbx,%rax)
movw $0x7461, 0x1(%rbx,%rax) # imm = 0x7461
jmp 0x1777
leaq 0xb31(%rip), %rdi       # 0x2138
callq 0x1bd5
testl %eax, %eax
je 0x177c
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x2a70(%rip), %rax      # 0x4098
movl $0x65636e65, 0x1(%rbx,%rax) # imm = 0x65636E65
jmp 0x17a4
leaq 0xb5c(%rip), %rdi       # 0x2198
callq 0x1bd5
testl %eax, %eax
jne 0x17bd
leaq 0xb4f(%rip), %rdi       # 0x219f
callq 0x1bd5
testl %eax, %eax
jne 0x16ba
leaq 0xb4d(%rip), %rdi       # 0x21ad
callq 0x1bd5
testl %eax, %eax
je 0x1b32
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x2a17(%rip), %rax      # 0x4098
movb $0x6c, 0x3(%rbx,%rax)
movw $0x7566, 0x1(%rbx,%rax) # imm = 0x7566
jmp 0x1777
leaq 0xb2b(%rip), %rdi       # 0x21c4
callq 0x1bd5
testl %eax, %eax
jne 0x17bd
leaq 0xb1e(%rip), %rdi       # 0x21cb
callq 0x1bd5
testl %eax, %eax
je 0x1aa8
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x29ca(%rip), %rax      # 0x4098
movb $0x65, 0x3(%rbx,%rax)
movw $0x7669, 0x1(%rbx,%rax) # imm = 0x7669
jmp 0x1777
leaq 0xa6a(%rip), %rdi       # 0x2150
callq 0x1bd5
testl %eax, %eax
je 0x17dd
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x2991(%rip), %rax      # 0x4098
movb $0x65, 0x3(%rbx,%rax)
movw $0x7a69, 0x1(%rbx,%rax) # imm = 0x7A69
jmp 0x1777
leaq 0xabe(%rip), %rdi       # 0x21da
callq 0x1bd5
testl %eax, %eax
je 0x17dd
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x295b(%rip), %rax      # 0x4098
movb $0x67, 0x3(%rbx,%rax)
movw $0x6f6c, 0x1(%rbx,%rax) # imm = 0x6F6C
jmp 0x1777
leaq 0xa04(%rip), %rdi       # 0x2156
callq 0x1bd5
testl %eax, %eax
je 0x17a9
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x292d(%rip), %rax      # 0x4098
movb $0x65, 0x3(%rbx,%rax)
movw $0x6c62, 0x1(%rbx,%rax) # imm = 0x6C62
addl $0x3, %eax
jmp 0x17d7
leaq 0x9c1(%rip), %rdi       # 0x2144
callq 0x1bd5
testl %eax, %eax
je 0x17dd
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x28fc(%rip), %rax      # 0x4098
movl $0x65636e61, 0x1(%rbx,%rax) # imm = 0x65636E61
addl $0x4, %eax
jmp 0x17d7
leaq 0x9ab(%rip), %rdi       # 0x215b
callq 0x1bd5
testl %eax, %eax
je 0x1ac1
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x28cb(%rip), %rax      # 0x4098
movw $0x6c61, 0x1(%rbx,%rax) # imm = 0x6C61
addl $0x2, %eax
movl %eax, 0x28b3(%rip)      # 0x4090
movq 0x28a4(%rip), %r14      # 0x4088
movslq 0x28a5(%rip), %rax      # 0x4090
movzbl (%r14,%rax), %eax
cmpl $0x6b, %eax
jg 0x1818
cmpl $0x65, %eax
je 0x182f
cmpl $0x69, %eax
jne 0x18cb
leaq 0x9f4(%rip), %rdi       # 0x21fe
callq 0x1bd5
testl %eax, %eax
jne 0x1889
jmp 0x18cb
cmpl $0x6c, %eax
je 0x1879
cmpl $0x73, %eax
jne 0x18cb
leaq 0x9de(%rip), %rdi       # 0x220b
jmp 0x18ad
leaq 0x9af(%rip), %rdi       # 0x21e5
callq 0x1bd5
testl %eax, %eax
jne 0x1889
leaq 0x9aa(%rip), %rdi       # 0x21f0
callq 0x1bd5
testl %eax, %eax
jne 0x18b6
leaq 0x9a1(%rip), %rdi       # 0x21f7
callq 0x1bd5
testl %eax, %eax
je 0x18cb
callq 0x1c3a
testl %eax, %eax
jle 0x18cb
movslq 0x2829(%rip), %rax      # 0x4098
movw $0x6c61, 0x1(%r14,%rax) # imm = 0x6C61
jmp 0x18a1
leaq 0x985(%rip), %rdi       # 0x2205
callq 0x1bd5
testl %eax, %eax
je 0x18a6
callq 0x1c3a
testl %eax, %eax
jle 0x18cb
movslq 0x27ff(%rip), %rax      # 0x4098
movw $0x6369, 0x1(%r14,%rax) # imm = 0x6369
addl $0x2, %eax
jmp 0x18c5
leaq 0x909(%rip), %rdi       # 0x21b6
callq 0x1bd5
testl %eax, %eax
je 0x18cb
callq 0x1c3a
testl %eax, %eax
jle 0x18cb
movl 0x27d3(%rip), %eax      # 0x4098
movl %eax, 0x27c5(%rip)      # 0x4090
movslq 0x27be(%rip), %rax      # 0x4090
movzbl -0x1(%r14,%rax), %eax
addl $-0x61, %eax
cmpl $0x19, %eax
ja 0x1a26
leaq 0x79d(%rip), %rcx       # 0x2088
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x866(%rip), %rdi       # 0x2161
jmp 0x1a07
leaq 0x8a1(%rip), %rdi       # 0x21a8
jmp 0x1a07
leaq 0x8fe(%rip), %rdi       # 0x2211
jmp 0x1a07
leaq 0x902(%rip), %rdi       # 0x2221
callq 0x1bd5
testl %eax, %eax
jne 0x1a10
leaq 0x8f3(%rip), %rdi       # 0x2226
callq 0x1bd5
testl %eax, %eax
jne 0x1a10
leaq 0x8e6(%rip), %rdi       # 0x222d
callq 0x1bd5
testl %eax, %eax
jne 0x1a10
leaq 0x811(%rip), %rdi       # 0x216c
jmp 0x1a07
leaq 0x7b8(%rip), %rdi       # 0x211f
jmp 0x1a07
leaq 0x7d7(%rip), %rdi       # 0x214a
callq 0x1bd5
testl %eax, %eax
jne 0x1a10
leaq 0x7b7(%rip), %rdi       # 0x213e
jmp 0x1a07
leaq 0x8a3(%rip), %rdi       # 0x2233
callq 0x1bd5
movl 0x26fd(%rip), %ecx      # 0x4098
testl %ecx, %ecx
setns %dl
andb %al, %dl
cmpb $0x1, %dl
jne 0x19b3
movl %ecx, %eax
movb (%r14,%rax), %al
addb $-0x73, %al
cmpb $0x2, %al
jb 0x1a10
leaq 0x87e(%rip), %rdi       # 0x2238
jmp 0x1a07
leaq 0x879(%rip), %rdi       # 0x223c
jmp 0x1a07
leaq 0x820(%rip), %rdi       # 0x21ec
jmp 0x1a07
leaq 0x840(%rip), %rdi       # 0x2215
callq 0x1bd5
testl %eax, %eax
jne 0x1a10
leaq 0x836(%rip), %rdi       # 0x221b
jmp 0x1a07
leaq 0x78f(%rip), %rdi       # 0x217d
jmp 0x1a07
leaq 0x716(%rip), %rdi       # 0x210d
callq 0x1bd5
testl %eax, %eax
jne 0x1a10
leaq 0x83a(%rip), %rdi       # 0x2241
callq 0x1bd5
testl %eax, %eax
je 0x1a26
callq 0x1c3a
cmpl $0x2, %eax
jl 0x1a26
movl 0x2678(%rip), %eax      # 0x4098
movl %eax, 0x266a(%rip)      # 0x4090
movslq 0x2663(%rip), %rbx      # 0x4090
movl %ebx, 0x2665(%rip)      # 0x4098
cmpb $0x65, (%r14,%rbx)
jne 0x1a5d
callq 0x1c3a
cmpl $0x1, %eax
jle 0x1a4f
leal -0x1(%rbx), %eax
movl %eax, 0x2643(%rip)      # 0x4090
jmp 0x1a5d
jne 0x1a5d
leal -0x1(%rbx), %edi
callq 0x1d25
testl %eax, %eax
je 0x1a44
movl 0x262d(%rip), %ebx      # 0x4090
movslq %ebx, %rax
movb (%r14,%rax), %cl
cmpb $0x6c, %cl
jne 0x1a9b
cmpl %ebx, 0x261f(%rip)      # 0x4094
jge 0x1a9b
cmpb -0x1(%r14,%rax), %cl
jne 0x1a9b
movl %ebx, %edi
callq 0x1d7e
testl %eax, %eax
je 0x1a9b
callq 0x1c3a
cmpl $0x2, %eax
jl 0x1a9b
decl %ebx
movl %ebx, 0x25f5(%rip)      # 0x4090
movl 0x25ef(%rip), %ebp      # 0x4090
movl %ebp, %eax
popq %rbx
popq %r14
popq %rbp
retq
leaq 0x723(%rip), %rdi       # 0x21d2
callq 0x1bd5
testl %eax, %eax
jne 0x175b
jmp 0x17dd
leaq 0x69d(%rip), %rdi       # 0x2165
callq 0x1bd5
testl %eax, %eax
je 0x1b3b
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x25b3(%rip), %rax      # 0x4098
movb $0x74, 0x3(%rbx,%rax)
movw $0x6e65, 0x1(%rbx,%rax) # imm = 0x6E65
jmp 0x1777
movl %ebp, %edi
callq 0x1d07
testl %eax, %eax
je 0x1b6b
movslq %ebp, %rax
leaq -0x1(%rax), %rcx
movl %ecx, 0x2582(%rip)      # 0x4090
movzbl -0x1(%rbx,%rax), %eax
addl $-0x6c, %eax
cmpl $0xe, %eax
ja 0x1512
movl $0x4081, %ecx           # imm = 0x4081
btl %eax, %ecx
jb 0x150c
jmp 0x1512
leaq 0x682(%rip), %rdi       # 0x21bb
jmp 0x1ba3
leaq 0x62f(%rip), %rdi       # 0x2171
callq 0x1bd5
testl %eax, %eax
je 0x1b9c
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x2539(%rip), %rax      # 0x4098
movb $0x65, 0x1(%rbx,%rax)
incl %eax
jmp 0x17d7
callq 0x1c3a
cmpl $0x1, %eax
jne 0x1512
movl %ebp, %edi
callq 0x1d25
testl %eax, %eax
je 0x1512
movslq 0x2509(%rip), %rax      # 0x4098
movb $0x65, 0x1(%rbx,%rax)
leal 0x1(%rax), %ebp
jmp 0x150c
leaq 0x5d3(%rip), %rdi       # 0x2176
callq 0x1bd5
testl %eax, %eax
je 0x17dd
callq 0x1c3a
testl %eax, %eax
jle 0x17dd
movslq 0x24d4(%rip), %rax      # 0x4098
movb $0x73, 0x3(%rbx,%rax)
movw $0x756f, 0x1(%rbx,%rax) # imm = 0x756F
jmp 0x1777