// File: /workspace/github_cpp_makefile_star2_O1/yasz24[P]eau2/src/network/../serialize/../utils/distributedArray.h
// Function: IntDistributedArray::IntDistributedArray(char*, KVStore*)
IntDistributedArray(char* serialized, KVStore* kv) {
        //std::cout << serialized <<"\n";
        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 IntArray(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 0xee6e(%rip), %rax      # 0x29040
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 0x33c2(%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 0x1a609
movslq %eax, %rcx
cmpq %rax, %rcx
jne 0x1a615
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1a615
testl %ecx, %ecx
jne 0x1a27e
movl %r12d, (%r14)
cltq
movq %rax, 0x48(%rbx)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1a296
callq 0x7200
leaq 0x3349(%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 0x1a621
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
leaq -0x80000000(%rax), %rcx
cmpq %rdx, %rcx
jb 0x1a62d
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1a62d
testl %ecx, %ecx
jne 0x1a318
movl %r12d, (%r14)
cltq
movq %rax, 0x68(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1a330
callq 0x7200
leaq 0x32a6(%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 0x1a639
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1a645
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1a645
testl %ecx, %ecx
jne 0x1a3ae
movl %r12d, (%r14)
cltq
movq %rax, 0x60(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1a3c6
callq 0x7200
leaq 0x31f4(%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 0x1a651
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1a65d
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1a65d
testl %ecx, %ecx
jne 0x1a444
movl %r12d, (%r14)
cltq
movq %rax, 0x40(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1a45c
callq 0x7200
leaq 0x30a3(%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 0x1a669
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1a675
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1a675
testl %ecx, %ecx
jne 0x1a4da
movl %r12d, (%r14)
cltq
movq %rax, 0x58(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1a4f2
callq 0x7200
leaq 0x30d8(%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 0x1a681
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1a68d
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x1a68d
testl %ecx, %ecx
jne 0x1a570
movl %r12d, (%r14)
cltq
movq %rax, 0x50(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1a588
callq 0x7200
movl $0x28, %edi
callq 0x7230
movq %rax, %r14
leaq 0x3056(%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 0x301f(%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 0xe7da
movq %r14, 0x18(%rbx)
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x2aef(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2ae3(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2ad7(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2acb(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2abf(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2ab3(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2aa7(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2a9b(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2a8f(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2a83(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2a77(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2a6b(%rip), %rdi      # 0x1d0ff
callq 0x7310
jmp 0x1a6e8
jmp 0x1a6e8
jmp 0x1a6e8
jmp 0x1a6e8
jmp 0x1a6e8
jmp 0x1a6e8
jmp 0x1a6b5
jmp 0x1a6e8
jmp 0x1a6b5
jmp 0x1a6e8
jmp 0x1a6b5
jmp 0x1a6e8
jmp 0x1a6b5
jmp 0x1a6e8
movq %rax, %rbx
cmpl $0x0, (%r14)
jne 0x1a6c1
movl %r12d, (%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
jne 0x1a6f5
jmp 0x1a6fa
jmp 0x1a6e8
movq %rax, %rbx
cmpl $0x0, (%r14)
jne 0x1a6de
movl %r12d, (%r14)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
jmp 0x1a6c9
movq %rax, %rbx
jmp 0x1a6fa
jmp 0x1a6ef
movq %rax, %rbx
movq %r14, %rdi
callq 0x7200
movq %rbx, %rdi
callq 0x73b0