// File: /workspace/github_cpp_makefile_star2_O1/yasz24[P]eau2/src/network/../serialize/../utils/distributedArray.h
// Function: BoolDistributedArray::BoolDistributedArray(char*, KVStore*)
BoolDistributedArray(char* serialized, KVStore* kv) {
        Deserializable* ds = new Deserializable();
        char* payload = JSONHelper::getPayloadValue(serialized)->c_str();
        //std::cout<<payload<<"\n";
        this->chunkSize_ = std::stoi(JSONHelper::getValueFromKey("chunkSize_", payload)->c_str());
        this->totalNodes_ = std::stoi(JSONHelper::getValueFromKey("totalNodes_", payload)->c_str());
        this->curNode_ = std::stoi(JSONHelper::getValueFromKey("curNode_", payload)->c_str());
        this->uid_ = std::stoi(JSONHelper::getValueFromKey("uid_", payload)->c_str());
        this->itemCount_ = std::stoi(JSONHelper::getValueFromKey("itemCount_", payload)->c_str());
        this->chunkCount_ = std::stoi(JSONHelper::getValueFromKey("chunkCount_", payload)->c_str());
        this->keys_ = new Array(JSONHelper::getValueFromKey("keys_", payload)->c_str());
        this->kv_ = kv;
        //this->kv_ = new KVStore(JSONHelper::getValueFromKey("kv_", payload)->c_str());
        this->chunkArray_ = new BoolArray(JSONHelper::getValueFromKey("chunkArray_", payload)->c_str());
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rdx, %r14
movq %rdi, %rbx
movq $0x0, 0x8(%rdi)
leaq 0xe3a4(%rip), %rax      # 0x29578
movq %rax, (%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x20(%rdi)
movq $0x32, 0x30(%rdi)
movq $0x400, 0x48(%rdi)      # imm = 0x400
movq %rsi, %rdi
callq 0xc9f0
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq 0x23c0(%rip), %rdi      # 0x1d5c6
movq %rax, -0x58(%rbp)
movq %rax, %rsi
callq 0xcb92
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %r14, -0x68(%rbp)
leaq -0x50(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x50(%rbp), %r13
callq 0x7040
movq %rax, %r14
movl (%rax), %r12d
movl $0x0, (%rax)
leaq -0x60(%rbp), %r15
movq %r13, %rdi
movq %r15, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r13, (%r15)
je 0x1b60b
movslq %eax, %rcx
cmpq %rax, %rcx
jne 0x1b617
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1b617
testl %ecx, %ecx
jne 0x1b280
movl %r12d, (%r14)
cltq
movq %rax, 0x48(%rbx)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1b298
callq 0x7200
leaq 0x2347(%rip), %rdi      # 0x1d5e6
movq -0x58(%rbp), %rsi
callq 0xcb92
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x50(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x50(%rbp), %r15
movl (%r14), %r12d
movl $0x0, (%r14)
leaq -0x60(%rbp), %r13
movq %r15, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r15, (%r13)
je 0x1b623
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
leaq -0x80000000(%rax), %rcx
cmpq %rdx, %rcx
jb 0x1b62f
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1b62f
testl %ecx, %ecx
jne 0x1b31a
movl %r12d, (%r14)
cltq
movq %rax, 0x68(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1b332
callq 0x7200
leaq 0x22a4(%rip), %rdi      # 0x1d5dd
movq -0x58(%rbp), %rsi
callq 0xcb92
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x50(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x50(%rbp), %r15
movl (%r14), %r12d
movl $0x0, (%r14)
movq %r15, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r15, (%r13)
je 0x1b63b
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1b647
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1b647
testl %ecx, %ecx
jne 0x1b3b0
movl %r12d, (%r14)
cltq
movq %rax, 0x60(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1b3c8
callq 0x7200
leaq 0x21f2(%rip), %rdi      # 0x1d5c1
movq -0x58(%rbp), %rsi
callq 0xcb92
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x50(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x50(%rbp), %r15
movl (%r14), %r12d
movl $0x0, (%r14)
movq %r15, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r15, (%r13)
je 0x1b653
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1b65f
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1b65f
testl %ecx, %ecx
jne 0x1b446
movl %r12d, (%r14)
cltq
movq %rax, 0x40(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1b45e
callq 0x7200
leaq 0x20a1(%rip), %rdi      # 0x1d506
movq -0x58(%rbp), %rsi
callq 0xcb92
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x50(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x50(%rbp), %r15
movl (%r14), %r12d
movl $0x0, (%r14)
movq %r15, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r15, (%r13)
je 0x1b66b
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1b677
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1b677
testl %ecx, %ecx
jne 0x1b4dc
movl %r12d, (%r14)
cltq
movq %rax, 0x58(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1b4f4
callq 0x7200
leaq 0x20d6(%rip), %rdi      # 0x1d5d1
movq -0x58(%rbp), %rsi
callq 0xcb92
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x50(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x50(%rbp), %r15
movl (%r14), %r12d
movl $0x0, (%r14)
movq %r15, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r15, (%r13)
je 0x1b683
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1b68f
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1b68f
testl %ecx, %ecx
jne 0x1b572
movl %r12d, (%r14)
cltq
movq %rax, 0x50(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1b58a
callq 0x7200
movl $0x28, %edi
callq 0x7230
movq %rax, %r14
leaq 0x2054(%rip), %rdi      # 0x1d5f2
movq -0x58(%rbp), %rsi
callq 0xcb92
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %r14, %rdi
movq %rax, %rsi
callq 0x16b22
movq %r14, 0x38(%rbx)
movq -0x68(%rbp), %rax
movq %rax, 0x10(%rbx)
movl $0x28, %edi
callq 0x7230
movq %rax, %r14
leaq 0x201d(%rip), %rdi      # 0x1d5f8
movq -0x58(%rbp), %rsi
callq 0xcb92
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %r14, %rdi
movq %rax, %rsi
callq 0x11840
movq %r14, 0x18(%rbx)
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x1aed(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1ae1(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x1ad5(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1ac9(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x1abd(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1ab1(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x1aa5(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1a99(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x1a8d(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1a81(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x1a75(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1a69(%rip), %rdi      # 0x1d0ff
callq 0x7310
jmp 0x1b6ea
jmp 0x1b6ea
jmp 0x1b6ea
jmp 0x1b6ea
jmp 0x1b6ea
jmp 0x1b6ea
jmp 0x1b6b7
jmp 0x1b6ea
jmp 0x1b6b7
jmp 0x1b6ea
jmp 0x1b6b7
jmp 0x1b6ea
jmp 0x1b6b7
jmp 0x1b6ea
movq %rax, %rbx
cmpl $0x0, (%r14)
jne 0x1b6c3
movl %r12d, (%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
jne 0x1b6f7
jmp 0x1b6fc
jmp 0x1b6ea
movq %rax, %rbx
cmpl $0x0, (%r14)
jne 0x1b6e0
movl %r12d, (%r14)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
jmp 0x1b6cb
movq %rax, %rbx
jmp 0x1b6fc
jmp 0x1b6f1
movq %rax, %rbx
movq %r14, %rdi
callq 0x7200
movq %rbx, %rdi
callq 0x73b0