// File: Silica[P]PSL/./PSL/pstring.h
// Function: PSL::variable::string::setint(int, unsigned long)
void setint(int i, size_t c = 0)
	{
		char *b = buf->buffer();
		if (i < 0)
		{
			b[c++] = MINUS;
			i = -i;
		}
		#define C(n) if (i >= n)b[c++] = (char)(i/n%10+ZERO);
		C(1000000000)
		C(100000000)
		C(10000000)
		C(1000000)
		C(100000)
		C(10000)
		C(1000)
		C(100)
		C(10)
		#undef C
		b[c++] = (char)(i%10 + ZERO);
		buf->setlen(c);
	}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x30, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq (%rax), %rdi
callq 0x13b70
movq %rax, -0x20(%rbp)
cmpl $0x0, -0xc(%rbp)
jge 0x137ec
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rdx
addq $0x1, %rdx
movq %rdx, -0x18(%rbp)
movb $0x2d, (%rax,%rcx)
xorl %eax, %eax
subl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
cmpl $0x3b9aca00, -0xc(%rbp) # imm = 0x3B9ACA00
jl 0x13821
movl -0xc(%rbp), %eax
movl $0x3b9aca00, %ecx       # imm = 0x3B9ACA00
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
addl $0x30, %edx
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, -0x18(%rbp)
movb %dl, (%rax,%rcx)
cmpl $0x5f5e100, -0xc(%rbp)  # imm = 0x5F5E100
jl 0x13856
movl -0xc(%rbp), %eax
movl $0x5f5e100, %ecx        # imm = 0x5F5E100
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
addl $0x30, %edx
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, -0x18(%rbp)
movb %dl, (%rax,%rcx)
cmpl $0x989680, -0xc(%rbp)   # imm = 0x989680
jl 0x1388b
movl -0xc(%rbp), %eax
movl $0x989680, %ecx         # imm = 0x989680
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
addl $0x30, %edx
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, -0x18(%rbp)
movb %dl, (%rax,%rcx)
cmpl $0xf4240, -0xc(%rbp)    # imm = 0xF4240
jl 0x138c0
movl -0xc(%rbp), %eax
movl $0xf4240, %ecx          # imm = 0xF4240
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
addl $0x30, %edx
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, -0x18(%rbp)
movb %dl, (%rax,%rcx)
cmpl $0x186a0, -0xc(%rbp)    # imm = 0x186A0
jl 0x138f5
movl -0xc(%rbp), %eax
movl $0x186a0, %ecx          # imm = 0x186A0
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
addl $0x30, %edx
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, -0x18(%rbp)
movb %dl, (%rax,%rcx)
cmpl $0x2710, -0xc(%rbp)     # imm = 0x2710
jl 0x1392a
movl -0xc(%rbp), %eax
movl $0x2710, %ecx           # imm = 0x2710
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
addl $0x30, %edx
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, -0x18(%rbp)
movb %dl, (%rax,%rcx)
cmpl $0x3e8, -0xc(%rbp)      # imm = 0x3E8
jl 0x1395f
movl -0xc(%rbp), %eax
movl $0x3e8, %ecx            # imm = 0x3E8
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
addl $0x30, %edx
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, -0x18(%rbp)
movb %dl, (%rax,%rcx)
cmpl $0x64, -0xc(%rbp)
jl 0x13991
movl -0xc(%rbp), %eax
movl $0x64, %ecx
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
addl $0x30, %edx
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, -0x18(%rbp)
movb %dl, (%rax,%rcx)
cmpl $0xa, -0xc(%rbp)
jl 0x139c3
movl -0xc(%rbp), %eax
movl $0xa, %ecx
cltd
idivl %ecx
movl $0xa, %ecx
cltd
idivl %ecx
addl $0x30, %edx
movq -0x20(%rbp), %rax
movq -0x18(%rbp), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, -0x18(%rbp)
movb %dl, (%rax,%rcx)
movl -0xc(%rbp), %eax
movl $0xa, %ecx
cltd
idivl %ecx
movq -0x28(%rbp), %rax
addl $0x30, %edx
movb %dl, %sil
movq -0x20(%rbp), %rcx
movq -0x18(%rbp), %rdx
movq %rdx, %rdi
addq $0x1, %rdi
movq %rdi, -0x18(%rbp)
movb %sil, (%rcx,%rdx)
movq (%rax), %rdi
movq -0x18(%rbp), %rsi
callq 0x13b90
addq $0x30, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)
nopl (%rax,%rax)