Function at 0x1401cd870
Capabilities:
Authenticate hmac
Resolve function by parsing pe exports

Disassembly:
push rbp
mov rbp, rsp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
and rsp, 0xfffffffffffffff0
sub rsp, 0x160
mov rax, qword [rcx + 0x20]
cmp qword [rbp + 0x38], 0x5b
mov r12, qword [rbp + 0x30]
mov rax, qword [rax + 0x18]
movzx ebx, byte [rax + 0x2e]
movzx eax, word [rax + 0x2a]
mov byte [rsp + 0xe8], bl
mov word [rsp + 0xbe], ax
jbe 0x1401cdbb0
mov rbx, qword [r12 + 0x14]
lea rax, [r12 + 0x5c]
mov r14, rcx
mov r13, rdx
mov qword [rsp + 0x98], rax
lea rcx, [r12 + 0x3c]
mov rdi, r9
add rax, rbx
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0xc0], rax
mov rax, qword [r12 + 0xc]
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xa8], rax
test rdx, rdx
je 0x1401cda90
mov rcx, r14
mov rsi, r8
xor r15d, r15d
call fcn.140030000
movzx eax, word [r14 + 0x28]
movzx ecx, word [r14 + 0x2a]
movzx edx, word [r14 + 0x2c]
movzx r11d, word [r14 + 0x2e]
movzx r10d, word [r13]
mov ebx, eax
mov rax, qword [r14 + 0x18]
mov dword [rsp + 0xe0], ecx
movzx r9d, word [r13 + 6]
movzx r8d, byte [r12 + 2]
mov dword [rsp + 0xdc], edx
movzx ecx, byte [r14 + 0x40]
mov rdx, qword [rax + 0x20]
mov dword [rsp + 0xd8], r11d
mov rax, qword [rax + 0x28]
movzx r11d, word [r13 + 2]
mov dword [rsp + 0xd0], r10d
movzx r10d, word [r13 + 4]
mov dword [rsp + 0x88], ebx
mov ebx, dword [rsp + 0xe0]
cmp byte [rsp + 0xe8], 0
mov dword [rsp + 0x60], r11d
mov qword [rsp + 0xc8], rax
lea rax, str.dap_chain_cs_esbocs
mov dword [rsp + 0x80], ebx
mov ebx, dword [rsp + 0xdc]
cmovne r15, rax
mov dword [rsp + 0x58], r10d
mov dword [rsp + 0x78], ebx
mov ebx, dword [rsp + 0xd8]
mov dword [rsp + 0x50], r9d
mov r9d, 3
mov dword [rsp + 0x70], ebx
mov ebx, dword [rsp + 0xd0]
mov dword [rsp + 0x48], r8d
mov r8, r15
mov dword [rsp + 0x68], ebx
mov dword [rsp + 0x40], ecx
mov rax, qword [rsp + 0xc8]
xor ecx, ecx
mov rbx, qword [r14 + 0x38]
mov qword [rsp + 0x30], rdx
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Receive_pkt_type:0x_x_from_addr:_04hX::_04hX::_04hX::_04hX__my_addr:_04hX::_04hX::_04hX::_04hX
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x38], rbx
call fcn.14005a150
mov rax, qword [r14 + 0x28]
cmp qword [rsi], rax
jne 0x1401cdbf8
movzx eax, word [r12]
cmp ax, 8
jne 0x1401cdc80
mov rdx, qword [r12 + 0xc]
mov rax, qword [r12 + 0x14]
add rax, rdx
add rax, 0x5c
cmp rax, qword [rbp + 0x38]
jne 0x1401cdc30
mov rdx, qword [r14 + 0x18]
mov rax, qword [r12 + 0x2c]
cmp rax, qword [rdx + 8]
je 0x1401cdcd0
mov qword [rsp + 0x28], rax
lea rax, str.Invalid_chain_ID__llu
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rax
mov r9d, 3
mov r8, r15
call fcn.14005a150
jmp 0x1401cdc16
mov rax, qword [r14 + 0x18]
lea rsi, [rsp + 0x110]
mov rdx, qword [rsp + 0xc0]
mov rcx, rsi
mov r8, qword [rax + 0x10]
call fcn.140078aa0
xor r15d, r15d
cmp byte [rsp + 0xe8], 0
jne 0x1401cdc70
movzx eax, byte [r12 + 2]
cmp al, 0x32
je 0x1401cdb24
ja 0x1401cdb20
sub eax, 0x22
test al, 0xfd
je 0x1401cdc20
mov rcx, qword [r14 + 0x118]
lea r8, [0x140162c40]
mov rdx, rsi
call fcn.1400f5e30
test rax, rax
je 0x1401cdb39
movzx ebx, byte [r12 + 2]
lea eax, [rbx - 4]
cmp al, 0x32
ja case.0x1401cdb15.1
lea rdx, [0x14029d604]
movzx eax, al
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
cmp al, 0x36
jne 0x1401cdad8
test r13, r13
je 0x1401cf540
mov rcx, rsi
call fcn.1400aeba0
test eax, eax
jne 0x1401cdaf3
mov rax, qword [r14 + 0x18]
movzx r9d, byte [r12 + 3]
lea r8, str.dap_chain_cs_esbocs
mov r10d, 0
mov rcx, qword [r14 + 0x38]
cmp byte [rsp + 0xe8], 0
mov rdx, qword [rax + 0x20]
mov rax, qword [rax + 0x28]
mov dword [rsp + 0x40], r9d
cmove r8, r10
mov qword [rsp + 0x38], rcx
mov r9d, 3
xor ecx, ecx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Message_rejected:_validator_addr:_s_not_in_the_current_validators_list_or_not_synced_yet
mov qword [rsp + 0x30], rdx
xor edx, edx
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x20], rax
call fcn.14005a150
nop dword [rax]
test r13, r13
je 0x1401cdbe4
jmp 0x1401cdc16
mov rax, qword [rbp + 0x38]
mov r9d, 5
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x30], 0x5c
lea r8, str.dap_chain_cs_esbocs
mov qword [rsp + 0x28], rax
lea rax, str.Too_smalll_message_size__zu__less_than_header_size__zu
mov qword [rsp + 0x20], rax
call fcn.14005a150
lea rsp, [rbp - 0x38]
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rax, str.Wrong_packet_destination_address
mov r8, r15
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rax
mov r9d, 3
call fcn.14005a150
mov rcx, r14
call fcn.140030320
jmp 0x1401cdbe4
mov rcx, qword [r14 + 0x138]
jmp 0x1401cdadf
mov rax, qword [rbp + 0x38]
mov qword [rsp + 0x28], rdx
mov r9d, 5
xor edx, edx
mov qword [rsp + 0x38], 0x5c
lea r8, str.dap_chain_cs_esbocs
xor ecx, ecx
mov qword [rsp + 0x30], rax
lea rax, str.incorrect_message_size_in_header_is__zu_when_data_size_is_only__zu_and_header_size_is__zu
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x1401cdc16
mov rcx, rsi
call fcn.140078d70
mov r15, rax
jmp 0x1401cdac1
mov rdx, qword [r14 + 0x18]
mov dword [rsp + 0x40], eax
mov r9d, 3
xor ecx, ecx
mov dword [rsp + 0x48], 8
mov rax, qword [r14 + 0x38]
mov r8, r15
mov qword [rsp + 0x38], rax
mov rax, qword [rdx + 0x20]
mov qword [rsp + 0x30], rax
mov rax, qword [rdx + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu_SYNC_message_is_rejected___different_protocol_version__hu__need__u_
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x1401cdc16
mov r8, qword [rbp + 0x38]
mov rdx, r12
lea rcx, [rsp + 0xf0]
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 0
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x108], 0
call fcn.140054770
test rdi, rdi
je 0x1401ce1c0
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
xor rdx, qword [rsp + 0xf0]
xor rax, qword [rsp + 0xf8]
or rax, rdx
jne 0x1401ce1c0
mov rdx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
xor rdx, qword [rsp + 0x100]
xor rax, qword [rsp + 0x108]
or rax, rdx
jne 0x1401ce1c0
mov rax, qword [rsp + 0xb0]
cmp qword [rsp + 0xa8], 0xd
mov qword [r12 + 0xc], 0
lea rbx, [rax + 0x5c]
jbe 0x1401d00a0
mov rsi, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0xa8]
mov rcx, rsi
call fcn.1400fe210
test al, al
je 0x1401d00a0
mov r8, rbx
mov rdx, r12
mov rcx, rsi
call fcn.1400fdf40
cmp eax, 1
jne 0x1401d00a0
mov rax, qword [rsp + 0xa8]
mov qword [r12 + 0xc], rax
movzx eax, byte [r12 + 2]
cmp al, 0x32
je 0x1401cffdc
cmp al, 0x36
je 0x1401d0578
mov rdx, qword [r12 + 4]
mov rax, qword [r14 + 0x38]
cmp rdx, rax
je 0x1401cde36
mov rcx, qword [r14 + 0x18]
mov qword [rsp + 0x50], rdx
mov r9d, 3
mov r8, r15
mov qword [rsp + 0x48], rax
movzx edx, byte [r14 + 0x40]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x40], edx
mov rax, qword [rcx + 0x20]
xor edx, edx
mov qword [rsp + 0x30], rax
mov rax, qword [rcx + 0x28]
xor ecx, ecx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Message_passed__but_round_number__llu_doesnt_match_messages_one__llu
mov qword [rsp + 0x20], rax
call fcn.14005a150
mov r10, qword [r14 + 0x70]
test r10, r10
je 0x1401cf560
movzx eax, byte [rdi + 5]
movzx edx, byte [rdi + 4]
movzx ecx, byte [rdi + 8]
movzx r8d, byte [rdi]
shl eax, 8
movzx r9d, byte [rdi + 0x11]
lea edx, [rdx + rax - 0x61c88647]
movzx eax, byte [rdi + 6]
shl eax, 0x10
add edx, eax
movzx eax, byte [rdi + 7]
shl eax, 0x18
add edx, eax
movzx eax, byte [rdi + 9]
shl eax, 8
lea eax, [rax + rcx - 0x1124111]
movzx ecx, byte [rdi + 0xa]
shl ecx, 0x10
add eax, ecx
movzx ecx, byte [rdi + 0xb]
shl ecx, 0x18
add eax, ecx
movzx ecx, byte [rdi + 1]
shl ecx, 8
lea r8d, [r8 + rcx - 0x61c88647]
movzx ecx, byte [rdi + 2]
shl ecx, 0x10
add r8d, ecx
movzx ecx, byte [rdi + 3]
shl ecx, 0x18
add r8d, ecx
mov ecx, eax
sub r8d, edx
shr ecx, 0xd
sub edx, eax
sub r8d, eax
xor ecx, r8d
sub edx, ecx
sub eax, ecx
mov r8d, edx
mov edx, ecx
shl edx, 8
xor edx, r8d
sub eax, edx
sub ecx, edx
mov r8d, eax
mov eax, edx
shr eax, 0xd
xor eax, r8d
sub ecx, eax
sub edx, eax
mov r8d, ecx
mov ecx, eax
shr ecx, 0xc
xor ecx, r8d
mov r8d, ecx
sub edx, ecx
sub eax, ecx
shl r9d, 8
shl r8d, 0x10
xor r8d, edx
mov edx, r8d
sub eax, r8d
sub ecx, r8d
shr edx, 5
xor edx, eax
mov eax, ecx
mov ecx, edx
sub eax, edx
sub r8d, edx
shr ecx, 3
xor ecx, eax
mov eax, ecx
sub r8d, ecx
sub edx, ecx
shl eax, 0xa
xor eax, r8d
sub edx, eax
mov r8d, edx
mov edx, eax
shr edx, 0xf
xor edx, r8d
movzx r8d, byte [rdi + 0x12]
shl r8d, 0x10
add r8d, r9d
movzx r9d, byte [rdi + 0x10]
add r8d, r9d
movzx r9d, byte [rdi + 0x13]
shl r9d, 0x18
add r8d, r9d
movzx r9d, byte [rdi + 0x15]
add r8d, eax
movzx eax, byte [rdi + 0x16]
shl r9d, 8
shl eax, 0x10
add eax, r9d
movzx r9d, byte [rdi + 0x14]
add eax, r9d
movzx r9d, byte [rdi + 0x17]
shl r9d, 0x18
add eax, r9d
movzx r9d, byte [rdi + 0xd]
add eax, edx
movzx edx, byte [rdi + 0xe]
shl r9d, 8
shl edx, 0x10
add edx, r9d
movzx r9d, byte [rdi + 0xc]
add edx, r9d
movzx r9d, byte [rdi + 0xf]
shl r9d, 0x18
add edx, r9d
movzx r9d, byte [rdi + 0x1f]
add edx, ecx
mov ecx, eax
sub edx, r8d
shr ecx, 0xd
sub r8d, eax
sub edx, eax
xor ecx, edx
mov edx, ecx
sub r8d, ecx
sub eax, ecx
shl edx, 8
xor edx, r8d
sub eax, edx
sub ecx, edx
mov r8d, eax
mov eax, edx
shr eax, 0xd
xor eax, r8d
sub ecx, eax
sub edx, eax
mov r8d, ecx
mov ecx, eax
shr ecx, 0xc
xor ecx, r8d
sub edx, ecx
sub eax, ecx
mov r8d, edx
mov edx, ecx
shl edx, 0x10
xor edx, r8d
sub eax, edx
mov r8d, eax
mov eax, edx
shr eax, 5
xor eax, r8d
sub ecx, edx
shl r9d, 0x18
sub ecx, eax
sub edx, eax
mov r8d, ecx
mov ecx, eax
shr ecx, 3
xor ecx, r8d
sub edx, ecx
sub eax, ecx
mov r8d, edx
mov edx, ecx
shl edx, 0xa
xor edx, r8d
mov r8d, edx
sub eax, edx
shr r8d, 0xf
xor r8d, eax
movzx eax, byte [rdi + 0x1e]
add r8d, 0x20
shl eax, 0x10
add eax, r9d
movzx r9d, byte [rdi + 0x1c]
add eax, r9d
movzx r9d, byte [rdi + 0x1d]
shl r9d, 8
add eax, r9d
movzx r9d, byte [rdi + 0x1b]
add eax, edx
movzx edx, byte [rdi + 0x1a]
shl r9d, 0x18
shl edx, 0x10
add edx, r9d
movzx r9d, byte [rdi + 0x18]
add edx, r9d
movzx r9d, byte [rdi + 0x19]
shl r9d, 8
add edx, r9d
add edx, ecx
mov ecx, r8d
sub edx, r8d
shr ecx, 0xd
sub edx, eax
sub eax, r8d
xor edx, ecx
sub eax, edx
sub r8d, edx
mov ecx, eax
mov eax, edx
shl eax, 8
xor eax, ecx
mov ecx, r8d
mov r8d, eax
sub ecx, eax
sub edx, eax
shr r8d, 0xd
xor r8d, ecx
mov ecx, edx
mov edx, r8d
sub ecx, r8d
sub eax, r8d
shr edx, 0xc
xor edx, ecx
mov ecx, edx
sub eax, edx
sub r8d, edx
shl ecx, 0x10
xor ecx, eax
mov eax, ecx
sub r8d, ecx
sub edx, ecx
shr eax, 5
xor eax, r8d
mov r8d, eax
sub edx, eax
sub ecx, eax
shr r8d, 3
xor r8d, edx
mov edx, r8d
sub ecx, r8d
sub eax, r8d
shl edx, 0xa
xor edx, ecx
mov rcx, qword [r10 + 0x78]
sub eax, edx
shr edx, 0xf
xor edx, eax
mov eax, dword [rcx + 8]
sub eax, 1
and eax, edx
shl rax, 4
add rax, qword [rcx]
mov rax, qword [rax]
test rax, rax
je 0x1401cf560
mov r8, qword [rcx + 0x20]
mov rcx, r8
sub rax, r8
neg rcx
jmp 0x1401ce14b
mov rax, qword [rax + 0x98]
test rax, rax
je 0x1401cf560
add rax, rcx
cmp dword [rax + 0xac], edx
jne 0x1401ce138
cmp dword [rax + 0xa8], 0x20
jne 0x1401ce138
mov r10, qword [rax + 0xa0]
mov r9, qword [r10]
mov r8, qword [r10 + 8]
xor r9, qword [rdi]
xor r8, qword [rdi + 8]
or r8, r9
jne 0x1401ce138
mov r9, qword [r10 + 0x10]
mov r8, qword [r10 + 0x18]
xor r9, qword [rdi + 0x10]
xor r8, qword [rdi + 0x18]
or r8, r9
jne 0x1401ce138
movzx edx, byte [r12 + 3]
mov rax, qword [r14 + 0x18]
mov dword [rsp + 0x40], edx
mov rdx, qword [r14 + 0x38]
mov qword [rsp + 0x38], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Message_rejected:_message_hash_is_exists_in_chain__duplicate_
jmp 0x1401ce1ef
movzx edx, byte [r14 + 0x40]
mov rax, qword [r14 + 0x18]
mov dword [rsp + 0x40], edx
mov rdx, qword [r14 + 0x38]
mov qword [rsp + 0x38], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Message_rejected:_message_hash_does_not_match
mov qword [rsp + 0x20], rax
mov r9d, 3
mov r8, r15
xor edx, edx
xor ecx, ecx
call fcn.14005a150
jmp 0x1401cdc16
cmp byte [rsp + 0xe8], 0
mov eax, 0
lea r8, str.dap_chain_cs_esbocs
mov r9d, 3
cmove r8, rax
lea rax, str.Directive_processing_is_disabled
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp case.0x1401cdb15.1
mov rcx, qword [r14 + 0x68]
test rcx, rcx
je 0x1401cf950
movzx eax, byte [r12 + 0x41]
movzx edx, byte [r12 + 0x40]
movzx r8d, byte [r12 + 0x44]
movzx r9d, byte [r12 + 0x3c]
shl eax, 8
lea edx, [rdx + rax - 0x61c88647]
movzx eax, byte [r12 + 0x42]
shl eax, 0x10
add edx, eax
movzx eax, byte [r12 + 0x43]
shl eax, 0x18
add edx, eax
movzx eax, byte [r12 + 0x45]
shl eax, 8
lea eax, [r8 + rax - 0x1124111]
movzx r8d, byte [r12 + 0x46]
shl r8d, 0x10
add eax, r8d
movzx r8d, byte [r12 + 0x47]
shl r8d, 0x18
add eax, r8d
movzx r8d, byte [r12 + 0x3d]
shl r8d, 8
lea r9d, [r9 + r8 - 0x61c88647]
movzx r8d, byte [r12 + 0x3e]
shl r8d, 0x10
add r9d, r8d
movzx r8d, byte [r12 + 0x3f]
shl r8d, 0x18
add r9d, r8d
mov r8d, eax
sub r9d, edx
shr r8d, 0xd
sub edx, eax
sub r9d, eax
xor r8d, r9d
sub edx, r8d
sub eax, r8d
mov r9d, edx
mov edx, r8d
shl edx, 8
xor edx, r9d
sub eax, edx
sub r8d, edx
mov r9d, eax
mov eax, edx
shr eax, 0xd
xor eax, r9d
mov r9d, r8d
mov r8d, eax
sub r9d, eax
sub edx, eax
shr r8d, 0xc
xor r8d, r9d
sub edx, r8d
sub eax, r8d
mov r9d, edx
mov edx, r8d
shl edx, 0x10
xor edx, r9d
sub eax, edx
sub r8d, edx
mov r9d, eax
mov eax, edx
shr eax, 5
xor eax, r9d
mov r9d, eax
sub r8d, eax
sub edx, eax
shr r9d, 3
xor r9d, r8d
mov r8d, r9d
sub edx, r9d
sub eax, r9d
shl r8d, 0xa
xor r8d, edx
movzx edx, byte [r12 + 0x4d]
mov r10d, r8d
sub eax, r8d
shr r10d, 0xf
shl edx, 8
xor r10d, eax
movzx eax, byte [r12 + 0x4e]
shl eax, 0x10
add edx, eax
movzx eax, byte [r12 + 0x4c]
add edx, eax
movzx eax, byte [r12 + 0x4f]
shl eax, 0x18
add edx, eax
movzx eax, byte [r12 + 0x51]
add edx, r8d
movzx r8d, byte [r12 + 0x52]
shl eax, 8
shl r8d, 0x10
add eax, r8d
movzx r8d, byte [r12 + 0x50]
add eax, r8d
movzx r8d, byte [r12 + 0x53]
shl r8d, 0x18
add eax, r8d
movzx r8d, byte [r12 + 0x49]
add eax, r10d
movzx r10d, byte [r12 + 0x4a]
shl r8d, 8
shl r10d, 0x10
add r8d, r10d
movzx r10d, byte [r12 + 0x48]
add r8d, r10d
movzx r10d, byte [r12 + 0x4b]
shl r10d, 0x18
add r8d, r10d
movzx r10d, byte [r12 + 0x5a]
add r8d, r9d
mov r9d, eax
sub r8d, edx
shr r9d, 0xd
sub edx, eax
sub r8d, eax
xor r8d, r9d
sub edx, r8d
sub eax, r8d
mov r9d, edx
mov edx, r8d
shl edx, 8
xor edx, r9d
sub eax, edx
sub r8d, edx
mov r9d, eax
mov eax, edx
shr eax, 0xd
xor eax, r9d
mov r9d, r8d
mov r8d, eax
sub r9d, eax
sub edx, eax
shr r8d, 0xc
xor r8d, r9d
sub edx, r8d
sub eax, r8d
mov r9d, edx
mov edx, r8d
shl edx, 0x10
xor edx, r9d
sub eax, edx
mov r9d, eax
mov eax, edx
shr eax, 5
xor eax, r9d
sub r8d, edx
shl r10d, 0x10
mov r9d, eax
sub r8d, eax
sub edx, eax
shr r9d, 3
xor r9d, r8d
sub edx, r9d
sub eax, r9d
mov r8d, edx
mov edx, r9d
shl edx, 0xa
xor edx, r8d
mov r8d, edx
sub eax, edx
shr r8d, 0xf
xor r8d, eax
movzx eax, byte [r12 + 0x5b]
add r8d, 0x20
shl eax, 0x18
add eax, r10d
movzx r10d, byte [r12 + 0x58]
add eax, r10d
movzx r10d, byte [r12 + 0x59]
shl r10d, 8
add eax, r10d
movzx r10d, byte [r12 + 0x56]
add eax, edx
movzx edx, byte [r12 + 0x57]
shl r10d, 0x10
shl edx, 0x18
add edx, r10d
movzx r10d, byte [r12 + 0x54]
add edx, r10d
movzx r10d, byte [r12 + 0x55]
mov rcx, qword [rcx + 0x68]
shl r10d, 8
mov esi, dword [rcx + 8]
add edx, r10d
add edx, r9d
mov r9d, r8d
sub edx, r8d
shr r9d, 0xd
sub edx, eax
sub eax, r8d
xor edx, r9d
sub eax, edx
sub r8d, edx
mov r9d, eax
mov eax, edx
shl eax, 8
xor eax, r9d
mov r9d, r8d
mov r8d, eax
sub r9d, eax
sub edx, eax
shr r8d, 0xd
xor r8d, r9d
mov r9d, r8d
sub edx, r8d
sub eax, r8d
shr r9d, 0xc
xor r9d, edx
sub eax, r9d
sub r8d, r9d
mov edx, eax
mov eax, r9d
shl eax, 0x10
xor eax, edx
mov edx, eax
sub r8d, eax
sub r9d, eax
shr edx, 5
xor edx, r8d
sub r9d, edx
sub eax, edx
mov r8d, r9d
mov r9d, edx
shr r9d, 3
xor r9d, r8d
mov r8d, r9d
sub eax, r9d
sub edx, r9d
shl r8d, 0xa
xor eax, r8d
sub edx, eax
shr eax, 0xf
xor eax, edx
lea edx, [rsi - 1]
and edx, eax
shl rdx, 4
add rdx, qword [rcx]
mov rsi, qword [rdx]
test rsi, rsi
je 0x1401cf950
mov rcx, qword [rcx + 0x20]
mov r9, qword [rsp + 0xa0]
mov rdx, rcx
sub rsi, rcx
neg rdx
jmp 0x1401ce5d3
mov rsi, qword [rsi + 0x88]
test rsi, rsi
je 0x1401cf950
add rsi, rdx
cmp dword [rsi + 0x9c], eax
jne 0x1401ce5c0
cmp dword [rsi + 0x98], 0x20
jne 0x1401ce5c0
mov r10, qword [rsi + 0x90]
mov r8, qword [r10]
mov rcx, qword [r10 + 8]
xor r8, qword [r9]
xor rcx, qword [r9 + 8]
or rcx, r8
jne 0x1401ce5c0
mov r8, qword [r10 + 0x10]
mov rcx, qword [r10 + 0x18]
xor r8, qword [r9 + 0x10]
xor rcx, qword [r9 + 0x18]
or rcx, r8
jne 0x1401ce5c0
xor r15d, r15d
cmp byte [rsp + 0xe8], 0
je 0x1401ce940
mov edx, 0x43
mov ecx, 1
call sub.msvcrt.dll_calloc
mov rdx, qword [r12 + 0x3c]
mov ecx, 0x7830
mov r15, rax
mov word [rax], cx
lea rax, [0x14029e4b0]
mov r8, rdx
movzx ecx, dl
mov r9, rdx
movzx edi, dh
shr r8, 0x18
movzx ecx, word [rax + rcx*2]
shr r9, 0x10
movzx r10d, r8b
mov r8, rdx
movzx r9d, r9b
shr r8, 0x20
movd xmm0, ecx
movzx ecx, word [rax + r9*2]
pinsrw xmm0, word [rax + rdi*2], 1
movzx r11d, r8b
mov r8, rdx
shr r8, 0x28
movd xmm3, ecx
movzx ecx, word [rax + r11*2]
pinsrw xmm3, word [rax + r10*2], 1
movzx r8d, r8b
mov qword [rsp + 0xe0], r8
mov r8, rdx
movd xmm1, ecx
shr rdx, 0x38
shr r8, 0x30
mov rdi, qword [rsp + 0xe0]
punpckldq xmm0, xmm3
movzx r8d, r8b
movzx ecx, word [rax + r8*2]
pinsrw xmm1, word [rax + rdi*2], 1
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x44]
mov r8, rdx
movzx ecx, dl
mov r9, rdx
movzx edi, dh
shr r8, 0x18
movzx ecx, word [rax + rcx*2]
punpckldq xmm1, xmm2
shr r9, 0x10
movzx r10d, r8b
mov r8, rdx
punpcklqdq xmm0, xmm1
movzx r9d, r9b
shr r8, 0x20
movups xmmword [r15 + 2], xmm0
movd xmm0, ecx
movzx ecx, word [rax + r9*2]
movzx r11d, r8b
mov r8, rdx
pinsrw xmm0, word [rax + rdi*2], 1
shr r8, 0x28
movd xmm3, ecx
movzx ecx, word [rax + r11*2]
pinsrw xmm3, word [rax + r10*2], 1
movzx r8d, r8b
mov qword [rsp + 0xe0], r8
mov r8, rdx
movd xmm1, ecx
shr rdx, 0x38
shr r8, 0x30
mov rdi, qword [rsp + 0xe0]
punpckldq xmm0, xmm3
movzx r8d, r8b
movzx ecx, word [rax + r8*2]
pinsrw xmm1, word [rax + rdi*2], 1
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x4c]
mov r8, rdx
movzx ecx, dl
mov r9, rdx
movzx edi, dh
shr r8, 0x18
movzx ecx, word [rax + rcx*2]
punpckldq xmm1, xmm2
shr r9, 0x10
movzx r10d, r8b
mov r8, rdx
punpcklqdq xmm0, xmm1
movzx r9d, r9b
shr r8, 0x20
movups xmmword [r15 + 0x12], xmm0
movd xmm0, ecx
movzx ecx, word [rax + r9*2]
movzx r11d, r8b
mov r8, rdx
pinsrw xmm0, word [rax + rdi*2], 1
shr r8, 0x28
movd xmm3, ecx
movzx ecx, word [rax + r11*2]
pinsrw xmm3, word [rax + r10*2], 1
movzx r8d, r8b
mov qword [rsp + 0xe0], r8
mov r8, rdx
movd xmm1, ecx
mov rdi, qword [rsp + 0xe0]
shr r8, 0x30
shr rdx, 0x38
punpckldq xmm0, xmm3
mov byte [r15 + 0x42], 0
movzx r8d, r8b
pinsrw xmm1, word [rax + rdi*2], 1
movzx ecx, word [rax + r8*2]
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x54]
mov r8, rdx
movzx ecx, dl
mov r9, rdx
movzx edi, dh
shr r8, 0x18
movzx ecx, word [rax + rcx*2]
punpckldq xmm1, xmm2
shr r9, 0x10
movzx r10d, r8b
mov r8, rdx
punpcklqdq xmm0, xmm1
movzx r9d, r9b
shr r8, 0x20
movups xmmword [r15 + 0x22], xmm0
movd xmm0, ecx
movzx ecx, word [rax + r9*2]
movzx r11d, r8b
mov r8, rdx
pinsrw xmm0, word [rax + rdi*2], 1
mov r9d, 3
shr r8, 0x28
movd xmm3, ecx
movzx ecx, word [rax + r11*2]
pinsrw xmm3, word [rax + r10*2], 1
movzx r8d, r8b
mov qword [rsp + 0xe0], r8
mov r8, rdx
movd xmm1, ecx
mov rdi, qword [rsp + 0xe0]
shr r8, 0x30
shr rdx, 0x38
cmp bl, 8
punpckldq xmm0, xmm3
movzx r8d, r8b
pinsrw xmm1, word [rax + rdi*2], 1
movzx ecx, word [rax + r8*2]
lea r8, str.dap_chain_cs_esbocs
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
lea rdx, str.REJECT
lea rax, str.APPROVE
cmovne rax, rdx
punpckldq xmm1, xmm2
mov rdx, qword [r14 + 0x18]
xor ecx, ecx
punpcklqdq xmm0, xmm1
movups xmmword [r15 + 0x32], xmm0
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x48], rax
movzx eax, byte [r12 + 3]
mov dword [rsp + 0x40], eax
mov rax, qword [r14 + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rdx + 0x20]
mov qword [rsp + 0x30], rax
mov rax, qword [rdx + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Receive__s:_candidate__s
mov qword [rsp + 0x20], rax
call fcn.14005a150
cmp bl, 8
je 0x1401d0647
movzx eax, word [rsi + 0x5a]
add eax, 1
mov word [rsi + 0x5a], ax
cmp ax, word [rsp + 0xbe]
jb 0x1401cea20
cmp byte [rsi + 0x5e], 0
jne 0x1401cea20
mov rdi, qword [rsp + 0xa0]
mov rdx, qword [r14 + 0xf3]
mov rax, qword [r14 + 0xfb]
xor rdx, qword [r12 + 0x3c]
xor rax, qword [rdi + 8]
or rax, rdx
jne 0x1401cea20
mov rdx, qword [r14 + 0x103]
mov rax, qword [r14 + 0x10b]
xor rdx, qword [rdi + 0x10]
xor rax, qword [rdi + 0x18]
or rax, rdx
jne 0x1401cea20
mov byte [rsi + 0x5e], 1
mov rdx, qword [r14 + 0x18]
lea rdi, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Candidate__s_rejected_by_minimum_number_of_validators__attempt_failed
movzx r9d, byte [r12 + 3]
mov r8, qword [r14 + 0x38]
mov rcx, qword [rdx + 0x20]
mov rdx, qword [rdx + 0x28]
mov qword [rsp + 0x48], r15
cmp byte [rsp + 0xe8], 0
mov dword [rsp + 0x40], r9d
mov r9d, 3
mov qword [rsp + 0x38], r8
lea r8, str.dap_chain_cs_esbocs
mov qword [rsp + 0x30], rcx
cmove r8, rax
xor ecx, ecx
mov qword [rsp + 0x28], rdx
xor edx, edx
mov qword [rsp + 0x20], rdi
call fcn.14005a150
mov rcx, r14
call fcn.1401ca020
nop dword [rax + rax]
test r15, r15
je case.0x1401cdb15.1
mov rcx, r15
call sub.msvcrt.dll_free
jmp case.0x1401cdb15.1
cmp qword [rsp + 0xb0], 0x28
je 0x1401cf6e8
lea rax, str.Invalid_START_SYNC_message_size
mov r9d, 5
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rax
lea r8, str.dap_chain_cs_esbocs
call fcn.14005a150
jmp case.0x1401cdb15.1
mov rdx, r12
mov rcx, r14
call fcn.1401ca3b0
jmp case.0x1401cdb15.1
mov rax, qword [r12 + 0x64]
mov rdi, qword [rsp + 0xb0]
add rax, 0x14
cmp rax, rdi
je 0x1401d0064
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], rax
lea rax, str.Wrong_send_db_message_size__have__zu_bytes__must_be__zu_bytes
mov qword [rsp + 0x20], rax
mov r9d, 5
xor edx, edx
xor ecx, ecx
lea r8, str.dap_chain_cs_esbocs
call fcn.14005a150
jmp case.0x1401cdb15.1
mov rax, qword [rsp + 0xb0]
cmp rax, 0xd
ja 0x1401cf8a0
mov qword [rsp + 0x28], rax
lea rax, str.Wrong_commit_sign_message_size__have__zu_bytes_for_candidate_sign_section_when_requires_at_least__zu_bytes
mov qword [rsp + 0x30], 0xe
jmp 0x1401ceaa7
cmp qword [rsp + 0xb0], 0
je 0x1401cf4b8
mov rdi, qword [rsp + 0xa0]
mov rdx, qword [r12 + 0x3c]
xor rdx, qword [0x1403eb460]
mov rax, qword [rdi + 8]
xor rax, qword [0x1403eb468]
or rax, rdx
jne 0x1401ceb42
mov rdx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
xor rdx, qword [0x1403eb470]
xor rax, qword [0x1403eb478]
or rax, rdx
je 0x1401cf4b8
mov rdx, qword [rsp + 0x98]
mov r8, qword [rsp + 0xb0]
lea rcx, [rsp + 0xf0]
call fcn.140054770
mov rdi, qword [rsp + 0xa0]
mov rax, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0xf0]
xor rdx, qword [r12 + 0x3c]
xor rax, qword [rdi + 8]
or rax, rdx
jne 0x1401d0780
mov rax, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x100]
xor rax, qword [rdi + 0x18]
xor rdx, qword [rdi + 0x10]
or rax, rdx
jne 0x1401d0780
cmp byte [rsp + 0xe8], 0
je 0x1401cee8c
mov edx, 0x43
mov ecx, 1
call sub.msvcrt.dll_calloc
mov rdx, qword [r12 + 0x3c]
mov r15, rax
mov word [rax], 0x7830
lea rax, [0x14029e4b0]
movzx ecx, dl
mov r10, rdx
mov r8, rdx
mov r9, rdx
movzx ecx, word [rax + rcx*2]
shr r8, 0x20
shr r10, 0x10
movzx edi, dh
movzx r11d, r8b
movzx r10d, r10b
mov r8, rdx
shr r9, 0x18
shr r8, 0x28
movd xmm0, ecx
movzx ecx, word [rax + r10*2]
movzx r9d, r9b
movzx ebx, r8b
mov r8, rdx
shr rdx, 0x38
pinsrw xmm0, word [rax + rdi*2], 1
movd xmm3, ecx
shr r8, 0x30
movzx ecx, word [rax + r11*2]
pinsrw xmm3, word [rax + r9*2], 1
movzx r8d, r8b
movd xmm1, ecx
movzx ecx, word [rax + r8*2]
pinsrw xmm1, word [rax + rbx*2], 1
punpckldq xmm0, xmm3
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x44]
movzx ecx, dl
mov r10, rdx
mov r8, rdx
mov r9, rdx
movzx ecx, word [rax + rcx*2]
punpckldq xmm1, xmm2
shr r8, 0x20
movzx edi, dh
shr r10, 0x10
punpcklqdq xmm0, xmm1
movzx r11d, r8b
mov r8, rdx
movzx r10d, r10b
movups xmmword [r15 + 2], xmm0
shr r8, 0x28
movd xmm0, ecx
movzx ecx, word [rax + r10*2]
movzx ebx, r8b
mov r8, rdx
shr r9, 0x18
shr r8, 0x30
shr rdx, 0x38
movzx r9d, r9b
pinsrw xmm0, word [rax + rdi*2], 1
movd xmm3, ecx
movzx ecx, word [rax + r11*2]
movzx r8d, r8b
pinsrw xmm3, word [rax + r9*2], 1
movd xmm1, ecx
movzx ecx, word [rax + r8*2]
pinsrw xmm1, word [rax + rbx*2], 1
punpckldq xmm0, xmm3
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x4c]
movzx ecx, dl
mov r10, rdx
mov r8, rdx
mov r9, rdx
movzx ecx, word [rax + rcx*2]
punpckldq xmm1, xmm2
shr r8, 0x20
movzx edi, dh
shr r10, 0x10
punpcklqdq xmm0, xmm1
movzx r11d, r8b
mov r8, rdx
movzx r10d, r10b
movups xmmword [r15 + 0x12], xmm0
shr r8, 0x28
movd xmm0, ecx
movzx ecx, word [rax + r10*2]
movzx ebx, r8b
mov r8, rdx
shr r9, 0x18
shr r8, 0x30
movzx r9d, r9b
shr rdx, 0x38
pinsrw xmm0, word [rax + rdi*2], 1
movd xmm3, ecx
movzx ecx, word [rax + r11*2]
movzx r8d, r8b
pinsrw xmm3, word [rax + r9*2], 1
movd xmm1, ecx
movzx ecx, word [rax + r8*2]
pinsrw xmm1, word [rax + rbx*2], 1
punpckldq xmm0, xmm3
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x54]
punpckldq xmm1, xmm2
movzx ecx, dl
mov r10, rdx
mov r8, rdx
punpcklqdq xmm0, xmm1
shr r8, 0x20
mov r9, rdx
movzx edi, dh
movups xmmword [r15 + 0x22], xmm0
shr r10, 0x10
movzx ecx, word [rax + rcx*2]
movzx r11d, r8b
movzx r10d, r10b
mov r8, rdx
shr r9, 0x18
mov byte [r15 + 0x42], 0
shr r8, 0x28
movd xmm0, ecx
movzx ecx, word [rax + r10*2]
movzx r9d, r9b
movzx ebx, r8b
mov r8, rdx
shr rdx, 0x38
pinsrw xmm0, word [rax + rdi*2], 1
movd xmm3, ecx
shr r8, 0x30
movzx ecx, word [rax + r11*2]
pinsrw xmm3, word [rax + r9*2], 1
movzx r8d, r8b
mov rdi, qword [rsp + 0xb0]
mov r9d, 3
movd xmm1, ecx
movzx ecx, word [rax + r8*2]
pinsrw xmm1, word [rax + rbx*2], 1
punpckldq xmm0, xmm3
lea r8, str.dap_chain_cs_esbocs
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rax, qword [r14 + 0x18]
xor ecx, ecx
punpckldq xmm1, xmm2
punpcklqdq xmm0, xmm1
movups xmmword [r15 + 0x32], xmm0
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x48], r15
movzx edx, byte [r12 + 3]
mov dword [rsp + 0x40], edx
mov rdx, qword [r14 + 0x38]
mov qword [rsp + 0x38], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Receive_SUBMIT_candidate__s__size__zu
mov qword [rsp + 0x20], rax
call fcn.14005a150
mov rcx, r15
call sub.msvcrt.dll_free
mov rdi, qword [r14 + 0x68]
test rdi, rdi
je 0x1401d0fae
movzx eax, byte [r12 + 0x41]
movzx edx, byte [r12 + 0x40]
movzx ecx, byte [r12 + 0x44]
movzx r8d, byte [r12 + 0x3c]
shl eax, 8
movzx r9d, byte [r12 + 0x4e]
lea edx, [rdx + rax - 0x61c88647]
movzx eax, byte [r12 + 0x42]
shl eax, 0x10
add edx, eax
movzx eax, byte [r12 + 0x43]
shl eax, 0x18
add edx, eax
movzx eax, byte [r12 + 0x45]
shl eax, 8
lea eax, [rcx + rax - 0x1124111]
movzx ecx, byte [r12 + 0x46]
shl ecx, 0x10
add eax, ecx
movzx ecx, byte [r12 + 0x47]
shl ecx, 0x18
add eax, ecx
movzx ecx, byte [r12 + 0x3d]
shl ecx, 8
lea ecx, [rcx + r8 - 0x61c88647]
movzx r8d, byte [r12 + 0x3e]
shl r8d, 0x10
add ecx, r8d
movzx r8d, byte [r12 + 0x3f]
shl r8d, 0x18
add ecx, r8d
mov r8d, eax
sub ecx, edx
shr r8d, 0xd
sub edx, eax
sub ecx, eax
xor ecx, r8d
mov r8d, ecx
sub edx, ecx
sub eax, ecx
shl r8d, 8
xor r8d, edx
mov edx, r8d
sub eax, r8d
shr edx, 0xd
xor edx, eax
mov eax, ecx
sub eax, r8d
mov ecx, edx
sub r8d, edx
sub eax, edx
shr ecx, 0xc
xor ecx, eax
mov eax, ecx
sub r8d, ecx
sub edx, ecx
shl r9d, 0x10
shl eax, 0x10
xor eax, r8d
sub edx, eax
sub ecx, eax
mov r8d, edx
mov edx, eax
shr edx, 5
xor edx, r8d
mov r8d, edx
sub ecx, edx
sub eax, edx
shr r8d, 3
xor r8d, ecx
sub eax, r8d
sub edx, r8d
mov ecx, eax
mov eax, r8d
shl eax, 0xa
xor eax, ecx
mov ecx, eax
sub edx, eax
shr ecx, 0xf
xor ecx, edx
movzx edx, byte [r12 + 0x4d]
shl edx, 8
add edx, r9d
movzx r9d, byte [r12 + 0x4c]
add edx, r9d
movzx r9d, byte [r12 + 0x4f]
shl r9d, 0x18
add edx, r9d
movzx r9d, byte [r12 + 0x52]
add edx, eax
movzx eax, byte [r12 + 0x51]
shl r9d, 0x10
shl eax, 8
add eax, r9d
movzx r9d, byte [r12 + 0x50]
add eax, r9d
movzx r9d, byte [r12 + 0x53]
shl r9d, 0x18
add eax, r9d
movzx r9d, byte [r12 + 0x4a]
add eax, ecx
movzx ecx, byte [r12 + 0x49]
shl r9d, 0x10
shl ecx, 8
add ecx, r9d
movzx r9d, byte [r12 + 0x48]
add ecx, r9d
movzx r9d, byte [r12 + 0x4b]
shl r9d, 0x18
add ecx, r9d
movzx r9d, byte [r12 + 0x5a]
add ecx, r8d
mov r8d, eax
sub ecx, edx
shr r8d, 0xd
sub edx, eax
sub ecx, eax
xor ecx, r8d
sub edx, ecx
sub eax, ecx
mov r8d, edx
mov edx, ecx
shl edx, 8
xor edx, r8d
sub eax, edx
sub ecx, edx
mov r8d, eax
mov eax, edx
shr eax, 0xd
xor eax, r8d
sub ecx, eax
sub edx, eax
mov r8d, ecx
mov ecx, eax
shr ecx, 0xc
xor ecx, r8d
sub edx, ecx
sub eax, ecx
mov r8d, edx
mov edx, ecx
shl edx, 0x10
xor edx, r8d
sub eax, edx
mov r8d, eax
mov eax, edx
shr eax, 5
xor eax, r8d
sub ecx, edx
shl r9d, 0x10
mov r8d, eax
sub ecx, eax
sub edx, eax
shr r8d, 3
xor r8d, ecx
mov ecx, edx
mov edx, r8d
sub ecx, r8d
sub eax, r8d
shl edx, 0xa
xor edx, ecx
mov ecx, edx
sub eax, edx
shr ecx, 0xf
xor ecx, eax
movzx eax, byte [r12 + 0x5b]
add ecx, 0x20
shl eax, 0x18
add eax, r9d
movzx r9d, byte [r12 + 0x58]
add eax, r9d
movzx r9d, byte [r12 + 0x59]
shl r9d, 8
add eax, r9d
movzx r9d, byte [r12 + 0x56]
add eax, edx
movzx edx, byte [r12 + 0x57]
shl r9d, 0x10
shl edx, 0x18
add edx, r9d
movzx r9d, byte [r12 + 0x54]
add edx, r9d
movzx r9d, byte [r12 + 0x55]
shl r9d, 8
add edx, r9d
add edx, r8d
mov r8d, ecx
sub edx, ecx
shr r8d, 0xd
sub edx, eax
sub eax, ecx
xor r8d, edx
mov edx, r8d
sub eax, r8d
sub ecx, r8d
shl edx, 8
xor edx, eax
mov eax, edx
sub ecx, edx
sub r8d, edx
shr eax, 0xd
xor eax, ecx
mov ecx, eax
sub r8d, eax
sub edx, eax
shr ecx, 0xc
xor ecx, r8d
sub edx, ecx
sub eax, ecx
mov r8d, edx
mov edx, ecx
shl edx, 0x10
xor edx, r8d
sub eax, edx
sub ecx, edx
mov r8d, eax
mov eax, edx
shr eax, 5
xor eax, r8d
mov r8d, eax
sub ecx, eax
sub edx, eax
shr r8d, 3
xor ecx, r8d
mov r8d, ecx
sub edx, ecx
sub eax, ecx
mov rcx, qword [rdi + 0x68]
shl r8d, 0xa
xor edx, r8d
sub eax, edx
shr edx, 0xf
xor edx, eax
mov eax, dword [rcx + 8]
sub eax, 1
and eax, edx
shl rax, 4
add rax, qword [rcx]
mov rax, qword [rax]
test rax, rax
je 0x1401d0fae
mov r8, qword [rcx + 0x20]
mov r10, qword [rsp + 0xa0]
mov rcx, r8
sub rax, r8
neg rcx
jmp 0x1401cf1d3
mov rax, qword [rax + 0x88]
test rax, rax
je 0x1401d0fae
add rax, rcx
cmp dword [rax + 0x9c], edx
jne 0x1401cf1c0
cmp dword [rax + 0x98], 0x20
jne 0x1401cf1c0
mov r9, qword [rax + 0x90]
mov r11, qword [r9]
mov r8, qword [r9 + 8]
xor r11, qword [r10]
xor r8, qword [r10 + 8]
or r8, r11
jne 0x1401cf1c0
mov r11, qword [r9 + 0x10]
mov r8, qword [r9 + 0x18]
xor r11, qword [r10 + 0x10]
xor r8, qword [r10 + 0x18]
or r8, r11
jne 0x1401cf1c0
mov edx, 0x43
mov ecx, 1
call sub.msvcrt.dll_calloc
mov rcx, qword [r12 + 0x3c]
mov r15, rax
mov word [rax], 0x7830
lea rax, [0x14029e4b0]
movzx edi, cl
mov rbx, rcx
mov r10, rcx
mov r8, rcx
movzx edx, word [rax + rdi*2]
shr rbx, 0x10
shr r10, 0x20
mov r11, rcx
movzx ebx, bl
movzx r10d, r10b
shr r8, 0x30
mov r9, rcx
movd xmm0, edx
movzx edx, word [rax + rbx*2]
movzx r8d, r8b
movzx esi, ch
shr r11, 0x18
shr rcx, 0x38
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm3, edx
movzx edx, word [rax + r10*2]
shr r9, 0x28
movzx r11d, r11b
movzx r9d, r9b
pinsrw xmm3, word [rax + r11*2], 1
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
mov rcx, qword [r12 + 0x44]
movzx edi, cl
mov rbx, rcx
punpckldq xmm1, xmm2
mov r10, rcx
movzx edx, word [rax + rdi*2]
shr rbx, 0x10
punpcklqdq xmm0, xmm1
shr r10, 0x20
movzx ebx, bl
movups xmmword [r15 + 2], xmm0
movzx r10d, r10b
mov r8, rcx
movd xmm0, edx
movzx edx, word [rax + rbx*2]
shr r8, 0x30
mov r11, rcx
movzx r8d, r8b
mov r9, rcx
movzx esi, ch
shr r11, 0x18
shr rcx, 0x38
movd xmm3, edx
movzx edx, word [rax + r10*2]
shr r9, 0x28
movzx r11d, r11b
movzx r9d, r9b
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm3, word [rax + r11*2], 1
pinsrw xmm1, word [rax + r9*2], 1
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
mov rcx, qword [r12 + 0x4c]
punpckldq xmm0, xmm3
movzx edi, cl
mov rbx, rcx
punpckldq xmm1, xmm2
mov r10, rcx
movzx edx, word [rax + rdi*2]
shr rbx, 0x10
punpcklqdq xmm0, xmm1
shr r10, 0x20
movzx ebx, bl
movups xmmword [r15 + 0x12], xmm0
movzx r10d, r10b
mov r8, rcx
movd xmm0, edx
movzx edx, word [rax + rbx*2]
shr r8, 0x30
mov r11, rcx
mov r9, rcx
movzx r8d, r8b
shr r11, 0x18
movzx esi, ch
shr r9, 0x28
movd xmm3, edx
movzx edx, word [rax + r10*2]
shr rcx, 0x38
movzx r11d, r11b
movzx r9d, r9b
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm3, word [rax + r11*2], 1
pinsrw xmm1, word [rax + r9*2], 1
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
mov rcx, qword [r12 + 0x54]
punpckldq xmm0, xmm3
punpckldq xmm1, xmm2
movzx edi, cl
mov rbx, rcx
mov r10, rcx
punpcklqdq xmm0, xmm1
shr rbx, 0x10
mov r8, rcx
mov r11, rcx
movups xmmword [r15 + 0x22], xmm0
movzx edx, word [rax + rdi*2]
movzx ebx, bl
shr r10, 0x20
movzx r10d, r10b
shr r8, 0x30
mov r9, rcx
movzx esi, ch
movd xmm0, edx
movzx edx, word [rax + rbx*2]
movzx r8d, r8b
shr r11, 0x18
shr r9, 0x28
movzx r11d, r11b
shr rcx, 0x38
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm3, edx
movzx edx, word [rax + r10*2]
movzx r9d, r9b
pinsrw xmm3, word [rax + r11*2], 1
mov byte [r15 + 0x42], 0
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
mov r9d, 5
lea r8, str.dap_chain_cs_esbocs
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
xor edx, edx
xor ecx, ecx
lea rax, str.Duplicate_candidate:__s
punpckldq xmm1, xmm2
punpcklqdq xmm0, xmm1
movups xmmword [r15 + 0x32], xmm0
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call fcn.14005a150
mov rcx, r15
call sub.msvcrt.dll_free
jmp case.0x1401cdb15.1
mov rax, qword [r14 + 0x18]
movzx r9d, byte [r12 + 3]
mov r10d, 0
lea r8, str.dap_chain_cs_esbocs
mov rcx, qword [r14 + 0x38]
cmp byte [rsp + 0xe8], 0
mov rdx, qword [rax + 0x20]
mov rax, qword [rax + 0x28]
mov dword [rsp + 0x40], r9d
cmove r8, r10
mov qword [rsp + 0x38], rcx
mov r9d, 3
xor ecx, ecx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Receive_SUBMIT_candidate_NULL
mov qword [rsp + 0x30], rdx
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.14005a150
lea rcx, [r14 + 0xa6]
mov r8d, 0x4d
mov rdx, rsi
call sub.msvcrt.dll_memcmp
test eax, eax
jne case.0x1401cdb15.1
mov rcx, r14
call fcn.1401ca020
jmp case.0x1401cdb15.1
mov qword [rsp + 0x20], rsi
mov r8, qword [rbp + 0x38]
mov r9, rdi
mov rdx, r12
mov rcx, r14
call fcn.1401bb900
jmp 0x1401cdb2d
mov rax, qword [r14 + 0x18]
mov rdx, qword [rsp + 0xc0]
lea rsi, [rsp + 0x110]
mov rcx, rsi
mov r8, qword [rax + 0x10]
call fcn.140078aa0
mov rcx, qword [r14 + 0x70]
test rcx, rcx
je 0x1401cf6c7
movzx r10d, byte [r12 + 2]
mov rbx, qword [rcx + 0x88]
cmp r10b, 0x12
sete byte [rsp + 0xdc]
cmp r10b, 8
sete r11b
cmp r10b, 0x24
sete byte [rsp + 0xe0]
cmp r10b, 0x22
sete byte [rsp + 0xd8]
cmp r10b, 0x32
jne 0x1401d16a7
mov qword [rbp + 0x28], rdi
mov rdi, qword [rcx + 0x20]
mov qword [rsp + 0xe0], r15
mov r15, rsi
mov rsi, rbx
mov rbx, qword [rsp + 0xa0]
cmp byte [rdi + 2], 0x32
je 0x1401cf615
nop dword [rax]
test rsi, rsi
je 0x1401cf6c0
mov rcx, rsi
mov rsi, qword [rsi + 0x88]
mov rdi, qword [rcx + 0x20]
cmp byte [rdi + 2], 0x32
jne 0x1401cf5f8
add rcx, 0x28
mov r8d, 0x4d
mov rdx, r15
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1401cf5f8
mov rcx, qword [rdi + 0x3c]
mov rax, qword [rdi + 0x44]
xor rcx, qword [rbx]
xor rax, qword [rbx + 8]
or rax, rcx
jne 0x1401cf5f8
mov rcx, qword [rdi + 0x4c]
mov rax, qword [rdi + 0x54]
xor rcx, qword [rbx + 0x10]
xor rax, qword [rbx + 0x18]
or rax, rcx
jne 0x1401cf5f8
mov rax, qword [r12 + 0x5c]
cmp qword [rdi + 0x5c], rax
jne 0x1401cf5f8
mov r15, qword [rsp + 0xe0]
lea rax, str.START_SYNC
mov rdx, qword [r14 + 0x18]
mov qword [rsp + 0x48], rax
mov r8, r15
xor ecx, ecx
movzx eax, byte [r12 + 3]
mov r9d, 3
mov dword [rsp + 0x40], eax
mov rax, qword [r14 + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rdx + 0x20]
mov qword [rsp + 0x30], rax
mov rax, qword [rdx + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Message_rejected:_duplicate_message__s
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x1401cdc16
mov rdi, qword [rbp + 0x28]
mov rsi, r15
mov qword [rsp + 0x20], rsi
mov r8, qword [rbp + 0x38]
mov r9, rdi
mov rdx, r12
mov rcx, r14
call fcn.1401bb900
jmp 0x1401cdab0
mov rax, qword [r14 + 0x18]
mov r10, qword [r12 + 0x5c]
mov r8d, 0
lea rdi, str.dap_chain_cs_esbocs
mov rcx, qword [r12 + 4]
cmp byte [rsp + 0xe8], 0
mov r9d, 3
mov rdx, qword [rax + 0x20]
mov rax, qword [rax + 0x28]
cmove rdi, r8
mov qword [rsp + 0x48], r10
mov qword [rsp + 0x38], rcx
xor ecx, ecx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu_Receive_START_SYNC:_from_validator:_s__sync_attempt__llu
mov r8, rdi
mov qword [rsp + 0x30], rdx
xor edx, edx
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], r15
mov qword [rsp + 0xe8], r10
call fcn.14005a150
mov rax, qword [r14 + 0x20]
mov r10, qword [rsp + 0xe8]
mov rax, qword [rax + 0x18]
cmp byte [rax + 0x2f], 0
jne 0x1401cf8d7
mov rdx, qword [r12 + 0x64]
mov rax, qword [r12 + 0x6c]
lea rbx, [r14 + 0x1d8]
xor rax, qword [r14 + 0x1e0]
xor rdx, qword [r14 + 0x1d8]
or rax, rdx
jne 0x1401cf7af
mov rdx, qword [r12 + 0x74]
mov rax, qword [r12 + 0x7c]
xor rdx, qword [rbx + 0x10]
xor rax, qword [rbx + 0x18]
or rax, rdx
je 0x1401cf8d7
mov rdx, qword [r14 + 0x128]
mov rax, qword [r14 + 0x18]
xor ecx, ecx
mov r8, rdi
mov r9d, 3
mov qword [rsp + 0x40], rdx
mov rdx, qword [r14 + 0x38]
mov qword [rsp + 0x38], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__sync_attempt__llu_SYNC_message_is_rejected_cause_DB_hash_mismatch
mov qword [rsp + 0x20], rax
call fcn.14005a150
cmp qword [r14 + 0x1d0], 0
je case.0x1401cdb15.1
mov edx, 0x77
mov ecx, 1
call sub.msvcrt.dll_calloc
mov r12, rax
test rax, rax
je 0x1401d1a68
mov rcx, qword [rsp + 0x111]
lea rdx, [rsp + 0x11d]
call fcn.1400aa6e0
test rax, rax
je case.0x1401cdb15.1
mov rax, qword [rax + 0x9d]
lea rdi, [r12 + 8]
mov ecx, 0x4d
mov rdx, r12
mov qword [r12], rax
rep movsb byte [rdi], byte [rsi]
call fcn.1400f5a70
mov rcx, r14
mov r8, rbx
mov edx, 0x36
mov r9, qword [r14 + 0x1d0]
mov r12, rax
mov qword [rsp + 0x28], rax
mov rax, qword [r9 + 8]
add rax, 0x14
mov qword [rsp + 0x20], rax
call fcn.1401bc000
xor edx, edx
mov rcx, r12
call fcn.1400f5f60
jmp case.0x1401cdb15.1
mov rcx, qword [rsp + 0x98]
call fcn.1400fd4d0
mov rsi, rax
mov rax, qword [rsp + 0xb0]
cmp rax, rsi
je 0x1401d010f
mov qword [rsp + 0x30], rax
lea rax, str.Wrong_commit_sign_message_size__have__zu_bytes_for_candidate_sign_section_when_requires__zu_bytes
mov qword [rsp + 0x28], rsi
jmp 0x1401ceaa7
mov rax, qword [r14 + 0x128]
cmp rax, r10
je 0x1401d0c33
mov rdx, qword [r14 + 0x18]
mov r8, qword [r14 + 0x38]
mov rcx, qword [rdx + 0x20]
mov rdx, qword [rdx + 0x28]
ja 0x1401d07e3
mov r9, r10
sub r9, rax
cmp r9, 0xffff
jbe 0x1401d081f
lea rax, str.net:_s__chain:_s__round:_llu_SYNC_message_is_rejected___too_much_sync_attempt_difference__llu
mov qword [rsp + 0x40], r9
mov r9d, 3
mov qword [rsp + 0x38], r8
mov r8, rdi
mov qword [rsp + 0x30], rcx
xor ecx, ecx
mov qword [rsp + 0x28], rdx
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp case.0x1401cdb15.1
mov edx, 0x43
mov ecx, 1
call sub.msvcrt.dll_calloc
mov rdx, qword [r12 + 0x3c]
mov r8d, 0x7830
mov r15, rax
mov word [rax], r8w
lea rax, [0x14029e4b0]
movzx ecx, dl
movzx esi, dh
mov r10, rdx
mov r8, rdx
movzx ecx, word [rax + rcx*2]
shr r10, 0x20
shr r8, 0x30
mov r11, rdx
movzx r10d, r10b
movzx r8d, r8b
mov r9, rdx
shr r11, 0x18
mov qword [rsp + 0xe8], rsi
mov rsi, rdx
movd xmm0, ecx
shr rdx, 0x38
mov rcx, qword [rsp + 0xe8]
shr rsi, 0x10
shr r9, 0x28
movzx r11d, r11b
movzx esi, sil
movzx r9d, r9b
pinsrw xmm0, word [rax + rcx*2], 1
movzx ecx, word [rax + rsi*2]
movd xmm3, ecx
movzx ecx, word [rax + r10*2]
pinsrw xmm3, word [rax + r11*2], 1
movd xmm1, ecx
movzx ecx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x44]
movzx ecx, dl
punpckldq xmm1, xmm2
movzx esi, dh
mov r10, rdx
movzx ecx, word [rax + rcx*2]
punpcklqdq xmm0, xmm1
shr r10, 0x20
mov r8, rdx
movups xmmword [r15 + 2], xmm0
movzx r10d, r10b
shr r8, 0x30
mov r11, rdx
movd xmm0, ecx
movzx r8d, r8b
mov r9, rdx
shr r11, 0x18
mov qword [rsp + 0xe8], rsi
mov rsi, rdx
shr r9, 0x28
mov rcx, qword [rsp + 0xe8]
shr rsi, 0x10
shr rdx, 0x38
movzx r11d, r11b
movzx r9d, r9b
movzx esi, sil
pinsrw xmm0, word [rax + rcx*2], 1
movzx ecx, word [rax + rsi*2]
movd xmm3, ecx
movzx ecx, word [rax + r10*2]
pinsrw xmm3, word [rax + r11*2], 1
movd xmm1, ecx
movzx ecx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x4c]
movzx ecx, dl
punpckldq xmm1, xmm2
movzx esi, dh
mov r11, rdx
movzx ecx, word [rax + rcx*2]
punpcklqdq xmm0, xmm1
mov r10, rdx
shr r11, 0x18
movups xmmword [r15 + 0x12], xmm0
shr r10, 0x20
movzx r11d, r11b
mov r8, rdx
movd xmm0, ecx
movzx r10d, r10b
shr r8, 0x30
mov r9, rdx
mov qword [rsp + 0xe8], rsi
mov rsi, rdx
movzx r8d, r8b
mov rcx, qword [rsp + 0xe8]
shr rsi, 0x10
shr rdx, 0x38
movzx esi, sil
pinsrw xmm0, word [rax + rcx*2], 1
shr r9, 0x28
movzx ecx, word [rax + rsi*2]
movzx r9d, r9b
movd xmm3, ecx
pinsrw xmm3, word [rax + r11*2], 1
movzx ecx, word [rax + r10*2]
mov byte [r15 + 0x42], 0
movd xmm1, ecx
movzx ecx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x54]
movzx ecx, dl
punpckldq xmm1, xmm2
movzx esi, dh
mov r10, rdx
movzx ecx, word [rax + rcx*2]
punpcklqdq xmm0, xmm1
shr r10, 0x20
mov r8, rdx
movups xmmword [r15 + 0x22], xmm0
movzx r10d, r10b
shr r8, 0x30
mov r11, rdx
movd xmm0, ecx
mov r9, rdx
movzx r8d, r8b
shr r11, 0x18
mov qword [rsp + 0xe8], rsi
mov rsi, rdx
shr r9, 0x28
mov rcx, qword [rsp + 0xe8]
shr rsi, 0x10
shr rdx, 0x38
movzx r11d, r11b
movzx r9d, r9b
movzx esi, sil
pinsrw xmm0, word [rax + rcx*2], 1
cmp bl, 8
movzx ecx, word [rax + rsi*2]
movd xmm3, ecx
movzx ecx, word [rax + r10*2]
pinsrw xmm3, word [rax + r11*2], 1
movd xmm1, ecx
movzx ecx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
mov r9d, 3
lea r8, str.dap_chain_cs_esbocs
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
lea rdx, str.REJECT
lea rax, str.APPROVE
cmovne rax, rdx
punpckldq xmm1, xmm2
mov rdx, qword [r14 + 0x18]
xor ecx, ecx
punpcklqdq xmm0, xmm1
movups xmmword [r15 + 0x32], xmm0
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x48], rax
movzx eax, byte [r12 + 3]
mov dword [rsp + 0x40], eax
mov rax, qword [r14 + 0x38]
mov qword [rsp + 0x38], rax
mov rax, qword [rdx + 0x20]
mov qword [rsp + 0x30], rax
mov rax, qword [rdx + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Receive__s_message_for_unknown_candidate__s__process_it_later
mov qword [rsp + 0x20], rax
call fcn.14005a150
mov rcx, qword [r14 + 0x70]
test rcx, rcx
je 0x1401cea29
movzx eax, byte [rdi + 5]
movzx edx, byte [rdi + 4]
shl eax, 8
lea r9d, [rdx + rax - 0x61c88647]
movzx eax, byte [rdi + 6]
movzx edx, byte [rdi + 8]
shl eax, 0x10
add r9d, eax
movzx eax, byte [rdi + 7]
shl eax, 0x18
add r9d, eax
movzx eax, byte [rdi + 9]
shl eax, 8
lea r8d, [rdx + rax - 0x1124111]
movzx eax, byte [rdi + 0xa]
movzx edx, byte [rdi]
shl eax, 0x10
add r8d, eax
movzx eax, byte [rdi + 0xb]
shl eax, 0x18
add r8d, eax
movzx eax, byte [rdi + 1]
shl eax, 8
lea eax, [rdx + rax - 0x61c88647]
movzx edx, byte [rdi + 2]
shl edx, 0x10
add eax, edx
movzx edx, byte [rdi + 3]
shl edx, 0x18
add eax, edx
mov edx, r8d
sub eax, r9d
shr edx, 0xd
sub r9d, r8d
sub eax, r8d
xor edx, eax
mov eax, edx
sub r9d, edx
sub r8d, edx
shl eax, 8
xor eax, r9d
mov r9d, eax
sub r8d, eax
sub edx, eax
shr r9d, 0xd
xor r9d, r8d
mov r8d, r9d
sub edx, r9d
sub eax, r9d
shr r8d, 0xc
xor r8d, edx
mov edx, r8d
sub eax, r8d
sub r9d, r8d
shl edx, 0x10
xor edx, eax
mov eax, edx
sub r9d, edx
sub r8d, edx
shr eax, 5
xor eax, r9d
mov r9d, eax
sub r8d, eax
sub edx, eax
shr r9d, 3
xor r9d, r8d
mov r10d, r9d
sub edx, r9d
sub eax, r9d
shl r10d, 0xa
xor r10d, edx
movzx edx, byte [rdi + 0x11]
mov r8d, r10d
sub eax, r10d
shr r8d, 0xf
shl edx, 8
xor r8d, eax
movzx eax, byte [rdi + 0x12]
shl eax, 0x10
add edx, eax
movzx eax, byte [rdi + 0x10]
add edx, eax
movzx eax, byte [rdi + 0x13]
shl eax, 0x18
add edx, eax
movzx eax, byte [rdi + 0x15]
add edx, r10d
movzx r10d, byte [rdi + 0x16]
shl eax, 8
shl r10d, 0x10
add eax, r10d
movzx r10d, byte [rdi + 0x14]
add eax, r10d
movzx r10d, byte [rdi + 0x17]
shl r10d, 0x18
add eax, r10d
movzx r10d, byte [rdi + 0xe]
add eax, r8d
movzx r8d, byte [rdi + 0xd]
shl r10d, 0x10
shl r8d, 8
add r8d, r10d
movzx r10d, byte [rdi + 0xc]
add r8d, r10d
movzx r10d, byte [rdi + 0xf]
shl r10d, 0x18
add r8d, r10d
add r8d, r9d
mov r9d, eax
sub r8d, edx
shr r9d, 0xd
sub edx, eax
sub r8d, eax
xor r8d, r9d
mov r10d, r8d
sub edx, r8d
sub eax, r8d
shl r10d, 8
xor r10d, edx
mov edx, eax
mov r9d, r10d
sub edx, r10d
sub r8d, r10d
mov eax, r10d
shr r9d, 0xd
movzx r10d, byte [rdi + 0x1e]
xor r9d, edx
mov edx, r9d
sub r8d, r9d
sub eax, r9d
shr edx, 0xc
xor edx, r8d
mov r8d, edx
sub eax, edx
sub r9d, edx
shl r8d, 0x10
xor r8d, eax
mov eax, r8d
sub r9d, r8d
shr eax, 5
xor eax, r9d
sub edx, r8d
shl r10d, 0x10
mov r9d, eax
sub edx, eax
sub r8d, eax
shr r9d, 3
xor r9d, edx
mov edx, r9d
sub r8d, r9d
sub eax, r9d
shl edx, 0xa
xor edx, r8d
mov r8d, edx
sub eax, edx
shr r8d, 0xf
xor r8d, eax
movzx eax, byte [rdi + 0x1f]
add r8d, 0x20
shl eax, 0x18
add eax, r10d
movzx r10d, byte [rdi + 0x1c]
add eax, r10d
movzx r10d, byte [rdi + 0x1d]
shl r10d, 8
add eax, r10d
movzx r10d, byte [rdi + 0x1a]
add eax, edx
movzx edx, byte [rdi + 0x1b]
shl r10d, 0x10
shl edx, 0x18
add edx, r10d
movzx r10d, byte [rdi + 0x18]
add edx, r10d
movzx r10d, byte [rdi + 0x19]
mov rcx, qword [rcx + 0x78]
shl r10d, 8
add edx, r10d
add edx, r9d
mov r9d, r8d
sub edx, r8d
shr r9d, 0xd
sub edx, eax
sub eax, r8d
xor edx, r9d
sub eax, edx
sub r8d, edx
mov r9d, eax
mov eax, edx
shl eax, 8
xor eax, r9d
mov r9d, eax
sub r8d, eax
sub edx, eax
shr r9d, 0xd
xor r9d, r8d
mov r8d, r9d
sub edx, r9d
sub eax, r9d
shr r8d, 0xc
xor r8d, edx
mov edx, r8d
sub eax, r8d
sub r9d, r8d
shl edx, 0x10
xor edx, eax
mov eax, edx
sub r9d, edx
sub r8d, edx
shr eax, 5
xor eax, r9d
mov r9d, eax
sub r8d, eax
sub edx, eax
shr r9d, 3
xor r9d, r8d
mov r8d, r9d
sub edx, r9d
sub eax, r9d
shl r8d, 0xa
xor edx, r8d
sub eax, edx
shr edx, 0xf
xor edx, eax
mov eax, dword [rcx + 8]
sub eax, 1
and eax, edx
shl rax, 4
add rax, qword [rcx]
mov rax, qword [rax]
test rax, rax
je 0x1401cea29
mov r8, qword [rcx + 0x20]
mov rcx, r8
sub rax, r8
neg rcx
jmp 0x1401cff93
mov rax, qword [rax + 0x98]
test rax, rax
je 0x1401cea29
add rax, rcx
cmp dword [rax + 0xac], edx
jne 0x1401cff80
cmp dword [rax + 0xa8], 0x20
jne 0x1401cff80
mov r10, qword [rax + 0xa0]
mov r9, qword [r10]
mov r8, qword [r10 + 8]
xor r9, qword [rdi]
xor r8, qword [rdi + 8]
or r8, r9
jne 0x1401cff80
mov r9, qword [r10 + 0x10]
mov r8, qword [r10 + 0x18]
xor r9, qword [rdi + 0x10]
xor r8, qword [rdi + 0x18]
or r8, r9
jne 0x1401cff80
mov byte [rax + 0x75], 1
jmp 0x1401cea29
mov rsi, qword [rsp + 0xa0]
mov rdx, qword [r12 + 0x3c]
xor rdx, qword [r14 + 0x41]
mov rax, qword [rsi + 8]
xor rax, qword [r14 + 0x49]
or rax, rdx
jne 0x1401d0013
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 0x18]
xor rdx, qword [r14 + 0x51]
xor rax, qword [r14 + 0x59]
or rax, rdx
je 0x1401cde36
mov rax, qword [r14 + 0x18]
mov rdx, qword [r14 + 0x38]
mov r8, r15
xor ecx, ecx
mov r9d, 3
mov qword [rsp + 0x38], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu._Sync_message_with_different_last_block_hash_was_added_to_the_queue
mov qword [rsp + 0x20], rax
call fcn.14005a150
mov r8, qword [rbp + 0x38]
mov rdx, r12
mov rcx, r14
call fcn.1401d4e60
jmp 0x1401cdc16
mov rcx, qword [rsp + 0x98]
lea rdx, [rsp + 0xf0]
mov qword [rsp + 0xf0], 0
call fcn.1400d5e30
mov rdx, qword [rsp + 0xf0]
xor r9d, r9d
xor r8d, r8d
mov rcx, rax
call fcn.1400d64e0
jmp case.0x1401cdb15.1
movzx edx, word [r13]
mov rax, qword [r14 + 0x18]
mov r8, r15
xor ecx, ecx
mov r9d, 3
mov dword [rsp + 0x60], edx
movzx edx, word [r13 + 2]
mov dword [rsp + 0x58], edx
movzx edx, word [r13 + 4]
mov dword [rsp + 0x50], edx
movzx edx, word [r13 + 6]
mov dword [rsp + 0x48], edx
movzx edx, byte [r14 + 0x40]
mov dword [rsp + 0x40], edx
mov rdx, qword [r14 + 0x38]
mov qword [rsp + 0x38], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Message_rejected_from_addr:_04hX::_04hX::_04hX::_04hX_not_passed_verification
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x1401cdc16
mov rcx, qword [r14 + 0x68]
test rcx, rcx
je 0x1401d0970
movzx eax, byte [r12 + 0x41]
movzx edx, byte [r12 + 0x40]
movzx r8d, byte [r12 + 0x44]
movzx r9d, byte [r12 + 0x3c]
shl eax, 8
lea edx, [rdx + rax - 0x61c88647]
movzx eax, byte [r12 + 0x42]
shl eax, 0x10
add edx, eax
movzx eax, byte [r12 + 0x43]
shl eax, 0x18
add edx, eax
movzx eax, byte [r12 + 0x45]
shl eax, 8
lea eax, [r8 + rax - 0x1124111]
movzx r8d, byte [r12 + 0x46]
shl r8d, 0x10
add eax, r8d
movzx r8d, byte [r12 + 0x47]
shl r8d, 0x18
add eax, r8d
movzx r8d, byte [r12 + 0x3d]
shl r8d, 8
lea r9d, [r8 + r9 - 0x61c88647]
movzx r8d, byte [r12 + 0x3e]
shl r8d, 0x10
add r9d, r8d
movzx r8d, byte [r12 + 0x3f]
shl r8d, 0x18
add r9d, r8d
mov r8d, eax
sub r9d, edx
shr r8d, 0xd
sub edx, eax
sub r9d, eax
xor r8d, r9d
sub edx, r8d
sub eax, r8d
mov r9d, edx
mov edx, r8d
shl edx, 8
xor edx, r9d
sub eax, edx
sub r8d, edx
mov r9d, eax
mov eax, edx
shr eax, 0xd
xor eax, r9d
mov r9d, r8d
mov r8d, eax
sub r9d, eax
sub edx, eax
shr r8d, 0xc
xor r8d, r9d
sub edx, r8d
sub eax, r8d
mov r9d, edx
mov edx, r8d
shl edx, 0x10
xor edx, r9d
sub eax, edx
sub r8d, edx
mov r9d, eax
mov eax, edx
shr eax, 5
xor eax, r9d
mov r9d, eax
sub r8d, eax
sub edx, eax
shr r9d, 3
xor r9d, r8d
mov r10d, r9d
sub edx, r9d
sub eax, r9d
shl r10d, 0xa
xor r10d, edx
movzx edx, byte [r12 + 0x4d]
mov r8d, r10d
sub eax, r10d
shr r8d, 0xf
shl edx, 8
xor r8d, eax
movzx eax, byte [r12 + 0x4e]
shl eax, 0x10
add edx, eax
movzx eax, byte [r12 + 0x4c]
add edx, eax
movzx eax, byte [r12 + 0x4f]
shl eax, 0x18
add edx, eax
movzx eax, byte [r12 + 0x51]
add edx, r10d
movzx r10d, byte [r12 + 0x52]
shl eax, 8
shl r10d, 0x10
add eax, r10d
movzx r10d, byte [r12 + 0x50]
add eax, r10d
movzx r10d, byte [r12 + 0x53]
shl r10d, 0x18
add eax, r10d
movzx r10d, byte [r12 + 0x4a]
add eax, r8d
movzx r8d, byte [r12 + 0x49]
shl r10d, 0x10
shl r8d, 8
add r8d, r10d
movzx r10d, byte [r12 + 0x48]
add r8d, r10d
movzx r10d, byte [r12 + 0x4b]
shl r10d, 0x18
add r8d, r10d
movzx r10d, byte [r12 + 0x5a]
add r8d, r9d
mov r9d, eax
sub r8d, edx
shr r9d, 0xd
sub edx, eax
sub r8d, eax
xor r8d, r9d
sub edx, r8d
sub eax, r8d
mov r9d, edx
mov edx, r8d
shl edx, 8
xor edx, r9d
sub eax, edx
sub r8d, edx
mov r9d, eax
mov eax, edx
shr eax, 0xd
xor eax, r9d
mov r9d, r8d
mov r8d, eax
sub r9d, eax
sub edx, eax
shr r8d, 0xc
xor r8d, r9d
sub edx, r8d
sub eax, r8d
mov r9d, edx
mov edx, r8d
shl edx, 0x10
xor edx, r9d
sub eax, edx
mov r9d, eax
mov eax, edx
shr eax, 5
xor eax, r9d
sub r8d, edx
shl r10d, 0x10
mov r9d, eax
sub r8d, eax
sub edx, eax
shr r9d, 3
xor r9d, r8d
sub edx, r9d
sub eax, r9d
mov r8d, edx
mov edx, r9d
shl edx, 0xa
xor edx, r8d
mov r8d, edx
sub eax, edx
shr r8d, 0xf
xor r8d, eax
movzx eax, byte [r12 + 0x5b]
add r8d, 0x20
shl eax, 0x18
add eax, r10d
movzx r10d, byte [r12 + 0x58]
add eax, r10d
movzx r10d, byte [r12 + 0x59]
shl r10d, 8
add eax, r10d
movzx r10d, byte [r12 + 0x56]
add eax, edx
movzx edx, byte [r12 + 0x57]
shl r10d, 0x10
shl edx, 0x18
add edx, r10d
movzx r10d, byte [r12 + 0x54]
add edx, r10d
movzx r10d, byte [r12 + 0x55]
mov rcx, qword [rcx + 0x68]
shl r10d, 8
mov edi, dword [rcx + 8]
add edx, r10d
add edx, r9d
mov r9d, r8d
sub edx, r8d
shr r9d, 0xd
sub edx, eax
sub eax, r8d
xor r9d, edx
sub eax, r9d
sub r8d, r9d
mov edx, eax
mov eax, r9d
shl eax, 8
xor eax, edx
mov edx, eax
sub r8d, eax
sub r9d, eax
shr edx, 0xd
xor edx, r8d
mov r8d, edx
sub r9d, edx
sub eax, edx
shr r8d, 0xc
xor r8d, r9d
sub eax, r8d
sub edx, r8d
mov r9d, eax
mov eax, r8d
shl eax, 0x10
xor eax, r9d
sub edx, eax
sub r8d, eax
mov r9d, edx
mov edx, eax
shr edx, 5
xor edx, r9d
mov r9d, edx
sub r8d, edx
sub eax, edx
shr r9d, 3
xor r8d, r9d
mov r9d, r8d
sub eax, r8d
sub edx, r8d
shl r9d, 0xa
xor eax, r9d
sub edx, eax
shr eax, 0xf
xor eax, edx
lea edx, [rdi - 1]
and edx, eax
shl rdx, 4
add rdx, qword [rcx]
mov rbx, qword [rdx]
test rbx, rbx
je 0x1401d0970
mov rcx, qword [rcx + 0x20]
mov r10, qword [rsp + 0xa0]
mov rdx, rcx
sub rbx, rcx
neg rdx
jmp 0x1401d0493
mov rbx, qword [rbx + 0x88]
test rbx, rbx
je 0x1401d0970
add rbx, rdx
cmp dword [rbx + 0x9c], eax
jne 0x1401d0480
cmp dword [rbx + 0x98], 0x20
jne 0x1401d0480
mov r8, qword [rbx + 0x90]
mov r9, qword [r8]
mov rcx, qword [r8 + 8]
xor r9, qword [r10]
xor rcx, qword [r10 + 8]
or rcx, r9
jne 0x1401d0480
mov r9, qword [r8 + 0x10]
mov rcx, qword [r8 + 0x18]
xor r9, qword [r10 + 0x10]
xor rcx, qword [r10 + 0x18]
or rcx, r9
jne 0x1401d0480
cmp byte [rsp + 0xe8], 0
jne 0x1401d0c40
mov rdx, qword [rbx + 0x48]
mov rcx, qword [rbx + 0x40]
xor r15d, r15d
call fcn.14007c080
mov rdx, qword [rbx + 0x40]
mov rcx, qword [rsp + 0x98]
lea r8, [rax + 0x48]
call fcn.1400fdf40
cmp eax, 1
jne 0x1401d140b
mov ecx, 1
mov rdx, rsi
call sub.msvcrt.dll_calloc
mov rcx, rax
test rax, rax
je 0x1401d0537
mov rdx, qword [rsp + 0x98]
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov rcx, rax
mov r8, qword [rbx + 0x50]
mov rdx, rcx
mov rcx, r8
call fcn.1400f5a70
mov qword [rbx + 0x50], rax
mov rcx, rax
call fcn.1400f6120
mov r8, rax
movzx eax, word [r14 + 0x120]
cmp r8, rax
je 0x1401d167b
test r15, r15
je case.0x1401cdb15.1
jmp 0x1401cea29
mov rsi, qword [rsp + 0xa0]
mov rdx, qword [r12 + 0x3c]
xor rdx, qword [r14 + 0x1d8]
mov rax, qword [rsi + 8]
xor rax, qword [r14 + 0x1e0]
or rax, rdx
jne 0x1401cde36
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 0x18]
xor rdx, qword [r14 + 0x1e8]
xor rax, qword [r14 + 0x1f0]
or rax, rdx
jne 0x1401cde36
mov rdx, qword [r14 + 0x1d8]
mov rax, qword [r14 + 0x1e0]
xor rdx, qword [0x1403eb460]
xor rax, qword [0x1403eb468]
or rax, rdx
jne 0x1401d0605
mov rdx, qword [r14 + 0x1e8]
mov rax, qword [r14 + 0x1f0]
xor rdx, qword [0x1403eb470]
xor rax, qword [0x1403eb478]
or rax, rdx
je 0x1401cde36
mov rax, qword [r14 + 0x18]
mov rdx, qword [r14 + 0x38]
mov r9d, 3
xor ecx, ecx
mov r8, r15
mov qword [rsp + 0x38], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu._Send_DB_message_with_same_DB_hash_is_ignored
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x1401cdc16
movzx eax, word [rsi + 0x58]
add eax, 1
mov word [rsi + 0x58], ax
cmp ax, word [rsp + 0xbe]
jb 0x1401cea20
cmp byte [rsi + 0x5f], 0
jne 0x1401cea20
mov rdi, qword [rsp + 0xa0]
mov rcx, qword [r14 + 0xf3]
mov rax, qword [r14 + 0xfb]
xor rcx, qword [r12 + 0x3c]
xor rax, qword [rdi + 8]
or rax, rcx
jne 0x1401cea20
mov rax, qword [r14 + 0x103]
mov rdx, qword [r14 + 0x10b]
xor rax, qword [rdi + 0x10]
xor rdx, qword [rdi + 0x18]
or rdx, rax
jne 0x1401cea20
mov byte [rsi + 0x5f], 1
mov rax, qword [r14 + 0x18]
movzx r9d, byte [r12 + 3]
mov r8, qword [r14 + 0x38]
mov rcx, qword [rax + 0x20]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x48], r15
cmp byte [rsp + 0xe8], 0
mov dword [rsp + 0x40], r9d
mov r9d, 3
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Candidate__s_approved_by_minimum_number_of_validators__lets_sign_it
mov qword [rsp + 0x38], r8
lea r8, str.dap_chain_cs_esbocs
mov qword [rsp + 0x30], rcx
cmove r8, rdx
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.14005a150
mov rdx, qword [rsi + 0x48]
mov rcx, qword [rsi + 0x40]
call fcn.14007c080
mov rdx, qword [rsi + 0x40]
xor r9d, r9d
mov r8, rax
mov rax, qword [r14 + 0x20]
add r8, 0x48
mov rax, qword [rax + 0x18]
mov rcx, qword [rax]
call fcn.1400fcbf0
mov rcx, rax
mov r12, rax
call fcn.1400fd4d0
mov rcx, r14
mov r9, r12
mov r8, rdi
mov rdx, qword [r14 + 0x118]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rdx
mov edx, 0x16
call fcn.1401bc000
mov rcx, r12
call sub.msvcrt.dll_free
jmp 0x1401cea20
mov rax, qword [r14 + 0x18]
movzx r9d, byte [r12 + 3]
mov r10d, 0
lea r8, str.dap_chain_cs_esbocs
mov rcx, qword [r14 + 0x38]
cmp byte [rsp + 0xe8], 0
mov rdx, qword [rax + 0x20]
mov rax, qword [rax + 0x28]
mov dword [rsp + 0x40], r9d
cmove r8, r10
mov qword [rsp + 0x38], rcx
mov r9d, 3
xor ecx, ecx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Receive_SUBMIT_candidate_hash_broken
mov qword [rsp + 0x30], rdx
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp case.0x1401cdb15.1
mov qword [rsp + 0x40], rax
lea rax, str.net:_s__chain:_s__round:_llu_SYNC_message_is_rejected_because_current_sync_attempt__llu_is_greater_than_meassage_sync_attempt__llu
mov r9d, 3
mov qword [rsp + 0x38], r8
mov r8, rdi
mov qword [rsp + 0x30], rcx
xor ecx, ecx
mov qword [rsp + 0x28], rdx
xor edx, edx
mov qword [rsp + 0x48], r10
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp case.0x1401cdb15.1
mov qword [rsp + 0x48], rax
lea rax, str.net:_s__chain:_s__round:_llu_SYNC_message_sync_attempt__llu_is_greater_than_current_round_sync_attempt__llu_so_fast_forward_this_round
mov r9d, 3
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x38], r8
mov r8, rdi
mov qword [rsp + 0x30], rcx
xor ecx, ecx
mov qword [rsp + 0x28], rdx
xor edx, edx
mov qword [rsp + 0xe8], r10
call fcn.14005a150
mov r8, qword [rbp + 0x38]
mov rcx, r14
mov rdx, r12
call fcn.1401d4e60
mov byte [r14 + 0x148], 1
mov rax, qword [r12 + 4]
mov rcx, r14
mov r10, qword [rsp + 0xe8]
sub rax, 1
mov qword [r14 + 0x38], rax
lea rax, [r10 - 1]
mov qword [r14 + 0x128], rax
call fcn.1401d1ec0
mov rdx, rsi
mov rcx, r14
call fcn.1401d6790
mov rcx, qword [r14 + 0x118]
lea r8, [0x140162be0]
mov rdx, rsi
call fcn.1400f5e30
test rax, rax
je case.0x1401cdb15.1
mov rax, qword [rax]
cmp byte [rax + 0x75], 0
jne case.0x1401cdb15.1
mov byte [rax + 0x75], 1
movzx eax, word [r14 + 0x120]
mov rcx, qword [r14 + 0x118]
lea ebx, [rax + 1]
mov word [r14 + 0x120], bx
movzx ebx, bx
call fcn.1400f6120
cmp rbx, rax
jne case.0x1401cdb15.1
mov rcx, r14
call fcn.1401ca170
mov rdx, qword [r14 + 0x18]
mov r8, rdi
mov r9d, 3
mov qword [r14 + 0x38], rax
movzx ecx, byte [r12 + 3]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x40], ecx
mov rax, qword [rdx + 0x20]
xor ecx, ecx
mov qword [rsp + 0x30], rax
mov rax, qword [rdx + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._All_validators_are_synchronized__wait_to_submit_candidate
mov qword [rsp + 0x20], rax
call fcn.14005a150
call fcn.140104340
mov edx, 1
mov rcx, r14
mov r8, rax
call fcn.1401d3c50
jmp case.0x1401cdb15.1
mov edx, 0x43
mov ecx, 1
call sub.msvcrt.dll_calloc
mov rcx, qword [r12 + 0x3c]
mov edx, 0x7830
mov r15, rax
mov word [rax], dx
lea rax, [0x14029e4b0]
movzx edi, cl
mov rbx, rcx
mov r10, rcx
mov r8, rcx
movzx edx, word [rax + rdi*2]
shr rbx, 0x10
shr r10, 0x20
mov r11, rcx
movzx ebx, bl
movzx r10d, r10b
shr r8, 0x30
mov r9, rcx
movd xmm0, edx
movzx edx, word [rax + rbx*2]
movzx r8d, r8b
movzx esi, ch
shr r11, 0x18
shr rcx, 0x38
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm3, edx
movzx edx, word [rax + r10*2]
shr r9, 0x28
movzx r11d, r11b
movzx r9d, r9b
pinsrw xmm3, word [rax + r11*2], 1
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
mov rcx, qword [r12 + 0x44]
movzx edi, cl
mov rbx, rcx
punpckldq xmm1, xmm2
mov r10, rcx
movzx edx, word [rax + rdi*2]
shr rbx, 0x10
punpcklqdq xmm0, xmm1
shr r10, 0x20
movzx ebx, bl
movups xmmword [r15 + 2], xmm0
movzx r10d, r10b
mov r8, rcx
movd xmm0, edx
movzx edx, word [rax + rbx*2]
shr r8, 0x30
mov r11, rcx
movzx r8d, r8b
mov r9, rcx
movzx esi, ch
shr r11, 0x18
shr rcx, 0x38
movd xmm3, edx
movzx edx, word [rax + r10*2]
shr r9, 0x28
movzx r11d, r11b
movzx r9d, r9b
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm3, word [rax + r11*2], 1
pinsrw xmm1, word [rax + r9*2], 1
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
mov rcx, qword [r12 + 0x4c]
punpckldq xmm0, xmm3
movzx edi, cl
mov rbx, rcx
punpckldq xmm1, xmm2
mov r10, rcx
movzx edx, word [rax + rdi*2]
shr rbx, 0x10
punpcklqdq xmm0, xmm1
shr r10, 0x20
movzx ebx, bl
movups xmmword [r15 + 0x12], xmm0
movzx r10d, r10b
mov r8, rcx
movd xmm0, edx
movzx edx, word [rax + rbx*2]
shr r8, 0x30
mov r11, rcx
mov r9, rcx
movzx r8d, r8b
shr r11, 0x18
movzx esi, ch
shr r9, 0x28
movd xmm3, edx
movzx edx, word [rax + r10*2]
shr rcx, 0x38
movzx r11d, r11b
movzx r9d, r9b
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm3, word [rax + r11*2], 1
pinsrw xmm1, word [rax + r9*2], 1
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
mov rcx, qword [r12 + 0x54]
punpckldq xmm0, xmm3
punpckldq xmm1, xmm2
movzx edi, cl
mov rbx, rcx
mov r10, rcx
punpcklqdq xmm0, xmm1
shr rbx, 0x10
mov r8, rcx
mov r11, rcx
movups xmmword [r15 + 0x22], xmm0
movzx edx, word [rax + rdi*2]
movzx ebx, bl
shr r10, 0x20
movzx r10d, r10b
shr r8, 0x30
mov r9, rcx
movzx esi, ch
movd xmm0, edx
movzx edx, word [rax + rbx*2]
movzx r8d, r8b
shr r11, 0x18
shr r9, 0x28
shr rcx, 0x38
movzx r11d, r11b
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm3, edx
movzx edx, word [rax + r10*2]
movzx r9d, r9b
pinsrw xmm3, word [rax + r11*2], 1
mov byte [r15 + 0x42], 0
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
mov r9d, 5
lea r8, str.dap_chain_cs_esbocs
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
mov rax, qword [r14 + 0x18]
xor ecx, ecx
punpckldq xmm1, xmm2
punpcklqdq xmm0, xmm1
movups xmmword [r15 + 0x32], xmm0
mov qword [rsp + 0x48], r15
movzx edx, byte [r12 + 3]
mov dword [rsp + 0x40], edx
mov rdx, qword [r14 + 0x38]
mov qword [rsp + 0x38], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Receive_COMMIT_SIGN_message_for_unknown_candidate__s
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x1401cea29
mov rcx, r14
call fcn.1401d37a0
jmp 0x1401d089d
mov edx, 0x43
mov ecx, 1
call sub.msvcrt.dll_calloc
mov rdx, qword [r12 + 0x3c]
mov r15, rax
mov eax, 0x7830
mov rcx, rdx
mov r11, rdx
movzx edi, dh
mov word [r15], ax
shr r11, 0x28
shr rcx, 0x20
movzx r10d, dl
mov r9, rdx
lea rax, [0x14029e4b0]
movzx ecx, cl
mov r8, rdx
shr r9, 0x10
mov qword [rsp + 0xe8], rdi
movzx edi, r11b
mov r11, rdx
movzx ecx, word [rax + rcx*2]
shr r11, 0x30
shr rdx, 0x38
movzx r10d, word [rax + r10*2]
movzx r9d, r9b
movzx r11d, r11b
movd xmm1, ecx
movzx r9d, word [rax + r9*2]
shr r8, 0x18
movzx ecx, word [rax + r11*2]
movd xmm0, r10d
mov r10, qword [rsp + 0xe8]
movzx r8d, r8b
pinsrw xmm1, word [rax + rdi*2], 1
movd xmm3, r9d
pinsrw xmm3, word [rax + r8*2], 1
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x44]
pinsrw xmm0, word [rax + r10*2], 1
mov rcx, rdx
mov r11, rdx
movzx edi, dh
movzx r10d, dl
shr r11, 0x28
shr rcx, 0x20
mov r9, rdx
movzx r10d, word [rax + r10*2]
movzx ecx, cl
punpckldq xmm1, xmm2
punpckldq xmm0, xmm3
shr r9, 0x10
movzx ecx, word [rax + rcx*2]
punpcklqdq xmm0, xmm1
mov r8, rdx
movzx r9d, r9b
movzx r9d, word [rax + r9*2]
mov qword [rsp + 0xe8], rdi
movzx edi, r11b
mov r11, rdx
shr r11, 0x30
movd xmm1, ecx
shr rdx, 0x38
movups xmmword [r15 + 2], xmm0
movzx r11d, r11b
shr r8, 0x18
movd xmm0, r10d
movd xmm3, r9d
movzx ecx, word [rax + r11*2]
movzx r8d, r8b
mov r10, qword [rsp + 0xe8]
pinsrw xmm3, word [rax + r8*2], 1
pinsrw xmm1, word [rax + rdi*2], 1
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x4c]
pinsrw xmm0, word [rax + r10*2], 1
mov r9, rdx
movzx r10d, dl
punpckldq xmm1, xmm2
movzx edi, dh
movzx r10d, word [rax + r10*2]
punpckldq xmm0, xmm3
shr r9, 0x10
mov r8, rdx
punpcklqdq xmm0, xmm1
mov rcx, rdx
mov r11, rdx
movzx r9d, r9b
movzx r9d, word [rax + r9*2]
shr r11, 0x28
movups xmmword [r15 + 0x12], xmm0
shr r8, 0x18
mov qword [rsp + 0xe8], rdi
shr rcx, 0x20
movd xmm0, r10d
movzx edi, r11b
movzx r8d, r8b
mov r11, rdx
movzx ecx, cl
shr rdx, 0x38
mov r10, qword [rsp + 0xe8]
shr r11, 0x30
movd xmm3, r9d
pinsrw xmm3, word [rax + r8*2], 1
movzx r11d, r11b
pinsrw xmm0, word [rax + r10*2], 1
movzx ecx, word [rax + rcx*2]
mov byte [r15 + 0x42], 0
movd xmm1, ecx
movzx ecx, word [rax + r11*2]
pinsrw xmm1, word [rax + rdi*2], 1
punpckldq xmm0, xmm3
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rdx, qword [r12 + 0x54]
mov rcx, rdx
mov r11, rdx
movzx edi, dh
movzx r10d, dl
shr r11, 0x28
shr rcx, 0x20
mov r9, rdx
movzx r10d, word [rax + r10*2]
movzx ecx, cl
punpckldq xmm1, xmm2
shr r9, 0x10
mov r8, rdx
movzx ecx, word [rax + rcx*2]
punpcklqdq xmm0, xmm1
movzx r9d, r9b
shr r8, 0x18
movups xmmword [r15 + 0x22], xmm0
movzx r9d, word [rax + r9*2]
movd xmm0, r10d
movzx r8d, r8b
mov qword [rsp + 0xe8], rdi
movzx edi, r11b
mov r11, rdx
mov r10, qword [rsp + 0xe8]
shr r11, 0x30
movd xmm1, ecx
shr rdx, 0x38
movd xmm3, r9d
movzx r11d, r11b
pinsrw xmm3, word [rax + r8*2], 1
pinsrw xmm0, word [rax + r10*2], 1
mov r9d, 3
movzx ecx, word [rax + r11*2]
pinsrw xmm1, word [rax + rdi*2], 1
lea r8, str.dap_chain_cs_esbocs
punpckldq xmm0, xmm3
movd xmm2, ecx
pinsrw xmm2, word [rax + rdx*2], 1
mov rax, qword [r14 + 0x18]
xor ecx, ecx
punpckldq xmm1, xmm2
punpcklqdq xmm0, xmm1
movups xmmword [r15 + 0x32], xmm0
mov qword [rsp + 0x48], r15
movzx edx, byte [r12 + 3]
mov dword [rsp + 0x40], edx
mov rdx, qword [r14 + 0x38]
mov qword [rsp + 0x38], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Receive_COMMIT_SIGN:_candidate__s
mov qword [rsp + 0x20], rax
call fcn.14005a150
mov rdx, qword [rbx + 0x48]
mov rcx, qword [rbx + 0x40]
call fcn.14007c080
mov rdx, qword [rbx + 0x40]
mov rcx, qword [rsp + 0x98]
lea r8, [rax + 0x48]
call fcn.1400fdf40
cmp eax, 1
je 0x1401d050f
lea rax, str.Candidate:__s_sign_is_incorrect:_code__d
mov qword [rsp + 0x28], r15
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x30], 0
mov r9d, 5
lea r8, str.dap_chain_cs_esbocs
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x1401cea29
mov edx, 0xa0
mov ecx, 1
call sub.msvcrt.dll_calloc
mov rbx, rax
test rax, rax
je 0x1401d1a9f
mov r15, qword [rsp + 0xb0]
movdqu xmm4, xmmword [r12 + 0x3c]
mov ecx, 1
movdqu xmm5, xmmword [r12 + 0x4c]
mov qword [rax + 0x48], r15
mov rdx, r15
movups xmmword [rax], xmm4
movups xmmword [rax + 0x10], xmm5
call sub.msvcrt.dll_calloc
mov rcx, rax
test rax, rax
je 0x1401d1012
mov rdx, qword [rsp + 0x98]
mov r8, r15
call sub.msvcrt.dll_memcpy
mov rcx, rax
movzx eax, byte [rbx + 5]
movzx edx, byte [rbx + 4]
mov qword [rbx + 0x40], rcx
movzx r8d, byte [rbx]
movzx r9d, byte [rbx + 0x12]
shl eax, 8
lea ecx, [rax + rdx - 0x61c88647]
movzx eax, byte [rbx + 6]
movzx edx, byte [rbx + 8]
shl eax, 0x10
add ecx, eax
movzx eax, byte [rbx + 7]
shl eax, 0x18
add ecx, eax
movzx eax, byte [rbx + 9]
shl eax, 8
lea eax, [rax + rdx - 0x1124111]
movzx edx, byte [rbx + 0xa]
shl edx, 0x10
add eax, edx
movzx edx, byte [rbx + 0xb]
shl edx, 0x18
add eax, edx
movzx edx, byte [rbx + 1]
shl edx, 8
lea edx, [rdx + r8 - 0x61c88647]
movzx r8d, byte [rbx + 2]
shl r8d, 0x10
add edx, r8d
movzx r8d, byte [rbx + 3]
shl r8d, 0x18
add edx, r8d
mov r8d, eax
sub edx, ecx
shr r8d, 0xd
sub ecx, eax
sub edx, eax
xor r8d, edx
mov edx, ecx
mov ecx, r8d
sub edx, r8d
sub eax, r8d
shl ecx, 8
xor ecx, edx
mov edx, eax
mov eax, ecx
sub edx, ecx
shr eax, 0xd
xor edx, eax
mov eax, r8d
sub eax, ecx
mov r8d, edx
sub ecx, edx
sub eax, edx
shr r8d, 0xc
xor eax, r8d
mov r8d, eax
sub ecx, eax
sub edx, eax
shl r9d, 0x10
shl r8d, 0x10
xor ecx, r8d
mov r8d, ecx
sub edx, ecx
sub eax, ecx
shr r8d, 5
xor edx, r8d
mov r8d, edx
sub eax, edx
sub ecx, edx
shr r8d, 3
xor r8d, eax
mov eax, r8d
sub ecx, r8d
sub edx, r8d
shl eax, 0xa
xor eax, ecx
mov ecx, eax
sub edx, eax
shr ecx, 0xf
xor ecx, edx
movzx edx, byte [rbx + 0x11]
shl edx, 8
add edx, r9d
movzx r9d, byte [rbx + 0x10]
add edx, r9d
movzx r9d, byte [rbx + 0x13]
shl r9d, 0x18
add edx, r9d
movzx r9d, byte [rbx + 0x16]
add edx, eax
movzx eax, byte [rbx + 0x15]
shl r9d, 0x10
shl eax, 8
add eax, r9d
movzx r9d, byte [rbx + 0x14]
add eax, r9d
movzx r9d, byte [rbx + 0x17]
shl r9d, 0x18
add eax, r9d
movzx r9d, byte [rbx + 0xe]
add eax, ecx
movzx ecx, byte [rbx + 0xd]
shl r9d, 0x10
shl ecx, 8
add ecx, r9d
movzx r9d, byte [rbx + 0xc]
add ecx, r9d
movzx r9d, byte [rbx + 0xf]
shl r9d, 0x18
add ecx, r9d
movzx r9d, byte [rbx + 0x1e]
add ecx, r8d
mov r8d, eax
sub ecx, edx
shr r8d, 0xd
sub edx, eax
sub ecx, eax
xor r8d, ecx
mov ecx, r8d
sub edx, r8d
sub eax, r8d
shl ecx, 8
xor ecx, edx
mov edx, ecx
sub eax, ecx
shr edx, 0xd
xor eax, edx
mov edx, r8d
sub edx, ecx
mov r8d, eax
sub ecx, eax
sub edx, eax
shr r8d, 0xc
xor edx, r8d
mov r8d, edx
sub ecx, edx
sub eax, edx
shl r8d, 0x10
xor ecx, r8d
mov r8d, ecx
sub eax, ecx
shr r8d, 5
xor eax, r8d
sub edx, ecx
shl r9d, 0x10
mov r8d, eax
sub edx, eax
sub ecx, eax
shr r8d, 3
xor r8d, edx
mov edx, r8d
sub ecx, r8d
sub eax, r8d
shl edx, 0xa
xor edx, ecx
mov ecx, edx
sub eax, edx
shr ecx, 0xf
xor ecx, eax
movzx eax, byte [rbx + 0x1f]
add ecx, 0x20
shl eax, 0x18
add eax, r9d
movzx r9d, byte [rbx + 0x1c]
add eax, r9d
movzx r9d, byte [rbx + 0x1d]
shl r9d, 8
add eax, r9d
movzx r9d, byte [rbx + 0x1a]
add eax, edx
movzx edx, byte [rbx + 0x1b]
shl r9d, 0x10
shl edx, 0x18
add edx, r9d
movzx r9d, byte [rbx + 0x18]
add edx, r9d
movzx r9d, byte [rbx + 0x19]
mov qword [rbx + 0x90], rbx
mov dword [rbx + 0x98], 0x20
shl r9d, 8
add edx, r9d
add edx, r8d
mov r8d, ecx
sub edx, ecx
shr r8d, 0xd
sub edx, eax
sub eax, ecx
xor r8d, edx
mov edx, r8d
sub eax, r8d
shl edx, 8
xor edx, eax
mov eax, ecx
sub eax, r8d
mov ecx, edx
sub eax, edx
shr ecx, 0xd
xor eax, ecx
mov ecx, r8d
sub ecx, edx
mov r8d, eax
sub edx, eax
sub ecx, eax
shr r8d, 0xc
xor ecx, r8d
mov r8d, ecx
sub edx, ecx
sub eax, ecx
shl r8d, 0x10
xor edx, r8d
mov r8d, edx
sub eax, edx
sub ecx, edx
shr r8d, 5
xor eax, r8d
mov r8d, eax
sub ecx, eax
sub edx, eax
shr r8d, 3
xor r8d, ecx
mov ecx, r8d
sub edx, r8d
sub eax, r8d
shl ecx, 0xa
xor edx, ecx
sub eax, edx
shr edx, 0xf
xor edx, eax
mov dword [rbx + 0x9c], edx
mov r15d, edx
test rdi, rdi
je 0x1401d192a
mov rax, qword [rdi + 0x68]
mov qword [rbx + 0x78], 0
mov qword [rbx + 0x68], rax
mov rdx, qword [rdi + 0x68]
mov rax, qword [rdx + 0x18]
sub rax, qword [rdx + 0x20]
mov qword [rbx + 0x70], rax
mov rax, qword [rdi + 0x68]
lea rdi, [rbx + 0x68]
mov rax, qword [rax + 0x18]
mov qword [rax + 0x10], rbx
mov rax, qword [r14 + 0x68]
mov rax, qword [rax + 0x68]
mov qword [rax + 0x18], rdi
mov rax, qword [r14 + 0x68]
mov rax, qword [rax + 0x68]
add dword [rax + 0x10], 1
mov rax, qword [r14 + 0x68]
mov rdx, qword [rax + 0x68]
mov eax, dword [rdx + 8]
sub eax, 1
and eax, r15d
shl rax, 4
add rax, qword [rdx]
mov rdx, qword [rax]
add dword [rax + 8], 1
mov qword [rbx + 0x80], 0
mov qword [rbx + 0x88], rdx
mov rdx, qword [rax]
test rdx, rdx
je 0x1401d1378
mov qword [rdx + 0x18], rdi
mov qword [rax], rdi
mov edi, dword [rax + 0xc]
lea edx, [rdi + 1]
imul edx, edx, 0xa
cmp dword [rax + 8], edx
jb 0x1401d139a
mov r8, qword [rbx + 0x68]
mov r15d, dword [r8 + 0x34]
test r15d, r15d
je 0x1401d17cc
lea rcx, [r14 + 0xa6]
mov r8d, 0x4d
mov rdx, rsi
call sub.msvcrt.dll_memcmp
test eax, eax
jne case.0x1401cdb15.1
movdqu xmm4, xmmword [r12 + 0x3c]
movups xmmword [r14 + 0xf3], xmm4
mov rdx, qword [r12 + 0x54]
mov rax, qword [r12 + 0x4c]
mov qword [r14 + 0x10b], rdx
mov qword [r14 + 0x103], rax
call fcn.140104340
mov rcx, r14
mov edx, 2
mov r8, rax
call fcn.1401d3c50
mov rdx, qword [rbx + 0x40]
mov r8, qword [rbx + 0x48]
mov r9, rbx
mov rcx, r14
call fcn.1401cd130
jmp case.0x1401cdb15.1
mov edx, 0x43
mov ecx, 1
call sub.msvcrt.dll_calloc
mov rcx, qword [r12 + 0x3c]
mov r15, rax
mov word [rax], 0x7830
lea rax, [0x14029e4b0]
movzx edi, cl
mov rbx, rcx
mov r10, rcx
mov r8, rcx
movzx edx, word [rax + rdi*2]
shr rbx, 0x10
shr r10, 0x20
mov r11, rcx
movzx ebx, bl
movzx r10d, r10b
shr r8, 0x30
mov r9, rcx
movd xmm0, edx
movzx edx, word [rax + rbx*2]
movzx r8d, r8b
movzx esi, ch
shr r11, 0x18
shr rcx, 0x38
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm3, edx
movzx edx, word [rax + r10*2]
shr r9, 0x28
movzx r11d, r11b
movzx r9d, r9b
pinsrw xmm3, word [rax + r11*2], 1
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
mov rcx, qword [r12 + 0x44]
movzx edi, cl
mov rbx, rcx
punpckldq xmm1, xmm2
mov r10, rcx
movzx edx, word [rax + rdi*2]
shr rbx, 0x10
punpcklqdq xmm0, xmm1
shr r10, 0x20
movzx ebx, bl
movups xmmword [r15 + 2], xmm0
movzx r10d, r10b
mov r8, rcx
movd xmm0, edx
movzx edx, word [rax + rbx*2]
shr r8, 0x30
mov r11, rcx
movzx r8d, r8b
mov r9, rcx
movzx esi, ch
shr r11, 0x18
shr rcx, 0x38
movd xmm3, edx
movzx edx, word [rax + r10*2]
shr r9, 0x28
movzx r11d, r11b
movzx r9d, r9b
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm3, word [rax + r11*2], 1
pinsrw xmm1, word [rax + r9*2], 1
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
mov rcx, qword [r12 + 0x4c]
punpckldq xmm0, xmm3
movzx edi, cl
mov rbx, rcx
punpckldq xmm1, xmm2
mov r10, rcx
movzx edx, word [rax + rdi*2]
shr rbx, 0x10
punpcklqdq xmm0, xmm1
shr r10, 0x20
movzx ebx, bl
movups xmmword [r15 + 0x12], xmm0
movzx r10d, r10b
mov r8, rcx
movd xmm0, edx
movzx edx, word [rax + rbx*2]
shr r8, 0x30
mov r11, rcx
mov r9, rcx
movzx r8d, r8b
shr r11, 0x18
movzx esi, ch
shr r9, 0x28
movd xmm3, edx
movzx edx, word [rax + r10*2]
movzx r11d, r11b
movzx r9d, r9b
shr rcx, 0x38
pinsrw xmm3, word [rax + r11*2], 1
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
mov rcx, qword [r12 + 0x54]
punpckldq xmm1, xmm2
movzx edi, cl
mov rbx, rcx
mov r10, rcx
punpcklqdq xmm0, xmm1
shr rbx, 0x10
mov r8, rcx
mov r11, rcx
movups xmmword [r15 + 0x22], xmm0
movzx edx, word [rax + rdi*2]
movzx ebx, bl
shr r10, 0x20
movzx r10d, r10b
shr r8, 0x30
mov r9, rcx
movzx esi, ch
movd xmm0, edx
movzx edx, word [rax + rbx*2]
movzx r8d, r8b
shr r11, 0x18
shr r9, 0x28
movzx r11d, r11b
shr rcx, 0x38
pinsrw xmm0, word [rax + rsi*2], 1
movd xmm3, edx
movzx edx, word [rax + r10*2]
movzx r9d, r9b
pinsrw xmm3, word [rax + r11*2], 1
mov byte [r15 + 0x42], 0
movd xmm1, edx
movzx edx, word [rax + r8*2]
pinsrw xmm1, word [rax + r9*2], 1
punpckldq xmm0, xmm3
movd xmm2, edx
pinsrw xmm2, word [rax + rcx*2], 1
punpckldq xmm1, xmm2
punpcklqdq xmm0, xmm1
movups xmmword [r15 + 0x32], xmm0
jmp 0x1401d0f7a
mov rax, qword [r14 + 0x20]
mov rax, qword [rax + 0x18]
cmp byte [rax + 0x2e], 0
jne 0x1401d1a07
call fcn.140104340
mov edx, 3
mov rcx, r14
mov r8, rax
call fcn.1401d3c50
jmp 0x1401d0566
mov qword [rbp + 0x30], r12
mov r12, qword [rcx + 0x20]
mov qword [rbp + 0x28], rdi
mov rdi, rsi
mov rsi, rbx
mov ebx, r10d
movzx eax, byte [r12 + 2]
mov qword [rsp + 0xd0], r15
mov r15d, r11d
cmp al, bl
je 0x1401d1725
cmp al, 8
jne 0x1401d16df
cmp byte [rsp + 0xdc], 0
jne 0x1401d1725
cmp al, 0x12
jne 0x1401d16e8
test r15b, r15b
jne 0x1401d1725
cmp al, 0x22
jne 0x1401d16f6
cmp byte [rsp + 0xe0], 0
jne 0x1401d1725
cmp al, 0x24
jne 0x1401d1704
cmp byte [rsp + 0xd8], 0
jne 0x1401d1725
test rsi, rsi
je 0x1401d17b0
mov rcx, rsi
mov rsi, qword [rsi + 0x88]
mov r12, qword [rcx + 0x20]
movzx eax, byte [r12 + 2]
cmp al, bl
jne 0x1401d16d1
add rcx, 0x28
mov r8d, 0x4d
mov rdx, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1401d1704
mov rdx, qword [rsp + 0xa0]
mov r8, qword [r12 + 0x3c]
mov rax, qword [r12 + 0x44]
xor r8, qword [rdx]
xor rax, qword [rdx + 8]
or rax, r8
jne 0x1401d1704
mov r8, qword [r12 + 0x4c]
mov rcx, qword [rdx + 0x10]
mov rax, qword [r12 + 0x54]
xor rax, qword [rdx + 0x18]
xor rcx, r8
or rax, rcx
jne 0x1401d1704
mov r10d, ebx
mov r15, qword [rsp + 0xd0]
mov r12, qword [rbp + 0x30]
lea edi, [r10 - 4]
cmp dil, 0x32
ja case.0x1401d179e.1
lea rdx, [0x14029d6d0]
movzx edi, dil
movsxd rax, dword [rdx + rdi*4]
add rax, rdx
jmp rax
lea rax, [0x14029c8d7]
jmp 0x1401cf66e
mov rsi, rdi
mov r12, qword [rbp + 0x30]
mov rdi, qword [rbp + 0x28]
jmp 0x1401cf6c7
lea rax, str.SEND_DB
jmp 0x1401cf66e
mov ecx, dword [r8 + 8]
mov edx, 1
mov qword [rsp + 0xe8], r8
shl rcx, 5
call sub.msvcrt.dll_calloc
mov rdi, rax
test rax, rax
je 0x1401d1a97
mov r8, qword [rsp + 0xe8]
mov edx, dword [r8 + 8]
mov eax, dword [r8 + 0x10]
mov ecx, dword [r8 + 0xc]
lea edx, [rdx + rdx - 1]
test edx, eax
setne dl
add ecx, 1
shr eax, cl
movzx edx, dl
add edx, eax
mov dword [r8 + 0x28], edx
mov rax, qword [rbx + 0x68]
mov dword [rax + 0x2c], 0
mov rcx, qword [rbx + 0x68]
mov eax, dword [rcx + 8]
test eax, eax
je 0x1401d18d9
xor r9d, r9d
mov edx, r9d
shl rdx, 4
add rdx, qword [rcx]
mov rdx, qword [rdx]
test rdx, rdx
jne 0x1401d1866
jmp 0x1401d18c9
mov qword [rcx + 0x18], rdx
mov rcx, qword [rbx + 0x68]
mov qword [rax], rdx
test r8, r8
je 0x1401d18c9
mov eax, dword [rcx + 8]
mov rdx, r8
lea eax, [rax + rax - 1]
and eax, dword [rdx + 0x34]
mov r8, qword [rdx + 0x20]
shl rax, 4
add rax, rdi
mov r11d, dword [rax + 8]
lea r10d, [r11 + 1]
mov dword [rax + 8], r10d
cmp r10d, dword [rcx + 0x28]
jbe 0x1401d18a9
add dword [rcx + 0x2c], 1
mov r10, qword [rbx + 0x68]
mov ecx, dword [rax + 0xc]
mov r11d, dword [r10 + 0x28]
imul r11d, ecx
cmp dword [rax + 8], r11d
jbe 0x1401d18a9
add ecx, 1
mov dword [rax + 0xc], ecx
mov qword [rdx + 0x18], 0
mov rcx, qword [rax]
mov qword [rdx + 0x20], rcx
test rcx, rcx
jne 0x1401d1850
mov qword [rax], rdx
mov rcx, qword [rbx + 0x68]
test r8, r8
jne 0x1401d1860
mov eax, dword [rcx + 8]
add r9d, 1
cmp eax, r9d
ja 0x1401d183a
mov rcx, qword [rcx]
call sub.msvcrt.dll_free
mov rax, qword [rbx + 0x68]
shl dword [rax + 8], 1
mov rax, qword [rbx + 0x68]
add dword [rax + 0xc], 1
mov rax, qword [rbx + 0x68]
mov qword [rax], rdi
mov rax, qword [rbx + 0x68]
mov edx, dword [rax + 0x10]
shr edx, 1
cmp dword [rax + 0x2c], edx
jbe 0x1401d190c
mov edi, dword [rax + 0x30]
lea r15d, [rdi + 1]
mov dword [rax + 0x30], r15d
mov rax, qword [rbx + 0x68]
cmp dword [rax + 0x30], 1
jbe 0x1401d139a
mov dword [rax + 0x34], 1
jmp 0x1401d139a
pxor xmm0, xmm0
mov ecx, 0x40
movups xmmword [rbx + 0x70], xmm0
call sub.msvcrt.dll_malloc
mov qword [rbx + 0x68], rax
mov r8, rax
test rax, rax
je 0x1401d1a97
lea rdx, [rax + 0x10]
mov ecx, 0xc
xor eax, eax
mov qword [rsp + 0xe8], r8
mov rdi, rdx
mov edx, 1
rep stosd dword [rdi], eax
mov rax, qword [0x14029e6b8]
lea rdi, [rbx + 0x68]
mov ecx, 0x200
mov qword [r8 + 0x18], rdi
mov qword [r8 + 8], rax
mov qword [r8 + 0x20], 0x68
call sub.msvcrt.dll_calloc
mov r8, qword [rsp + 0xe8]
mov qword [r8], rax
mov dword [r8 + 0x38], 0xa0111fe1
test rax, rax
je 0x1401d1a97
mov qword [r14 + 0x68], rbx
jmp 0x1401d132f
lea rax, str.PRE_COMMIT
jmp 0x1401cf66e
lea rax, str.VOTE_AGAINST
jmp 0x1401cf66e
lea rax, str.VOTE_FOR
jmp 0x1401cf66e
lea rax, str.DIRECTIVE
jmp 0x1401cf66e
lea rax, str.COMMIT_SIGN
jmp 0x1401cf66e
lea rax, str.REJECT
jmp 0x1401cf66e
lea rax, str.APPROVE
jmp 0x1401cf66e
mov rax, qword [r14 + 0x18]
mov qword [rsp + 0x48], r15
mov r9d, 3
xor ecx, ecx
movzx edx, byte [r12 + 3]
lea r8, str.dap_chain_cs_esbocs
mov dword [rsp + 0x40], edx
mov rdx, qword [r14 + 0x38]
mov qword [rsp + 0x38], rdx
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x30], rdx
mov rax, qword [rax + 0x28]
xor edx, edx
mov qword [rsp + 0x28], rax
lea rax, str.net:_s__chain:_s__round:_llu__attempt:_hhu._Candidate__s_collected_signs_of_all_synced_validators
mov qword [rsp + 0x20], rax
call fcn.14005a150
jmp 0x1401d168d
lea rax, str.SUBMIT
jmp 0x1401cf66e
lea rax, [0x14029b9d1]
mov r9d, 8
lea r8, str.dap_chain_cs_esbocs
mov edx, 0x875
mov qword [rsp + 0x20], rax
lea rcx, str.s_session_packet_in
call fcn.14005a150
jmp case.0x1401cdb15.1
or ecx, 0xffffffff
call sub.msvcrt.dll_exit
lea rax, [0x14029b9d1]
mov r9d, 8
lea r8, str.dap_chain_cs_esbocs
mov edx, 0x8f0
mov qword [rsp + 0x20], rax
lea rcx, str.s_session_packet_in
call fcn.14005a150
jmp case.0x1401cdb15.1