// File: /workspace/github_cpp_makefile_star2_O3/yasz24[P]eau2/src/network/../serialize/../utils/distributedArray.h
// Function: StringDistributedArray::StringDistributedArray(char*, KVStore*)
StringDistributedArray(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->chunkArray_ = new StringArray(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, %rbx
movq %rdi, %r14
movq $0x0, 0x8(%rdi)
leaq 0xd0a0(%rip), %rax      # 0x282a8
movq %rax, (%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x20(%rdi)
movq $0x32, 0x30(%rdi)
movq $0x400, 0x48(%rdi)      # imm = 0x400
movq %rsi, %rdi
callq 0xc82c
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq 0x238c(%rip), %rdi      # 0x1d5c6
movq %rax, -0x58(%rbp)
movq %rax, %rsi
callq 0xc9a6
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %rbx, -0x68(%rbp)
leaq -0x50(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x50(%rbp), %r13
callq 0x7040
movq %rax, %rbx
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 0x1b628
movslq %eax, %rcx
cmpq %rax, %rcx
jne 0x1b634
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1b634
testl %ecx, %ecx
jne 0x1b2b3
movl %r12d, (%rbx)
movq %rax, 0x48(%r14)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1b2c9
callq 0x7200
leaq 0x2316(%rip), %rdi      # 0x1d5e6
movq -0x58(%rbp), %rsi
callq 0xc9a6
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 (%rbx), %r12d
movl $0x0, (%rbx)
leaq -0x60(%rbp), %r13
movq %r15, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r15, (%r13)
je 0x1b640
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
leaq -0x80000000(%rax), %rcx
cmpq %rdx, %rcx
jb 0x1b64c
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1b64c
testl %ecx, %ecx
jne 0x1b349
movl %r12d, (%rbx)
movq %rax, 0x68(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1b35f
callq 0x7200
leaq 0x2277(%rip), %rdi      # 0x1d5dd
movq -0x58(%rbp), %rsi
callq 0xc9a6
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 (%rbx), %r12d
movl $0x0, (%rbx)
movq %r15, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r15, (%r13)
je 0x1b658
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1b664
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1b664
testl %ecx, %ecx
jne 0x1b3db
movl %r12d, (%rbx)
movq %rax, 0x60(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1b3f1
callq 0x7200
leaq 0x21c9(%rip), %rdi      # 0x1d5c1
movq -0x58(%rbp), %rsi
callq 0xc9a6
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 (%rbx), %r12d
movl $0x0, (%rbx)
movq %r15, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r15, (%r13)
je 0x1b670
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1b67c
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1b67c
testl %ecx, %ecx
jne 0x1b46d
movl %r12d, (%rbx)
movq %rax, 0x40(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1b483
callq 0x7200
leaq 0x207c(%rip), %rdi      # 0x1d506
movq -0x58(%rbp), %rsi
callq 0xc9a6
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 (%rbx), %r12d
movl $0x0, (%rbx)
movq %r15, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r15, (%r13)
je 0x1b688
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1b694
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1b694
testl %ecx, %ecx
jne 0x1b4ff
movl %r12d, (%rbx)
movq %rax, 0x58(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1b515
callq 0x7200
leaq 0x20b5(%rip), %rdi      # 0x1d5d1
movq -0x58(%rbp), %rsi
callq 0xc9a6
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 (%rbx), %r12d
movl $0x0, (%rbx)
movq %r15, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r15, (%r13)
je 0x1b6a0
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1b6ac
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1b6ac
testl %ecx, %ecx
jne 0x1b591
movl %r12d, (%rbx)
movq %rax, 0x50(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1b5a7
callq 0x7200
movl $0x28, %edi
callq 0x7230
movq %rax, %rbx
leaq 0x2037(%rip), %rdi      # 0x1d5f2
movq -0x58(%rbp), %rsi
callq 0xc9a6
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %rbx, %rdi
movq %rax, %rsi
callq 0x16692
movq %rbx, 0x38(%r14)
movq -0x68(%rbp), %rax
movq %rax, 0x10(%r14)
movl $0x28, %edi
callq 0x7230
movq %rax, %rbx
leaq 0x2000(%rip), %rdi      # 0x1d5f8
movq -0x58(%rbp), %rsi
callq 0xc9a6
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %rbx, %rdi
movq %rax, %rsi
callq 0xfb72
movq %rbx, 0x18(%r14)
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x1ad0(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1ac4(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x1ab8(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1aac(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x1aa0(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1a94(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x1a88(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1a7c(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x1a70(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1a64(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x1a58(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x1a4c(%rip), %rdi      # 0x1d0ff
callq 0x7310
jmp 0x1b705
jmp 0x1b705
jmp 0x1b705
jmp 0x1b705
jmp 0x1b705
jmp 0x1b705
jmp 0x1b6d4
jmp 0x1b705
jmp 0x1b6d4
jmp 0x1b705
jmp 0x1b6d4
jmp 0x1b705
jmp 0x1b6d4
jmp 0x1b705
movq %rax, %r14
cmpl $0x0, (%rbx)
jne 0x1b6df
movl %r12d, (%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
jne 0x1b712
jmp 0x1b717
jmp 0x1b705
movq %rax, %r14
cmpl $0x0, (%rbx)
jne 0x1b6fb
movl %r12d, (%rbx)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
jmp 0x1b6e7
movq %rax, %r14
jmp 0x1b717
jmp 0x1b70c
movq %rax, %r14
movq %rbx, %rdi
callq 0x7200
movq %r14, %rdi
callq 0x73b0
nop