// File: /workspace/github_cpp_makefile_star2_O1/yasz24[P]eau2/src/network/../serialize/../network/network.h
// Function: Reply::Reply(char*)
Reply(char* s) {
        Deserializable* ds = new Deserializable();
        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());
        char* serialData = JSONHelper::getValueFromKey("msg_", payload)->c_str();
        if(JSONHelper::isObject(serialData)) {
            reply_msg_ = ds->deserialize(serialData)->serialize();
        } else {
            reply_msg_ = serialData;
        }
        reply_msg_ = JSONHelper::getValueFromKey("msg_", payload)->c_str();
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rdi, %rbx
movq $0x0, 0x8(%rdi)
leaq 0x113df(%rip), %rax     # 0x29a98
movq %rax, (%rdi)
movq %rsi, %rdi
callq 0xc9f0
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %rax, %r15
leaq 0x4b9f(%rip), %rdi      # 0x1d276
movq %rax, %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), %r12
callq 0x7040
movq %rax, %r14
movl (%rax), %eax
movl %eax, -0x30(%rbp)
movl $0x0, (%r14)
leaq -0x58(%rbp), %r13
movq %r12, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r12, (%r13)
je 0x189a0
movslq %eax, %rcx
cmpq %rax, %rcx
jne 0x189ac
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x189ac
testl %ecx, %ecx
jne 0x18750
movl -0x30(%rbp), %ecx
movl %ecx, (%r14)
movl %eax, 0x10(%rbx)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x18765
callq 0x7200
leaq 0x4b10(%rip), %rdi      # 0x1d27c
movq %r15, %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), %r12
movl (%r14), %eax
movl %eax, -0x30(%rbp)
movl $0x0, (%r14)
movq %r12, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r12, (%r13)
je 0x189b8
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
leaq -0x80000000(%rax), %rcx
cmpq %rdx, %rcx
jb 0x189c4
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x189c4
testl %ecx, %ecx
jne 0x187e8
movl -0x30(%rbp), %ecx
movl %ecx, (%r14)
cltq
movq %rax, 0x18(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x18800
callq 0x7200
leaq 0x4a7d(%rip), %rdi      # 0x1d284
movq %r15, %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), %r12
movl (%r14), %eax
movl %eax, -0x30(%rbp)
movl $0x0, (%r14)
movq %r12, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r12, (%r13)
je 0x189d0
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x189dc
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x189dc
testl %ecx, %ecx
jne 0x18883
movl -0x30(%rbp), %ecx
movl %ecx, (%r14)
cltq
movq %rax, 0x20(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x1889b
callq 0x7200
leaq 0x4d20(%rip), %rdi      # 0x1d5c2
movq %r15, %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), %r12
movl (%r14), %eax
movl %eax, -0x30(%rbp)
movl $0x0, (%r14)
movq %r12, %rdi
movq %r13, %rsi
movl $0xa, %edx
callq 0x72f0
cmpq %r12, (%r13)
je 0x189e8
leaq -0x80000000(%rax), %rcx
movabsq $-0x100000000, %rdx     # imm = 0xFFFFFFFF00000000
cmpq %rdx, %rcx
jb 0x189f4
movl (%r14), %ecx
cmpl $0x22, %ecx
je 0x189f4
testl %ecx, %ecx
jne 0x1891e
movl -0x30(%rbp), %ecx
movl %ecx, (%r14)
cltq
movq %rax, 0x28(%rbx)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
cmpq %rax, %rdi
je 0x18936
callq 0x7200
leaq 0x564b(%rip), %rdi      # 0x1df88
movq %r15, %rsi
callq 0xcb92
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %rax, %r14
movq %rax, %rdi
callq 0xcdac
testb %al, %al
je 0x18971
movq %r14, %rsi
callq 0x14b60
movq (%rax), %rcx
movq %rax, %rdi
callq *0x38(%rcx)
movq %rax, %r14
movq %r14, 0x30(%rbx)
leaq 0x560c(%rip), %rdi      # 0x1df88
movq %r15, %rsi
callq 0xcb92
movq (%rax), %rcx
movq %rax, %rdi
callq *0x30(%rcx)
movq %rax, 0x30(%rbx)
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x4758(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x474c(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x4740(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x4734(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x4728(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x471c(%rip), %rdi      # 0x1d0ff
callq 0x7310
leaq 0x4710(%rip), %rdi      # 0x1d0ff
callq 0x7140
leaq 0x4704(%rip), %rdi      # 0x1d0ff
callq 0x7310
jmp 0x18a4e
jmp 0x18a4e
jmp 0x18a4e
jmp 0x18a4e
jmp 0x18a10
jmp 0x18a4e
jmp 0x18a10
jmp 0x18a4e
movq %rax, %rbx
cmpl $0x0, (%r14)
jne 0x18a1f
movl -0x30(%rbp), %eax
movl %eax, (%r14)
movq -0x50(%rbp), %rdi
leaq -0x40(%rbp), %rax
jmp 0x18a42
jmp 0x18a4e
movq %rax, %rbx
cmpl $0x0, (%r14)
jne 0x18a3a
movl -0x30(%rbp), %eax
movl %eax, (%r14)
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x18a51
callq 0x7200
jmp 0x18a51
movq %rax, %rbx
movq %rbx, %rdi
callq 0x73b0
nop