// File: /workspace/github_cpp_makefile_star2_O3/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, %rbx
movq %rdi, %r14
movq $0x0, 0x8(%rdi)
leaq 0xe330(%rip), %rax      # 0x28040
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 0x3884(%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 0x1a130
movslq %eax, %rcx
cmpq %rax, %rcx
jne 0x1a13c
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1a13c
testl %ecx, %ecx
jne 0x19dbb
movl %r12d, (%rbx)
movq %rax, 0x48(%r14)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x19dd1
callq 0x7200
leaq 0x380e(%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 0x1a148
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
leaq -0x80000000(%rax), %rcx
cmpq %rdx, %rcx
jb 0x1a154
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1a154
testl %ecx, %ecx
jne 0x19e51
movl %r12d, (%rbx)
movq %rax, 0x68(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x19e67
callq 0x7200
leaq 0x376f(%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 0x1a160
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1a16c
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1a16c
testl %ecx, %ecx
jne 0x19ee3
movl %r12d, (%rbx)
movq %rax, 0x60(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x19ef9
callq 0x7200
leaq 0x36c1(%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 0x1a178
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1a184
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1a184
testl %ecx, %ecx
jne 0x19f75
movl %r12d, (%rbx)
movq %rax, 0x40(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x19f8b
callq 0x7200
leaq 0x3574(%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 0x1a190
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1a19c
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1a19c
testl %ecx, %ecx
jne 0x1a007
movl %r12d, (%rbx)
movq %rax, 0x58(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1a01d
callq 0x7200
leaq 0x35ad(%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 0x1a1a8
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x1a1b4
movl (%rbx), %ecx
cmpl $0x22, %ecx
je 0x1a1b4
testl %ecx, %ecx
jne 0x1a099
movl %r12d, (%rbx)
movq %rax, 0x50(%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1a0af
callq 0x7200
movl $0x28, %edi
callq 0x7230
movq %rax, %rbx
leaq 0x352f(%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 0x34f8(%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 0xe56e
movq %rbx, 0x18(%r14)
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x2fc8(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2fbc(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2fb0(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2fa4(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2f98(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2f8c(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2f80(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2f74(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2f68(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2f5c(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x2f50(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x2f44(%rip), %rdi      # 0x1d0ff
callq 0x7310
jmp 0x1a20d
jmp 0x1a20d
jmp 0x1a20d
jmp 0x1a20d
jmp 0x1a20d
jmp 0x1a20d
jmp 0x1a1dc
jmp 0x1a20d
jmp 0x1a1dc
jmp 0x1a20d
jmp 0x1a1dc
jmp 0x1a20d
jmp 0x1a1dc
jmp 0x1a20d
movq %rax, %r14
cmpl $0x0, (%rbx)
jne 0x1a1e7
movl %r12d, (%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
jne 0x1a21a
jmp 0x1a21f
jmp 0x1a20d
movq %rax, %r14
cmpl $0x0, (%rbx)
jne 0x1a203
movl %r12d, (%rbx)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
jmp 0x1a1ef
movq %rax, %r14
jmp 0x1a21f
jmp 0x1a214
movq %rax, %r14
movq %rbx, %rdi
callq 0x7200
movq %r14, %rdi
callq 0x73b0
nop