// File: /workspace/github_cpp_makefile_star2_O3/yasz24[P]eau2/src/network/../serialize/../utils/distributedArray.h
// Function: DoubleDistributedArray::DoubleDistributedArray(char*, KVStore*)
DoubleDistributedArray(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 DoubleArray(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 0xd3c4(%rip), %rax      # 0x27b50
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 0x2e08(%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 0x1abac
movslq %eax, %rcx
cmpq %rax, %rcx
jne 0x1abb8
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1abb8
testl %ecx, %ecx
jne 0x1a837
movl %r12d, (%rbx)
movq %rax, 0x48(%r14)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1a84d
callq 0x7200
leaq 0x2d92(%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 0x1abc4
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
leaq -0x80000000(%rax), %rcx
cmpq %rdx, %rcx
jb 0x1abd0
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1abd0
testl %ecx, %ecx
jne 0x1a8cd
movl %r12d, (%rbx)
movq %rax, 0x68(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1a8e3
callq 0x7200
leaq 0x2cf3(%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 0x1abdc
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1abe8
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1abe8
testl %ecx, %ecx
jne 0x1a95f
movl %r12d, (%rbx)
movq %rax, 0x60(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1a975
callq 0x7200
leaq 0x2c45(%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 0x1abf4
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1ac00
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1ac00
testl %ecx, %ecx
jne 0x1a9f1
movl %r12d, (%rbx)
movq %rax, 0x40(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1aa07
callq 0x7200
leaq 0x2af8(%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 0x1ac0c
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1ac18
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1ac18
testl %ecx, %ecx
jne 0x1aa83
movl %r12d, (%rbx)
movq %rax, 0x58(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1aa99
callq 0x7200
leaq 0x2b31(%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 0x1ac24
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1ac30
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1ac30
testl %ecx, %ecx
jne 0x1ab15
movl %r12d, (%rbx)
movq %rax, 0x50(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1ab2b
callq 0x7200
movl $0x28, %edi
callq 0x7230
movq %rax, %rbx
leaq 0x2ab3(%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 0x2a7c(%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 0xc026
movq %rbx, 0x18(%r14)
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x254c(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2540(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2534(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2528(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x251c(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2510(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2504(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x24f8(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x24ec(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x24e0(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x24d4(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x24c8(%rip), %rdi      # 0x1d0ff
callq 0x7310
jmp 0x1ac89
jmp 0x1ac89
jmp 0x1ac89
jmp 0x1ac89
jmp 0x1ac89
jmp 0x1ac89
jmp 0x1ac58
jmp 0x1ac89
jmp 0x1ac58
jmp 0x1ac89
jmp 0x1ac58
jmp 0x1ac89
jmp 0x1ac58
jmp 0x1ac89
movq %rax, %r14
cmpl $0x0, (%rbx)
jne 0x1ac63
movl %r12d, (%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
jne 0x1ac96
jmp 0x1ac9b
jmp 0x1ac89
movq %rax, %r14
cmpl $0x0, (%rbx)
jne 0x1ac7f
movl %r12d, (%rbx)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
jmp 0x1ac6b
movq %rax, %r14
jmp 0x1ac9b
jmp 0x1ac90
movq %rax, %r14
movq %rbx, %rdi
callq 0x7200
movq %r14, %rdi
callq 0x73b0
nop