// File: /workspace/github_c_makefile_star2_O1/zhou-yuxin[P]redis-aof-no-cow/src/debug.c
// Function: serverLogObjectDebugInfo
void serverLogObjectDebugInfo(robj *o) {
    serverLog(LL_WARNING,"Object type: %d", o->type);
    serverLog(LL_WARNING,"Object encoding: %d", o->encoding);
    serverLog(LL_WARNING,"Object refcount: %d", o->refcount);
    if (o->type == OBJ_STRING && sdsEncodedObject(o)) {
        serverLog(LL_WARNING,"Object raw string len: %zu", sdslen(o->ptr));
        if (sdslen(o->ptr) < 4096) {
            sds repr = sdscatrepr(sdsempty(),o->ptr,sdslen(o->ptr));
            serverLog(LL_WARNING,"Object raw string content: %s", repr);
            sdsfree(repr);
        }
    } else if (o->type == OBJ_LIST) {
        serverLog(LL_WARNING,"List length: %d", (int) listTypeLength(o));
    } else if (o->type == OBJ_SET) {
        serverLog(LL_WARNING,"Set size: %d", (int) setTypeSize(o));
    } else if (o->type == OBJ_HASH) {
        serverLog(LL_WARNING,"Hash size: %d", (int) hashTypeLength(o));
    } else if (o->type == OBJ_ZSET) {
        serverLog(LL_WARNING,"Sorted set size: %d", (int) zsetLength(o));
        if (o->encoding == OBJ_ENCODING_SKIPLIST)
            serverLog(LL_WARNING,"Skiplist level: %d", (int) ((zset*)o->ptr)->zsl->level);
    }
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
movl (%rdi), %edx
andl $0xf, %edx
leaq 0x634ce(%rip), %rsi     # 0xc9a47
movl $0x3, %edi
xorl %eax, %eax
callq 0x32ea6
movl (%rbx), %edx
shrl $0x4, %edx
andl $0xf, %edx
leaq 0x634c3(%rip), %rsi     # 0xc9a57
movl $0x3, %edi
xorl %eax, %eax
callq 0x32ea6
movl 0x4(%rbx), %edx
leaq 0x634c1(%rip), %rsi     # 0xc9a6b
movl $0x3, %edi
xorl %eax, %eax
callq 0x32ea6
movl (%rbx), %ecx
movl %ecx, %eax
andl $0xf, %eax
cmpl $0x4, %eax
ja 0x66759
leaq 0x628f3(%rip), %rdx     # 0xc8ec0
movslq (%rdx,%rax,4), %rsi
addq %rdx, %rsi
jmpq *%rsi
shrl $0x4, %ecx
testb $0x7, %cl
jne 0x6660c
movq 0x8(%rbx), %rax
movzbl -0x1(%rax), %edx
movl %edx, %ecx
andl $0x7, %ecx
cmpl $0x4, %ecx
ja 0x666ca
leaq 0x628d9(%rip), %rsi     # 0xc8ed4
movslq (%rsi,%rcx,4), %rcx
addq %rsi, %rcx
jmpq *%rcx
shrl $0x3, %edx
jmp 0x666cc
decl %eax
cmpl $0x3, %eax
ja 0x66759
leaq 0x628f2(%rip), %rcx     # 0xc8f10
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq %rbx, %rdi
callq 0x4fc1c
leaq 0x63482(%rip), %rsi     # 0xc9ab8
jmp 0x6669e
movq %rbx, %rdi
callq 0x551a5
leaq 0x6349c(%rip), %rsi     # 0xc9ae3
movl $0x3, %edi
movl %eax, %edx
xorl %eax, %eax
callq 0x32ea6
movl $0xf0, %eax
andl (%rbx), %eax
cmpl $0x70, %eax
jne 0x66759
movq 0x8(%rbx), %rax
movq 0x8(%rax), %rax
movl 0x18(%rax), %edx
leaq 0x63480(%rip), %rsi     # 0xc9af7
movl $0x3, %edi
jmp 0x666a5
movq %rbx, %rdi
callq 0x5948d
leaq 0x63448(%rip), %rsi     # 0xc9ad5
jmp 0x6669e
movq %rbx, %rdi
callq 0x51cf6
leaq 0x6342a(%rip), %rsi     # 0xc9ac8
movl $0x3, %edi
movl %eax, %edx
xorl %eax, %eax
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0x32ea6
movq -0x11(%rax), %rdx
jmp 0x666cc
movzwl -0x5(%rax), %edx
jmp 0x666cc
movl -0x9(%rax), %edx
jmp 0x666cc
movzbl -0x3(%rax), %edx
jmp 0x666cc
xorl %edx, %edx
leaq 0x633ac(%rip), %rsi     # 0xc9a7f
xorl %r14d, %r14d
movl $0x3, %edi
xorl %eax, %eax
callq 0x32ea6
movq 0x8(%rbx), %rcx
movzbl -0x1(%rcx), %eax
movl %eax, %edx
andl $0x7, %edx
cmpl $0x4, %edx
ja 0x66724
leaq 0x627ed(%rip), %rsi     # 0xc8ee8
movslq (%rsi,%rdx,4), %rdx
addq %rsi, %rdx
jmpq *%rdx
shrl $0x3, %eax
movq %rax, %r14
jmp 0x66724
movq -0x11(%rcx), %r14
jmp 0x66724
movzwl -0x5(%rcx), %r14d
jmp 0x66724
movl -0x9(%rcx), %r14d
jmp 0x66724
movzbl -0x3(%rcx), %r14d
cmpq $0xfff, %r14            # imm = 0xFFF
ja 0x66759
callq 0x39222
movq 0x8(%rbx), %rsi
movzbl -0x1(%rsi), %edx
movl %edx, %ecx
andl $0x7, %ecx
cmpl $0x4, %ecx
ja 0x66778
leaq 0x627b1(%rip), %rdi     # 0xc8efc
movslq (%rdi,%rcx,4), %rcx
addq %rdi, %rcx
jmpq *%rcx
shrl $0x3, %edx
jmp 0x6677a
addq $0x8, %rsp
popq %rbx
popq %r14
retq
movq -0x11(%rsi), %rdx
jmp 0x6677a
movzwl -0x5(%rsi), %edx
jmp 0x6677a
movl -0x9(%rsi), %edx
jmp 0x6677a
movzbl -0x3(%rsi), %edx
jmp 0x6677a
xorl %edx, %edx
movq %rax, %rdi
callq 0x3abb1
movq %rax, %rbx
leaq 0x6330e(%rip), %rsi     # 0xc9a9a
movl $0x3, %edi
movq %rax, %rdx
xorl %eax, %eax
callq 0x32ea6
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r14
jmp 0x392b6