// File: /workspace/github_c_makefile_star2_O0/hkshenSmart[P]ONVIF-discovery_cs/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 0x1c650
movq $0x0, -0x8(%rbp)
jmp 0x1c81c
movq -0x10(%rbp), %rax
movswl 0x2(%rax), %eax
cmpl $0x2, %eax
jne 0x1c6e1
movq -0x10(%rbp), %rdi
addq $0x1d598, %rdi          # imm = 0x1D598
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rax
movl (%rax), %ecx
leaq 0x1ce37(%rip), %rsi     # 0x394b4
movb $0x0, %al
callq 0x3320
movl $0x1, -0x30(%rbp)
movl -0x30(%rbp), %eax
cmpl -0x2c(%rbp), %eax
jge 0x1c6dc
movq -0x10(%rbp), %rax
addq $0x1d598, %rax          # imm = 0x1D598
movq %rax, -0x38(%rbp)
movq -0x10(%rbp), %rdi
addq $0x1d598, %rdi          # imm = 0x1D598
callq 0x3100
movq -0x38(%rbp), %rdi
addq %rax, %rdi
movq -0x20(%rbp), %rax
movslq -0x30(%rbp), %rcx
movl (%rax,%rcx,4), %edx
leaq 0x1dd9a(%rip), %rsi     # 0x3a464
movb $0x0, %al
callq 0x3320
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x1c68b
jmp 0x1c80e
cmpq $0x0, -0x28(%rbp)
je 0x1c77a
movq -0x10(%rbp), %rdi
addq $0x1d598, %rdi          # imm = 0x1D598
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rax
movl (%rax), %ecx
movq -0x28(%rbp), %rax
addl (%rax), %ecx
leaq 0x1cda6(%rip), %rsi     # 0x394b4
movb $0x0, %al
callq 0x3320
movl $0x1, -0x30(%rbp)
movl -0x30(%rbp), %eax
cmpl -0x2c(%rbp), %eax
jge 0x1c778
movq -0x10(%rbp), %rax
addq $0x1d598, %rax          # imm = 0x1D598
movq %rax, -0x40(%rbp)
movq -0x10(%rbp), %rdi
addq $0x1d598, %rdi          # imm = 0x1D598
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 0x1cd54(%rip), %rsi     # 0x394ba
movb $0x0, %al
callq 0x3320
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x1c71c
jmp 0x1c7f7
movq -0x10(%rbp), %rdi
addq $0x1d598, %rdi          # imm = 0x1D598
movq -0x18(%rbp), %rdx
movq -0x20(%rbp), %rax
movl (%rax), %ecx
leaq 0x1cd1e(%rip), %rsi     # 0x394b4
movb $0x0, %al
callq 0x3320
movl $0x1, -0x30(%rbp)
movl -0x30(%rbp), %eax
cmpl -0x2c(%rbp), %eax
jge 0x1c7f5
movq -0x10(%rbp), %rax
addq $0x1d598, %rax          # imm = 0x1D598
movq %rax, -0x48(%rbp)
movq -0x10(%rbp), %rdi
addq $0x1d598, %rdi          # imm = 0x1D598
callq 0x3100
movq -0x48(%rbp), %rdi
addq %rax, %rdi
movq -0x20(%rbp), %rax
movslq -0x30(%rbp), %rcx
movl (%rax,%rcx,4), %edx
leaq 0x1ccd7(%rip), %rsi     # 0x394ba
movb $0x0, %al
callq 0x3320
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x1c7a4
jmp 0x1c7f7
movq -0x10(%rbp), %rdi
addq $0x1d598, %rdi          # imm = 0x1D598
leaq 0x1dd00(%rip), %rsi     # 0x3a509
callq 0x3310
movq -0x10(%rbp), %rax
addq $0x1d598, %rax          # imm = 0x1D598
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
addq $0x50, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)