// File: /workspace/github_c_makefile_star2_O0/loversmile[P]sugarcrm/sugar_stdsoap2.c
// Function: soap_putsizesoffsets
SOAP_FMAC1
char *
SOAP_FMAC2
soap_putsizesoffsets(struct soap *soap, const char *type, const int *size, const int *offset, int dim)
{ int i;
  if (!type)
    return NULL;
  if (soap->version == 2)
  { sprintf(soap->type, "%s[%d", type, size[0]);
    for (i = 1; i < dim; i++)
      sprintf(soap->type + strlen(soap->type), " %d", size[i]);
  }
  else
  { if (offset)
    { sprintf(soap->type, "%s[%d", type, size[0] + offset[0]);
      for (i = 1; i < dim; i++)
        sprintf(soap->type + strlen(soap->type), ",%d", size[i] + offset[i]);
    }
    else
    { sprintf(soap->type, "%s[%d", type, size[0]);
      for (i = 1; i < dim; i++)
        sprintf(soap->type + strlen(soap->type), ",%d", size[i]);
    }
    strcat(soap->type, "]");
  }
  return soap->type;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movq %rdx, -0x20(%rbp)
movq %rcx, -0x28(%rbp)
movl %r8d, -0x2c(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0x54690
movq $0x0, -0x8(%rbp)
jmp 0x5485c
movq -0x10(%rbp), %rax
movswl 0x2(%rax), %eax
cmpl $0x2, %eax
jne 0x54721
movq -0x10(%rbp), %rdi
addq $0x17538, %rdi          # imm = 0x17538
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rax
movl (%rax), %ecx
leaq 0x25ef7(%rip), %rsi     # 0x7a5b4
movb $0x0, %al
callq 0x3370
movl $0x1, -0x30(%rbp)
movl -0x30(%rbp), %eax
cmpl -0x2c(%rbp), %eax
jge 0x5471c
movq -0x10(%rbp), %rax
addq $0x17538, %rax          # imm = 0x17538
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rdi
addq $0x17538, %rdi          # imm = 0x17538
callq 0x3100
movq -0x38(%rbp), %rdi
addq %rax, %rdi
movq -0x20(%rbp), %rax
movslq -0x30(%rbp), %rcx
movl (%rax,%rcx,4), %edx
leaq 0x26e0d(%rip), %rsi     # 0x7b517
movb $0x0, %al
callq 0x3370
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x546cb
jmp 0x5484e
cmpq $0x0, -0x28(%rbp)
je 0x547ba
movq -0x10(%rbp), %rdi
addq $0x17538, %rdi          # imm = 0x17538
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rax
movl (%rax), %ecx
movq -0x28(%rbp), %rax
addl (%rax), %ecx
leaq 0x25e66(%rip), %rsi     # 0x7a5b4
movb $0x0, %al
callq 0x3370
movl $0x1, -0x30(%rbp)
movl -0x30(%rbp), %eax
cmpl -0x2c(%rbp), %eax
jge 0x547b8
movq -0x10(%rbp), %rax
addq $0x17538, %rax          # imm = 0x17538
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
addq $0x17538, %rdi          # imm = 0x17538
callq 0x3100
movq -0x40(%rbp), %rdi
addq %rax, %rdi
movq -0x20(%rbp), %rax
movslq -0x30(%rbp), %rcx
movl (%rax,%rcx,4), %edx
movq -0x28(%rbp), %rax
movslq -0x30(%rbp), %rcx
addl (%rax,%rcx,4), %edx
leaq 0x25e14(%rip), %rsi     # 0x7a5ba
movb $0x0, %al
callq 0x3370
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x5475c
jmp 0x54837
movq -0x10(%rbp), %rdi
addq $0x17538, %rdi          # imm = 0x17538
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rax
movl (%rax), %ecx
leaq 0x25dde(%rip), %rsi     # 0x7a5b4
movb $0x0, %al
callq 0x3370
movl $0x1, -0x30(%rbp)
movl -0x30(%rbp), %eax
cmpl -0x2c(%rbp), %eax
jge 0x54835
movq -0x10(%rbp), %rax
addq $0x17538, %rax          # imm = 0x17538
movq %rax, -0x48(%rbp)
movq -0x10(%rbp), %rdi
addq $0x17538, %rdi          # imm = 0x17538
callq 0x3100
movq -0x48(%rbp), %rdi
addq %rax, %rdi
movq -0x20(%rbp), %rax
movslq -0x30(%rbp), %rcx
movl (%rax,%rcx,4), %edx
leaq 0x25d97(%rip), %rsi     # 0x7a5ba
movb $0x0, %al
callq 0x3370
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x547e4
jmp 0x54837
movq -0x10(%rbp), %rdi
addq $0x17538, %rdi          # imm = 0x17538
leaq 0x26d73(%rip), %rsi     # 0x7b5bc
callq 0x3360
movq -0x10(%rbp), %rax
addq $0x17538, %rax          # imm = 0x17538
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)