Function at 0x1401dd600
Capabilities:
Encode data using base64

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb8]
sub rsp, 0x1b8
movaps xmmword [rsp + 0x1a0], xmm6
mov rax, qword [0x14053a7e8]
xor rax, rsp
mov qword [rbp + 0x90], rax
mov dword [rbp - 0x74], r8d
mov rbx, rdx
mov qword [rbp - 0x50], rdx
mov rdi, rcx
mov qword [rsp + 0x70], rcx
mov qword [rbp - 0x68], rcx
mov rsi, qword [r9]
mov rax, rsi
mov r13, qword [r9 + 8]
lea r12, [rsi + r13*8]
cmp rsi, r12
je 0x1401dd673
nop
cmp qword [rax], 0
je 0x1401dd715
add rax, 8
cmp rax, r12
jne 0x1401dd660
xor al, al
mov qword [rbp - 0x80], rax
cmp byte [rbp + 0x120], al
je 0x1401dd80f
cmp r8d, 8
jae 0x1401dd780
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140151be0
movsd xmm6, qword [rax]
mov ebx, dword [rax + 8]
xor r14d, r14d
mov qword [rbp - 0x68], r14
lea ecx, [r14 + 0x2f]
call fcn.140344c8c
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
movups xmm0, xmmword [str.Not_enough_data_for_a_special_cell]
movups xmmword [rax + 0xc], xmm0
movups xmm1, xmmword [0x14037ebe8]
movups xmmword [rax + 0x1c], xmm1
movzx ecx, word [0x14037ebf8]
mov word [rax + 0x2c], cx
mov byte [rax + 0x2e], r14b
mov qword [rdi], rax
mov rax, rdi
mov rcx, qword [rbp + 0x90]
xor rcx, rsp
call fcn.140344c40
movaps xmm6, xmmword [rsp + 0x1a0]
add rsp, 0x1b8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140151be0
movsd xmm6, qword [rax]
mov ebx, dword [rax + 8]
xor r14d, r14d
mov qword [rbp - 0x68], r14
lea ecx, [r14 + 0x24]
call fcn.140344c8c
mov r8, rax
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
movups xmm0, xmmword [str.Has_null_cell_reference]
movups xmmword [rax + 0xc], xmm0
mov eax, dword [0x14037ebd0]
mov dword [r8 + 0x1c], eax
movzx ecx, word [0x14037ebd4]
mov word [r8 + 0x20], cx
movzx ecx, byte [0x14037ebd6]
mov byte [r8 + 0x22], cl
mov byte [r8 + 0x23], r14b
mov qword [rdi], r8
jmp 0x1401dd6e7
movups xmm0, xmmword [rdx]
movaps xmmword [rsp + 0x60], xmm0
mov edx, 8
lea rcx, [rsp + 0x60]
call fcn.1401cc000
mov qword [rbp - 0x80], rax
test al, al
jne 0x1401dd80b
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140151be0
movsd xmm6, qword [rax]
mov ebx, dword [rax + 8]
xor r14d, r14d
mov qword [rbp - 0x68], r14
lea ecx, [r14 + 0x2b]
call fcn.140344c8c
mov r8, rax
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
movups xmm0, xmmword [str.Special_cell_has_Ordinary_type]
movups xmmword [rax + 0xc], xmm0
movsd xmm1, qword [0x14037ec10]
movsd qword [rax + 0x1c], xmm1
mov ecx, dword [0x14037ec18]
mov dword [rax + 0x24], ecx
movzx eax, word [0x14037ec1c]
mov word [r8 + 0x28], ax
mov byte [r8 + 0x2a], r14b
mov qword [rdi], r8
jmp 0x1401dd6e7
mov r8d, dword [rbp - 0x74]
xor r14d, r14d
mov edi, r14d
mov dword [rbp - 0x70], r14d
mov r15d, r14d
movzx ecx, al
test al, al
je 0x1401de3dd
sub ecx, 1
je 0x1401de0e3
sub ecx, 1
je 0x1401ddffa
sub ecx, 1
je 0x1401ddd34
cmp ecx, 1
je 0x1401dd89c
lea rax, str.Unknown_special_cell_type
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 0x19
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
lea rdx, [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
jmp 0x1401ddd0c
cmp r8d, 0x228
je 0x1401dd8fa
lea rax, str.Not_enouch_data_for_a_MerkleUpdate_special_cell
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], gethostbyname
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
lea rdx, [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
jmp 0x1401ddd0c
cmp r13, 2
je 0x1401dd955
lea rax, str.Wrong_references_count_for_a_MerkleUpdate_special_cell
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], getservbyport
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
lea rdx, [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
jmp 0x1401ddd0c
mov rcx, rsi
call fcn.140142820
mov rcx, qword [rax]
mov r9, qword [rcx + 0x48]
xor r8d, r8d
lea rdx, [rbp + 0x48]
mov rcx, rax
call r9
mov qword [rbp - 0x10], r14
lea rax, [rbp + 0x48]
mov qword [rbp - 8], rax
mov dword [rbp], r14d
mov dword [rbp + 4], 0x100
lea rax, [rbp + 0x48]
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], r14d
mov r15d, dword [rbx + 8]
mov rdi, qword [rbx]
mov qword [rsp + 0x40], rdi
lea eax, [r15 + 8]
mov dword [rsp + 0x48], eax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rbp - 0x20], xmm1
xor r9d, r9d
mov r8d, 0x100
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x20]
call fcn.1401cc300
nop
test eax, eax
je 0x1401dda30
lea rax, str.First_hash_mismatch_in_a_MerkleProof_special_cell
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], getservbyport
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
lea rdx, [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
jmp 0x1401ddd0c
lea rcx, [rsi + 8]
call fcn.140142820
mov rcx, qword [rax]
mov r9, qword [rcx + 0x48]
xor r8d, r8d
lea rdx, [rbp + 0x48]
mov rcx, rax
call r9
mov qword [rbp - 0x10], r14
lea rax, [rbp + 0x48]
mov qword [rbp - 8], rax
mov dword [rbp], r14d
mov dword [rbp + 4], 0x100
lea rax, [rbp + 0x48]
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], r14d
mov qword [rsp + 0x40], rdi
lea eax, [r15 + 0x108]
mov dword [rsp + 0x48], eax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rbp - 0x20], xmm1
xor r9d, r9d
mov r8d, 0x100
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x20]
call fcn.1401cc300
nop
test eax, eax
je 0x1401ddb08
lea rax, str.Second_hash_mismatch_in_a_MerkleProof_special_cell
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], getservbyport
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
lea rdx, [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
jmp 0x1401ddd0c
mov rcx, rsi
call fcn.140142820
add r15d, 0x208
mov qword [rsp + 0x50], rdi
mov dword [rsp + 0x58], r15d
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
mov rcx, qword [rax]
mov r8, qword [rcx + 0x40]
xor edx, edx
mov rcx, rax
call r8
movzx ebx, ax
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rsp + 0x60]
call fcn.1401cc000
cmp rax, rbx
je 0x1401ddba7
lea rax, str.First_depth_mismatch_in_a_MerkleProof_special_cell
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], getservbyport
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
lea rdx, [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
jmp 0x1401ddd0c
lea rcx, [rsi + 8]
call fcn.140142820
lea ecx, [r15 + 0x10]
mov qword [rsp + 0x50], rdi
mov dword [rsp + 0x58], ecx
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
mov rcx, qword [rax]
mov r8, qword [rcx + 0x40]
xor edx, edx
mov rcx, rax
call r8
movzx ebx, ax
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rsp + 0x60]
call fcn.1401cc000
cmp rax, rbx
je 0x1401ddc43
lea rax, str.Second_depth_mismatch_in_a_MerkleProof_special_cell
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], reloc.WS2_32.dll_gethostbyaddr
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
lea rdx, [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
jmp 0x1401ddd0c
mov rcx, rsi
call fcn.140142820
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
lea rdx, [rbp + 0x40]
mov rcx, rax
call r8
mov rbx, rax
lea rcx, [rsi + 8]
call fcn.140142820
mov rdx, qword [rax]
mov r8, qword [rdx + 0x38]
lea rdx, [rbp + 0x30]
mov rcx, rax
call r8
mov edi, dword [rax]
or edi, dword [rbx]
shr edi, 1
mov dword [rbp - 0x70], edi
lea rcx, [rsi + 8]
call fcn.140142820
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov ebx, eax
mov rcx, rsi
call fcn.140142820
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov r15d, eax
cmp eax, ebx
cmovb r15d, ebx
mov edx, edi
cmp r15d, 7
jbe 0x1401de43a
lea rax, str.Too_big_virtualization
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], reloc.WS2_32.dll_shutdown
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
lea rdx, [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1401ddd2c
movsd xmm0, qword [rcx]
movsd qword [rsp + 0x40], xmm0
test byte [rsp + 0x40], 1
jne 0x1401ddd2c
call fcn.1403448d8
mov rax, rbx
jmp 0x1401dd6ea
cmp r8d, 0x118
je 0x1401dddb9
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140151be0
movsd xmm6, qword [rax]
mov ebx, dword [rax + 8]
mov qword [rbp - 0x68], r14
mov ecx, 0x3b
call fcn.140344c8c
mov rdx, rax
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
movups xmm0, xmmword [str.Not_enouch_data_for_a_MerkleProof_special_cell]
movups xmmword [rax + 0xc], xmm0
movups xmm1, xmmword [0x14037ed28]
movups xmmword [rax + 0x1c], xmm1
movsd xmm0, qword [0x14037ed38]
movsd qword [rax + 0x2c], xmm0
mov eax, dword [0x14037ed40]
mov dword [rdx + 0x34], eax
movzx eax, word [0x14037ed44]
mov word [rdx + 0x38], ax
mov byte [rdx + 0x3a], 0
mov rbx, qword [rsp + 0x70]
mov qword [rbx], rdx
mov rax, rbx
jmp 0x1401dd6ea
cmp r13, 1
je 0x1401dde4b
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140151be0
movsd xmm6, qword [rax]
mov ebx, dword [rax + 8]
mov qword [rbp - 0x80], r14
mov ecx, 0x42
call fcn.140344c8c
mov qword [rbp - 0x80], rax
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
lea rcx, [rax + 0xc]
movups xmm0, xmmword [str.Wrong_references_count_for_a_MerkleProof_special_cell]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [0x14037ed58]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [0x14037ed68]
movups xmmword [rcx + 0x20], xmm0
mov eax, dword [0x14037ed78]
mov dword [rcx + 0x30], eax
movzx eax, byte [0x14037ed7c]
mov byte [rcx + 0x34], al
mov byte [rcx + 0x35], 0
lea rdx, [rbp - 0x80]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
mov rcx, qword [rbp - 0x80]
jmp 0x1401ddd11
mov rcx, rsi
call fcn.140142820
mov rcx, qword [rax]
mov r9, qword [rcx + 0x48]
xor r8d, r8d
lea rdx, [rbp + 0x48]
mov rcx, rax
call r9
mov qword [rbp - 0x10], r14
lea rax, [rbp + 0x48]
mov qword [rbp - 8], rax
mov dword [rbp], r14d
mov dword [rbp + 4], 0x100
lea rax, [rbp + 0x48]
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], r14d
mov edi, dword [rbx + 8]
add edi, 8
mov rbx, qword [rbx]
mov qword [rsp + 0x40], rbx
mov dword [rsp + 0x48], edi
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rbp - 0x20], xmm1
xor r9d, r9d
mov r8d, 0x100
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x20]
call fcn.1401cc300
nop
test eax, eax
je 0x1401ddf24
lea rax, str.Hash_mismatch_in_a_MerkleProof_special_cell
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], gethostbyaddr
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
lea rdx, [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
jmp 0x1401ddd0c
mov rcx, rsi
call fcn.140142820
lea ecx, [rdi + 0x100]
mov qword [rsp + 0x50], rbx
mov dword [rsp + 0x58], ecx
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
mov rcx, qword [rax]
mov r8, qword [rcx + 0x40]
xor edx, edx
mov rcx, rax
call r8
movzx ebx, ax
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rsp + 0x60]
call fcn.1401cc000
cmp rax, rbx
je 0x1401ddfc1
lea rax, str.Depth_mismatch_in_a_MerkleProof_special_cell
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], gethostbyname
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
lea rdx, [rsp + 0x30]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
jmp 0x1401ddd0c
mov rcx, rsi
call fcn.140142820
mov rcx, qword [rax]
mov r8, qword [rcx + 0x38]
lea rdx, [rbp + 8]
mov rcx, rax
call r8
mov edi, dword [rax]
shr edi, 1
mov dword [rbp - 0x70], edi
mov rcx, rsi
call fcn.140142820
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov r15d, eax
jmp 0x1401ddcb0
cmp r8d, 0x108
je 0x1401de076
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140151be0
movsd xmm6, qword [rax]
mov ebx, dword [rax + 8]
mov qword [rbp - 0x68], r14
mov ecx, reloc.WS2_32.dll_getservbyname
call fcn.140344c8c
mov rdx, rax
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
movups xmm0, xmmword [str.Not_enouch_data_for_a_Library_special_cell]
movups xmmword [rax + 0xc], xmm0
movups xmm1, xmmword [0x14037ecf8]
movups xmmword [rax + 0x1c], xmm1
movsd xmm0, qword [0x14037ed08]
movsd qword [rax + 0x2c], xmm0
movzx eax, word [0x14037ed10]
mov word [rdx + 0x34], ax
mov byte [rdx + 0x36], 0
mov rbx, qword [rsp + 0x70]
mov qword [rbx], rdx
mov rax, rbx
jmp 0x1401dd6ea
mov edx, r14d
cmp r13, 4
jbe 0x1401ddcb2
lea rax, str.Too_many_cell_references
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 0x18
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], r14
mov rbx, qword [rsp + 0x70]
mov qword [rbx], rax
test rax, rax
je 0x1401deb55
mov rax, rbx
jmp 0x1401dd6ea
test r13, r13
je 0x1401de172
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140151be0
movsd xmm6, qword [rax]
mov ebx, dword [rax + 8]
mov qword [rbp - 0x68], r14
mov ecx, 0x3c
call fcn.140344c8c
mov rdx, rax
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
movups xmm0, xmmword [str.PrunnedBranch_special_cell_has_a_cell_reference]
movups xmmword [rax + 0xc], xmm0
movups xmm1, xmmword [0x14037ec30]
movups xmmword [rax + 0x1c], xmm1
movsd xmm0, qword [0x14037ec40]
movsd qword [rax + 0x2c], xmm0
mov eax, dword [0x14037ec48]
mov dword [rdx + 0x34], eax
movzx eax, word [0x14037ec4c]
mov word [rdx + 0x38], ax
movzx eax, byte [0x14037ec4e]
mov byte [rdx + 0x3a], al
mov byte [rdx + 0x3b], 0
mov rbx, qword [rsp + 0x70]
mov qword [rbx], rdx
mov rax, rbx
jmp 0x1401dd6ea
cmp r8d, 0x10
jae 0x1401de1db
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140151be0
movsd xmm6, qword [rax]
mov ebx, dword [rax + 8]
mov qword [rbp - 0x68], r14
mov ecx, 0x3d
call fcn.140344c8c
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
movups xmm0, xmmword [str.Not_enough_data_for_a_PrunnedBranch_special_cell]
movups xmmword [rax + 0xc], xmm0
movups xmm1, xmmword [0x14037ec60]
movups xmmword [rax + 0x1c], xmm1
movups xmm0, xmmword [0x14037ec70]
movups xmmword [rax + 0x2c], xmm0
mov byte [rax + 0x3c], 0
mov rbx, qword [rsp + 0x70]
mov qword [rbx], rax
mov rax, rbx
jmp 0x1401dd6ea
mov ecx, dword [rbx + 8]
add ecx, 8
mov rax, qword [rbx]
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], ecx
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
mov edx, 8
lea rcx, [rsp + 0x60]
call fcn.1401cc000
movzx edi, al
mov dword [rbp - 0x70], edi
mov dword [rbp + 8], r14d
bsr ecx, edi
je 0x1401de35e
cmp ecx, 2
ja 0x1401de35e
mov edx, 1
shl edx, cl
dec edx
and edx, edi
mov eax, edx
shr eax, 1
and eax, 0x55555555
sub edx, eax
mov eax, edx
shr eax, 2
and eax, 0x33333333
and edx, 0x33333333
add eax, edx
mov ecx, eax
shr ecx, 4
add ecx, eax
and ecx, 0xf0f0f0f
mov eax, ecx
shr eax, 8
add ecx, eax
mov eax, ecx
shr eax, 0x10
add eax, ecx
and eax, 0x3f
imul eax, eax, 0x110
add eax, 0x120
mov r8d, dword [rbp - 0x74]
cmp r8d, eax
je 0x1401de2ef
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140151be0
movsd xmm6, qword [rax]
mov ebx, dword [rax + 8]
mov qword [rbp - 0x80], r14
mov ecx, 0x3d
call fcn.140344c8c
mov qword [rbp - 0x80], rax
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
movups xmm0, xmmword [str.Not_enouch_data_for_a_PrunnedBranch_special_cell]
movups xmmword [rax + 0xc], xmm0
movups xmm1, xmmword [0x14037ecc0]
movups xmmword [rax + 0x1c], xmm1
movups xmm0, xmmword [0x14037ecd0]
movups xmmword [rax + 0x2c], xmm0
mov byte [rax + 0x3c], 0
lea rdx, [rbp - 0x80]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
mov rcx, qword [rbp - 0x80]
jmp 0x1401ddd11
mov edx, edi
cmp r8d, 0x3ff
jbe 0x1401de079
lea rax, str.Too_many_bits
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], setsockopt
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x60], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.140141920
nop
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], r14
mov rbx, qword [rsp + 0x70]
mov qword [rbx], rax
test rax, rax
je 0x1401deb6f
mov rax, rbx
jmp 0x1401dd6ea
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140151be0
movsd xmm6, qword [rax]
mov ebx, dword [rax + 8]
mov qword [rbp - 0x80], r14
mov ecx, gethostbyname
call fcn.140344c8c
mov qword [rbp - 0x80], rax
movsd qword [rax], xmm6
mov dword [rax + 8], ebx
lea rcx, [rax + 0xc]
movups xmm0, xmmword [str.Prunned_Branch_has_an_invalid_level]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [0x14037ec98]
movups xmmword [rcx + 0x10], xmm1
movzx eax, word [0x14037eca8]
mov word [rcx + 0x20], ax
movzx eax, byte [0x14037ecaa]
mov byte [rcx + 0x22], al
mov byte [rcx + 0x23], 0
lea rdx, [rbp - 0x80]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
mov rcx, qword [rbp - 0x80]
jmp 0x1401ddd11
mov rbx, rsi
mov edx, r14d
cmp rsi, r12
je 0x1401de2f1
nop dword [rax]
mov rcx, qword [rbx]
test rcx, rcx
je 0x1401deba3
mov rax, qword [rcx]
lea rdx, [rbp + 0x44]
call qword [rax + reloc.WS2_32.dll_getservbyport]
mov eax, dword [rax]
or edi, eax
mov dword [rbp - 0x70], edi
mov rcx, qword [rbx]
test rcx, rcx
je 0x1401deb89
mov rax, qword [rcx]
call qword [rax + 0x20]
cmp r15d, eax
cmovb r15d, eax
add rbx, 8
cmp rbx, r12
jne 0x1401de3f0
mov edx, edi
mov r8d, dword [rbp - 0x74]
jmp 0x1401de2f1
mov dword [rbp - 0x60], r14d
bsr eax, edx
je 0x1401de44e
inc eax
cmp eax, 3
ja 0x1401debbd
cmp byte [rbp - 0x80], 1
jne 0x1401de45c
mov r12d, 1
jmp 0x1401de4a0
mov eax, edx
shr eax, 1
and eax, 0x55555555
mov ecx, edx
sub ecx, eax
mov eax, ecx
shr eax, 2
and eax, 0x33333333
and ecx, 0x33333333
add eax, ecx
mov ecx, eax
shr ecx, 4
add ecx, eax
and ecx, 0xf0f0f0f
mov eax, ecx
shr eax, 8
add ecx, eax
mov r12d, ecx
shr r12d, 0x10
add r12d, ecx
and r12d, 0x3f
inc r12d
mov r8d, dword [rbp - 0x74]
mov dword [rbp - 0x60], r8d
and dl, 7
add dl, dl
or dl, byte [rbp + 0x120]
shl dl, 3
movzx eax, byte [rbp - 0x5c]
and al, 0x80
or dl, al
movzx eax, r13b
and al, 7
or dl, al
mov dword [rbp - 0x38], edx
mov byte [rbp - 0x5c], dl
and r15b, 7
shl r15b, 3
movzx eax, byte [rbp - 0x5b]
and al, 0xc0
or r15b, al
movzx eax, r12b
and al, 7
or r15b, al
mov byte [rbp - 0x5b], r15b
mov rbx, qword [rbp - 0x60]
mov rax, rbx
shr rax, 0x28
movzx ecx, al
add r8d, 7
shr r8, 3
mov qword [rbp + 0x38], r8
mov rdx, rbx
shr rdx, 0x20
and edx, 7
and ecx, 7
imul rcx, rcx, 0x22
add rcx, r8
lea rax, [rcx + rdx*8]
mov qword [rsp + 0x30], rax
mov ecx, 0x20
call fcn.14034489c
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x68], rax
test rax, rax
je 0x1401de5aa
mov dword [rax + 8], 1
lea rcx, vtable.vm::DataCell.0
mov qword [rax], rcx
mov qword [rax + 0x10], rbx
lea rcx, [rbp - 0x10]
call fcn.1401def20
mov edx, 1
mov rcx, rax
call fcn.1401d3890
nop
lea rax, vtable.vm::detail::CellWithUniquePtrStorage_class_vm::DataCell_.0
mov rcx, qword [rbp - 0x40]
mov qword [rcx], rax
lea rax, [rcx + 0x18]
mov qword [rbp + 0x28], rax
mov rcx, qword [rsp + 0x30]
call fcn.140344c8c
mov rbx, rax
test rax, rax
je 0x1401de59d
mov r8, qword [rsp + 0x30]
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
jmp 0x1401de5a0
mov rbx, r14
mov rcx, qword [rbp - 0x40]
mov qword [rcx + 0x18], rbx
jmp 0x1401de5b1
mov rcx, r14
mov qword [rbp - 0x40], rcx
mov qword [rsp + 0x40], rcx
mov rax, qword [rcx]
call qword [rax + 0x58]
mov rdx, rax
mov qword [rsp + 0x30], rax
movzx eax, byte [rbp - 0x38]
and eax, 7
mov qword [rbp + 0x20], rax
movzx ecx, r15b
and ecx, 7
mov ebx, ecx
shl rbx, 5
lea rcx, [rcx + rax*4]
lea r15, [rdx + rcx*2]
add r15, rbx
mov qword [rsp + 0x50], r15
mov dword [rsp + 0x58], r14d
mov rax, qword [rbp - 0x50]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x60], xmm0
movaps xmm1, xmmword [rsp + 0x50]
movdqa xmmword [rbp - 0x20], xmm1
mov r8d, dword [rbp - 0x74]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x20]
call fcn.1401cc5a0
mov r10d, dword [rbp - 0x74]
mov r11d, r10d
and r11d, 7
mov dword [rbp + 0x18], r11d
je 0x1401de649
mov edx, pe_nt_image_headers64
mov ecx, r11d
sar edx, cl
mov ecx, r10d
shr ecx, 3
movzx eax, dl
neg al
and al, byte [rcx + r15]
or al, dl
mov byte [rcx + r15], al
mov rdx, qword [rsp + 0x30]
lea rax, [rdx + rbx]
mov qword [rbp - 0x50], rax
test r13, r13
je 0x1401de675
mov rcx, rax
sub rcx, rsi
mov rax, qword [rsi]
mov qword [rsi], r14
mov qword [rcx + rsi], rax
lea rsi, [rsi + 8]
sub r13, 1
jne 0x1401de661
mov rax, qword [rbp + 0x20]
lea rax, [rdx + rax*8]
add rax, rbx
mov qword [rbp + 0x28], rax
mov eax, edi
shr eax, 1
and eax, 0x55555555
mov ecx, edi
sub ecx, eax
mov eax, ecx
shr eax, 2
and eax, 0x33333333
and ecx, 0x33333333
add eax, ecx
mov ecx, eax
shr ecx, 4
add ecx, eax
and ecx, 0xf0f0f0f
mov eax, ecx
shr eax, 8
add ecx, eax
mov r15d, ecx
shr r15d, 0x10
add r15d, ecx
and r15d, 0x3f
inc r15d
sub r15d, r12d
mov dword [rbp + 0x1c], r15d
mov r13d, r14d
mov r8d, r14d
mov dword [rsp + 0x78], r14d
mov dword [rbp - 0x60], r14d
bsr ecx, edi
je 0x1401de6ec
mov eax, 0x1f
sub eax, ecx
jmp 0x1401de6f1
mov eax, 0x20
mov ecx, 0x20
sub ecx, eax
mov dword [rbp - 0x60], ecx
mov ecx, dword [0x1406efa78]
mov rax, qword gs:[0x58]
lea rbx, [rax + rcx*8]
mov qword [rbp - 0x68], rbx
lea rsi, vtable.td::LambdaGuard_class__lambda_27e6822c01c9a31c5147e3d5f4c71d7c__.0
mov r12d, 0x18
nop
test r13d, r13d
je 0x1401de736
lea ecx, [r13 - 1]
mov eax, edi
shr eax, cl
test al, 1
jne 0x1401de736
xor r9b, r9b
jmp 0x1401de739
mov r9b, 1
mov ecx, r13d
mov edx, 1
shl edx, cl
dec edx
and edx, edi
mov dword [rbp - 0x30], r14d
bsr eax, edx
je 0x1401de755
add eax, 0xffffffe1
jmp 0x1401de75a
mov eax, 0xffffffe0
add eax, 0x20
mov ecx, r14d
cmp eax, r13d
sete cl
movzx eax, r9b
cmp eax, ecx
jne 0x1401deb3b
test r9b, r9b
je 0x1401dea76
mov qword [rbp + 0x48], rsi
lea rax, [rsp + 0x78]
mov qword [rbp + 0x50], rax
mov byte [rbp + 0x58], 0
cmp r8d, r15d
jae 0x1401de796
jmp 0x1401dea6e
mov esi, dword [rbp - 0x38]
movzx ecx, sil
and cl, 7
mov byte [rbp - 0x78], cl
movzx eax, sil
shr al, 3
and al, 1
shl dl, 2
add al, dl
shl al, 3
add al, cl
mov byte [rbp - 0x6c], al
mov eax, r10d
shr eax, 3
add al, al
movzx edx, al
lea eax, [rdx + 1]
movzx ecx, al
test r11d, r11d
cmove ecx, edx
mov byte [rbp - 0x6b], cl
add r12, qword [rbx]
mov rbx, qword [r12]
test rbx, rbx
jne 0x1401de88f
lea ecx, [rbx + 8]
call fcn.14034489c
mov rbx, rax
mov qword [rbp - 0x48], rax
test rax, rax
je 0x1401de817
mov qword [rax], r14
call fcn.1401ea3e0
mov qword [rbx], rax
call fcn.1401ebb50
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbx]
call fcn.1401e9c70
jmp 0x1401de81a
mov rbx, r14
mov qword [r12], rbx
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], r12
mov ecx, 0x18
call fcn.14034489c
mov qword [rbp + 0x10], rax
test rax, rax
je 0x1401de858
lea rcx, vtable.td::LambdaDestructor_class__lambda_1d64b98e2f3cceb545607c5ab38e1326__.0
mov qword [rax], rcx
mov qword [rbp - 0x20], r14
mov qword [rax + 8], rbx
mov qword [rax + 0x10], r12
mov rbx, r14
jmp 0x1401de85b
mov rax, r14
mov qword [rbp - 0x30], r14
mov qword [rbp + 0x10], rax
lea rcx, [rbp + 0x10]
call fcn.1401e7710
nop
test rbx, rbx
je 0x1401de88b
mov rcx, qword [rbx]
call fcn.1401ea330
mov qword [rbx], r14
mov edx, 8
mov rcx, rbx
call fcn.1403448d8
nop
mov rbx, qword [r12]
call fcn.1401ebb50
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rbx]
call fcn.1401e9c70
mov rcx, qword [r12]
mov r8d, 2
lea rdx, [rbp - 0x6c]
mov rcx, qword [rcx]
call fcn.1401e9cb0
mov rcx, qword [r12]
mov eax, dword [rsp + 0x78]
cmp eax, r15d
jne 0x1401de8dc
mov rax, qword [rsp + 0x50]
test rax, rax
je 0x1401debd7
mov r8, qword [rbp + 0x38]
mov rdx, rax
jmp 0x1401de8f9
sub eax, r15d
dec eax
shl rax, 5
mov rdx, qword [rsp + 0x30]
add rdx, rax
je 0x1401deb21
mov r8d, 0x20
mov rcx, qword [rcx]
call fcn.1401e9cb0
mov ecx, dword [rsp + 0x78]
sub ecx, r15d
mov dword [rbp - 0x30], ecx
movzx ebx, r14w
mov r15, r14
movzx eax, sil
and eax, 7
jbe 0x1401de9a4
mov qword [rbp - 0x48], rax
mov rdi, qword [rbp - 0x50]
nop word [rax + rax]
movzx eax, byte [rbp - 0x80]
sub al, 3
mov rcx, qword [rdi + r15*8]
cmp al, 1
mov rax, qword [rcx]
mov edx, r13d
ja 0x1401de948
lea edx, [r13 + 1]
call qword [rax + 0x40]
movzx esi, ax
lea rax, [rbp - 0x58]
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x68], r14d
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x70], xmm0
movzx edx, si
mov r8d, reloc.WS2_32.dll_recv
lea rcx, [rbp + 0x70]
call fcn.1401cc8e0
mov rcx, qword [r12]
mov r8d, 2
lea rdx, [rbp - 0x58]
mov rcx, qword [rcx]
call fcn.1401e9cb0
cmp bx, si
cmovb bx, si
inc r15
cmp r15, qword [rbp - 0x48]
jl 0x1401de930
mov edi, dword [rbp - 0x70]
mov ecx, dword [rbp - 0x30]
cmp byte [rbp - 0x78], 0
je 0x1401de9bb
mov eax, 0x400
cmp bx, ax
jae 0x1401dea9b
inc bx
mov r15d, ecx
mov qword [rbp - 0x48], r15
mov rax, qword [rbp + 0x28]
mov word [rax + r15*2], bx
mov rsi, r14
cmp qword [rbp + 0x20], 0
jbe 0x1401dea25
mov r14, qword [rbp - 0x50]
mov rdi, qword [rbp - 0x80]
mov r15, qword [rbp + 0x20]
lea eax, [rdi - 3]
mov rbx, qword [r12]
mov rcx, qword [r14 + rsi*8]
lea rdx, [rbp + 0x70]
cmp al, 1
mov rax, qword [rcx]
mov r8d, r13d
ja 0x1401de9fe
lea r8d, [r13 + 1]
call qword [rax + 0x48]
mov r8d, 0x20
lea rdx, [rbp + 0x70]
mov rcx, qword [rbx]
call fcn.1401e9cb0
inc rsi
cmp rsi, r15
jl 0x1401de9e1
mov edi, dword [rbp - 0x70]
xor r14d, r14d
mov r15, qword [rbp - 0x48]
mov rcx, qword [r12]
shl r15, 5
add r15, qword [rsp + 0x30]
je 0x1401deb21
mov dword [rbp - 0x30], r14d
lea r8, [rbp - 0x30]
mov rdx, r15
mov rcx, qword [rcx]
call fcn.1401e9ad0
nop
mov r8d, dword [rsp + 0x78]
mov r15d, dword [rbp + 0x1c]
mov r10d, dword [rbp - 0x74]
mov r11d, dword [rbp + 0x18]
mov rbx, qword [rbp - 0x68]
lea rsi, vtable.td::LambdaGuard_class__lambda_27e6822c01c9a31c5147e3d5f4c71d7c__.0
mov r12d, 0x18
inc r8d
mov dword [rsp + 0x78], r8d
inc r13d
cmp r13d, dword [rbp - 0x60]
jbe 0x1401de720
mov rbx, qword [rsp + 0x70]
mov qword [rbx], r14
mov rcx, qword [rbp - 0x40]
mov qword [rbx + 8], rcx
mov rax, rbx
jmp 0x1401dd6ea
lea rax, str.Depth_is_too_big
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], reloc.WS2_32.dll_recv
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x70], xmm0
lea rax, [rbp + 0x70]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x50]
call fcn.140141920
nop
lea rdx, [rbp - 0x50]
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1401dd180
nop
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x1401deb07
movsd xmm0, qword [rcx]
movsd qword [rsp + 0x40], xmm0
test byte [rsp + 0x40], 1
jne 0x1401deb07
call fcn.1403448d8
nop
inc dword [rsp + 0x78]
mov rcx, qword [rbp - 0x40]
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rax, rbx
jmp 0x1401dd6ea
mov r8d, 0x25
lea rdx, str.D:_a_ton_ton_tdutils_td_utils_Slice.h
lea rcx, str.s____nullptr
call fcn.1401dfe20
nop
mov r8d, 0x3c
lea rdx, [0x14037dd60]
lea rcx, str.res___apply_level_.get_level____level_
call fcn.1401dfe20
nop
mov r8d, 0x1cc
lea rdx, str.D:_a_ton_ton_tdutils_td_utils_Status.h
lea rcx, str.status_.is_error__
call fcn.1401dfe20
nop
mov r8d, 0x1cc
lea rdx, str.D:_a_ton_ton_tdutils_td_utils_Status.h
lea rcx, str.status_.is_error__
call fcn.1401dfe20
nop
mov r8d, 0x120
lea rdx, str.D:_a_ton_toncryptocommon_refcnt.hpp
lea rcx, str.ptr___deferencing_null_Ref_
call fcn.1401dfe20
int3
mov r8d, 0x120
lea rdx, str.D:_a_ton_toncryptocommon_refcnt.hpp
lea rcx, str.ptr___deferencing_null_Ref_
call fcn.1401dfe20
int3
mov r8d, 0xb3
lea rdx, str.D:_a_ton_toncrypto_vmcellsDataCell.cpp
lea rcx, str.level_mask.get_level_____max_level
call fcn.1401dfe20
nop
mov r8d, 0xa2
lea rdx, str.D:_a_ton_ton_tdutils_td_utils_Slice.h
lea rcx, str.s____nullptr
call fcn.1401dfe20
int3