// File: /workspace/github_cpp_makefile_star2_O3/yasz24[P]eau2/src/network/../serialize/../network/network.h
// Function: Directory::Directory(char*)
Directory(char* s) {
        char* payload = JSONHelper::getPayloadValue(s)->c_str();
        kind_ = (enum MsgKind)std::stoi(JSONHelper::getValueFromKey("kind_", payload)->c_str());
        sender_ = std::stoi(JSONHelper::getValueFromKey("sender_", payload)->c_str());
        target_ = std::stoi(JSONHelper::getValueFromKey("target_", payload)->c_str());
        id_ = std::stoi(JSONHelper::getValueFromKey("id_", payload)->c_str());
        clients = std::stoi(JSONHelper::getValueFromKey("clients", payload)->c_str());
        char* portsVals = JSONHelper::getValueFromKey("ports", payload)->c_str();
        int numPorts = JSONHelper::arrayLen(portsVals);
        size_t* tmp = new size_t[numPorts];
        for(int i = 0; i < numPorts; i++) {
            tmp[i] = std::stoi(JSONHelper::getArrayValueAt(portsVals, i)->c_str());
        }
        ports = tmp;
        char* addressesVals = JSONHelper::getValueFromKey("addresses", payload)->c_str();
        int numAddresses = JSONHelper::arrayLen(addressesVals);
        String** addresses_tmp = new String*[numAddresses];
        for(int i = 0; i < numAddresses; i++) {
            addresses_tmp[i] = JSONHelper::getArrayValueAt(addressesVals, i);
        }
        addresses = addresses_tmp;
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rdi, %r12
movq $0x0, 0x8(%rdi)
leaq 0xf8eb(%rip), %rax      # 0x28d68
movq %rax, (%rdi)
movq %rsi, %rdi
callq 0xc82c
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %rax, %r13
leaq 0x3ddb(%rip), %rdi      # 0x1d276
movq %rax, %rsi
callq 0xc9a6
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x58(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x58(%rbp), %r14
callq 0x7040
movl (%rax), %ebx
movq %rax, -0x38(%rbp)
movl $0x0, (%rax)
leaq -0x60(%rbp), %r15
movq %r14, %rdi
movq %r15, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r14, (%r15)
je 0x19934
movslq %eax, %rcx
cmpq %rax, %rcx
jne 0x19940
movq -0x38(%rbp), %rcx
movl (%rcx), %ecx
cmpl $0x22, %ecx
je 0x19940
testl %ecx, %ecx
jne 0x19513
movq -0x38(%rbp), %rcx
movl %ebx, (%rcx)
movl %eax, 0x10(%r12)
leaq -0x48(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1952a
callq 0x7200
leaq 0x3d4b(%rip), %rdi      # 0x1d27c
movq %r13, %rsi
callq 0xc9a6
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x58(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x58(%rbp), %r14
movq -0x38(%rbp), %rax
movl (%rax), %ebx
movl $0x0, (%rax)
movq %r14, %rdi
movq %r15, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r14, (%r15)
je 0x1994c
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
leaq -0x80000000(%rax), %rcx
cmpq %rdx, %rcx
jb 0x19958
movq -0x38(%rbp), %rcx
movl (%rcx), %ecx
cmpl $0x22, %ecx
je 0x19958
testl %ecx, %ecx
jne 0x195ae
movq -0x38(%rbp), %rcx
movl %ebx, (%rcx)
movq %rax, 0x18(%r12)
movq -0x58(%rbp), %rdi
leaq -0x48(%rbp), %rax
cmpq %rax, %rdi
je 0x195c5
callq 0x7200
leaq 0x3cb8(%rip), %rdi      # 0x1d284
movq %r13, %rsi
callq 0xc9a6
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x58(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x58(%rbp), %r14
movq -0x38(%rbp), %rax
movl (%rax), %ebx
movl $0x0, (%rax)
movq %r14, %rdi
movq %r15, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r14, (%r15)
je 0x19964
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x19970
movq -0x38(%rbp), %rcx
movl (%rcx), %ecx
cmpl $0x22, %ecx
je 0x19970
testl %ecx, %ecx
jne 0x19649
movq -0x38(%rbp), %rcx
movl %ebx, (%rcx)
movq %rax, 0x20(%r12)
movq -0x58(%rbp), %rdi
leaq -0x48(%rbp), %rax
cmpq %rax, %rdi
je 0x19660
callq 0x7200
leaq 0x3f5b(%rip), %rdi      # 0x1d5c2
movq %r13, %rsi
callq 0xc9a6
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x58(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x58(%rbp), %r14
movq -0x38(%rbp), %rax
movl (%rax), %ebx
movl $0x0, (%rax)
movq %r14, %rdi
movq %r15, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r14, (%r15)
je 0x1997c
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x19988
movq -0x38(%rbp), %rcx
movl (%rcx), %ecx
cmpl $0x22, %ecx
je 0x19988
testl %ecx, %ecx
jne 0x196e4
movq -0x38(%rbp), %rcx
movl %ebx, (%rcx)
movq %rax, 0x28(%r12)
movq -0x58(%rbp), %rdi
leaq -0x48(%rbp), %rax
cmpq %rax, %rdi
je 0x196fb
callq 0x7200
leaq 0x488b(%rip), %rdi      # 0x1df8d
movq %r13, %rsi
callq 0xc9a6
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x58(%rbp), %rdi
leaq -0x29(%rbp), %rdx
movq %rax, %rsi
callq 0x70e0
movq -0x58(%rbp), %r14
movq -0x38(%rbp), %rax
movl (%rax), %ebx
movl $0x0, (%rax)
movq %r14, %rdi
movq %r15, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r14, (%r15)
je 0x19994
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x199a0
movq -0x38(%rbp), %rcx
movl (%rcx), %ecx
cmpl $0x22, %ecx
je 0x199a0
testl %ecx, %ecx
jne 0x1977f
movq -0x38(%rbp), %rcx
movl %ebx, (%rcx)
movq %r12, -0x70(%rbp)
movq %rax, 0x30(%r12)
movq -0x58(%rbp), %rdi
leaq -0x48(%rbp), %rax
cmpq %rax, %rdi
je 0x1979a
callq 0x7200
leaq 0x47f4(%rip), %rdi      # 0x1df95
movq %r13, -0x68(%rbp)
movq %r13, %rsi
callq 0xc9a6
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %rax, -0x78(%rbp)
movq %rax, %rdi
callq 0x1c5fc
movl %eax, %r14d
movl %eax, %ebx
leaq (,%rbx,8), %rdi
testl %eax, %eax
movq $-0x1, %rax
cmovsq %rax, %rdi
callq 0x7030
movq %rax, %r13
testl %r14d, %r14d
jle 0x19898
xorl %r15d, %r15d
movq -0x78(%rbp), %rdi
movl %r15d, %esi
callq 0xcd78
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
leaq -0x58(%rbp), %rdi
movq %rax, %rsi
leaq -0x29(%rbp), %rdx
callq 0x70e0
movq -0x58(%rbp), %r14
movq -0x38(%rbp), %rax
movl (%rax), %r12d
movl $0x0, (%rax)
movq %r14, %rdi
leaq -0x60(%rbp), %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r14, -0x60(%rbp)
je 0x1991c
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x19928
movq -0x38(%rbp), %rcx
movl (%rcx), %ecx
cmpl $0x22, %ecx
je 0x19928
testl %ecx, %ecx
jne 0x19875
movq -0x38(%rbp), %rcx
movl %r12d, (%rcx)
movq %rax, (%r13,%r15,8)
movq -0x58(%rbp), %rdi
leaq -0x48(%rbp), %rax
cmpq %rax, %rdi
je 0x1988c
callq 0x7200
incq %r15
cmpq %r15, %rbx
jne 0x197f0
movq -0x70(%rbp), %rax
movq %r13, 0x38(%rax)
movq %rax, %r13
leaq 0x46f1(%rip), %rdi      # 0x1df9b
movq -0x68(%rbp), %rsi
callq 0xc9a6
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %rax, %rbx
movq %rax, %rdi
callq 0x1c5fc
movl %eax, %r15d
movl %eax, %r12d
leaq (,%r12,8), %rdi
testl %eax, %eax
movq $-0x1, %rax
cmovsq %rax, %rdi
callq 0x7030
movq %rax, %r14
testl %r15d, %r15d
jle 0x19909
xorl %r15d, %r15d
movq %rbx, %rdi
movl %r15d, %esi
callq 0xcd78
movq %rax, (%r14,%r15,8)
incq %r15
cmpq %r15, %r12
jne 0x198f2
movq %r14, 0x40(%r13)
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x37dc(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x37d0(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x37c4(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x37b8(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x37ac(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x37a0(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x3794(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x3788(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x377c(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x3770(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x3764(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x3758(%rip), %rdi      # 0x1d0ff
callq 0x7310
jmp 0x199f8
jmp 0x199f8
jmp 0x199f8
jmp 0x199f8
jmp 0x199f8
jmp 0x199c2
jmp 0x199f8
jmp 0x199c2
jmp 0x199f8
jmp 0x199c2
jmp 0x199f8
movq %rax, %r14
movq -0x38(%rbp), %rax
cmpl $0x0, (%rax)
jne 0x19a10
movq -0x38(%rbp), %rax
movl %ebx, (%rax)
jmp 0x19a10
jmp 0x199f8
movq %rax, %r14
movq -0x38(%rbp), %rax
cmpl $0x0, (%rax)
jne 0x199ea
movq -0x38(%rbp), %rax
movl %ebx, (%rax)
leaq -0x48(%rbp), %rax
movq -0x10(%rax), %rdi
jmp 0x19a18
jmp 0x199f8
jmp 0x199f8
movq %rax, %r14
jmp 0x19a22
movq %rax, %r14
movq -0x38(%rbp), %rax
cmpl $0x0, (%rax)
jne 0x19a10
movq -0x38(%rbp), %rax
movl %r12d, (%rax)
movq -0x58(%rbp), %rdi
leaq -0x48(%rbp), %rax
cmpq %rax, %rdi
je 0x19a22
callq 0x7200
movq %r14, %rdi
callq 0x73b0