Function at 0x1400a6c20
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xe8
mov rbx, qword [rdx + 8]
xor esi, esi
mov dword [rbp - 0x79], esi
mov r10, rcx
mov r14d, esi
cmp rbx, rdx
je 0x1400a7920
mov qword [rax - 0x28], rdi
mov qword [rax - 0x30], r12
lea r12, [0x1400ec3a1]
mov qword [rax - 0x38], r13
mov qword [rax - 0x40], r15
lea r15, [0x140000000]
cmp byte [rbx + 0x31], 0
je 0x1400a7601
mov eax, dword [rbx + 0x20]
lea r8, [rbp - 0x69]
mov rdi, qword [rbx + 0x38]
lea rdx, [rbp - 0x29]
xorps xmm0, xmm0
mov dword [rbp - 0x69], eax
xor ecx, ecx
mov qword [rbp + 7], rcx
mov rcx, r10
movups xmmword [rbp - 0x61], xmm0
movsd xmm0, qword [rbp + 7]
movsd qword [rbp - 0x51], xmm0
call fcn.1400a3d30
mov r13, qword [rbp - 0x29]
movzx edx, byte [rbp - 0x21]
mov qword [r13 + 0x38], rdi
test dl, dl
je 0x1400a6cd1
movzx eax, byte [rbx + 0x30]
mov byte [r13 + 0x30], al
movzx eax, byte [rbx + 0x33]
mov byte [r13 + 0x33], al
mov byte [r13 + 0x31], 1
movzx eax, byte [rbx + 0x30]
mov eax, dword [r15 + rax*4 + 0xe7e70]
dec eax
cmp eax, 9
ja case.default.0x1400a6cf5
cdqe
mov ecx, dword [r15 + rax*4 + 0xa7930]
add rcx, r15
jmp rcx
test dl, dl
je 0x1400a6d5a
mov r9d, 0x811c9dc5
mov rax, r12
mov ecx, 0x44
nop dword [rax]
xor r9d, ecx
movzx ecx, byte [rax]
imul r9d, r9d, 0x1000193
lea rax, [rax + 1]
test ecx, ecx
jne 0x1400a6d10
mov dword [rsp + 0x20], 0x31c
mov edx, ntohs
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufextension_set.cc
lea ecx, [rdx + 5]
call fcn.140025410
test rax, rax
je 0x1400a6d53
mov qword [rax], rsi
mov qword [rax + 8], 0
jmp 0x1400a6d56
mov rax, rsi
mov qword [r13 + 0x28], rax
mov rdx, qword [rbx + 0x28]
mov rcx, qword [r13 + 0x28]
call fcn.140085fc0
jmp case.default.0x1400a6cf5
test dl, dl
je 0x1400a6dc9
mov r9d, 0x811c9dc5
mov rcx, r12
mov eax, 0x44
nop
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x1400a6d80
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufextension_set.cc
mov dword [rsp + 0x20], 0x31d
lea edx, [rax + 0xb]
lea ecx, [rax + 0x10]
call fcn.140025410
test rax, rax
je 0x1400a6dc2
mov qword [rax], rsi
mov qword [rax + 8], 0
jmp 0x1400a6dc5
mov rax, rsi
mov qword [r13 + 0x28], rax
mov rsi, qword [r13 + 0x28]
mov rdi, qword [rbx + 0x28]
cmp rdi, rsi
jne 0x1400a6e15
bts r14d, 0xc
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobuf_repeated_field.h
mov r9d, 0x2dd
mov dword [rbp - 0x79], r14d
mov edx, 3
lea rcx, [rbp - 0x69]
call fcn.14004ce00
lea rdx, str.CHECK_failed:__other_____this_:
mov rcx, rax
call fcn.14004d0d0
mov rdx, rax
lea rcx, [rbp + 0x77]
call fcn.14004cf00
bt r14d, 0xc
jae 0x1400a6e2e
btr r14d, 0xc
lea rcx, [rbp - 0x69]
mov dword [rbp - 0x79], r14d
call fcn.14004ceb0
mov ecx, dword [rdi + 8]
test ecx, ecx
je 0x1400a6e63
mov edx, dword [rsi + 8]
add edx, ecx
mov rcx, rsi
call fcn.140075cb0
movsxd rcx, dword [rsi + 8]
mov rax, qword [rsi]
movsxd r8, dword [rdi + 8]
mov rdx, qword [rdi]
shl r8, 3
lea rcx, [rax + rcx*8]
call fcn.1400bddc0
mov eax, dword [rdi + 8]
add dword [rsi + 8], eax
xor esi, esi
jmp case.default.0x1400a6cf5
test dl, dl
je 0x1400a6ec9
mov r9d, 0x811c9dc5
mov rcx, r12
mov eax, 0x44
nop dword [rax]
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x1400a6e80
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufextension_set.cc
mov dword [rsp + 0x20], 0x31e
lea edx, [rax + 0xb]
lea ecx, [rax + 0x10]
call fcn.140025410
test rax, rax
je 0x1400a6ec2
mov qword [rax], rsi
mov qword [rax + 8], 0
jmp 0x1400a6ec5
mov rax, rsi
mov qword [r13 + 0x28], rax
mov rsi, qword [r13 + 0x28]
mov rdi, qword [rbx + 0x28]
cmp rdi, rsi
jne 0x1400a6f15
bts r14d, 0xe
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobuf_repeated_field.h
mov r9d, 0x2dd
mov dword [rbp - 0x79], r14d
mov edx, 3
lea rcx, [rbp - 0x69]
call fcn.14004ce00
lea rdx, str.CHECK_failed:__other_____this_:
mov rcx, rax
call fcn.14004d0d0
mov rdx, rax
lea rcx, [rbp + 0x7f]
call fcn.14004cf00
bt r14d, 0xe
jae 0x1400a6f2e
btr r14d, 0xe
lea rcx, [rbp - 0x69]
mov dword [rbp - 0x79], r14d
call fcn.14004ceb0
mov ecx, dword [rdi + 8]
test ecx, ecx
je 0x1400a6e63
mov edx, dword [rsi + 8]
add edx, ecx
mov rcx, rsi
call fcn.1400630b0
movsxd rcx, dword [rsi + 8]
mov rax, qword [rsi]
movsxd r8, dword [rdi + 8]
mov rdx, qword [rdi]
shl r8, 2
lea rcx, [rax + rcx*4]
call fcn.1400bddc0
mov eax, dword [rdi + 8]
add dword [rsi + 8], eax
xor esi, esi
jmp case.default.0x1400a6cf5
test dl, dl
je 0x1400a6fc9
mov r9d, 0x811c9dc5
mov rcx, r12
mov eax, 0x44
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x1400a6f80
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufextension_set.cc
mov dword [rsp + 0x20], 0x31f
lea edx, [rax + 0xb]
lea ecx, [rax + 0x10]
call fcn.140025410
test rax, rax
je 0x1400a6fc2
mov qword [rax], rsi
mov qword [rax + 8], 0
jmp 0x1400a6fc5
mov rax, rsi
mov qword [r13 + 0x28], rax
mov rsi, qword [r13 + 0x28]
mov rdi, qword [rbx + 0x28]
cmp rdi, rsi
jne 0x1400a7015
bts r14d, 0xb
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobuf_repeated_field.h
mov r9d, 0x2dd
mov dword [rbp - 0x79], r14d
mov edx, 3
lea rcx, [rbp - 0x69]
call fcn.14004ce00
lea rdx, str.CHECK_failed:__other_____this_:
mov rcx, rax
call fcn.14004d0d0
mov rdx, rax
lea rcx, [rbp - 0x75]
call fcn.14004cf00
bt r14d, 0xb
jae 0x1400a702e
btr r14d, 0xb
lea rcx, [rbp - 0x69]
mov dword [rbp - 0x79], r14d
call fcn.14004ceb0
mov ecx, dword [rdi + 8]
test ecx, ecx
je 0x1400a6e63
mov edx, dword [rsi + 8]
add edx, ecx
mov rcx, rsi
call fcn.140075cb0
jmp 0x1400a6e42
test dl, dl
je 0x1400a70a9
mov r9d, 0x811c9dc5
mov rcx, r12
mov eax, 0x44
nop dword [rax]
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x1400a7060
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufextension_set.cc
mov dword [rsp + 0x20], 0x320
lea edx, [rax + 0xb]
lea ecx, [rax + 0x10]
call fcn.140025410
test rax, rax
je 0x1400a70a2
mov qword [rax], rsi
mov qword [rax + 8], 0
jmp 0x1400a70a5
mov rax, rsi
mov qword [r13 + 0x28], rax
mov rsi, qword [r13 + 0x28]
mov rdi, qword [rbx + 0x28]
cmp rdi, rsi
jne 0x1400a70f5
bts r14d, 0xd
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobuf_repeated_field.h
mov r9d, 0x2dd
mov dword [rbp - 0x79], r14d
mov edx, 3
lea rcx, [rbp - 0x69]
call fcn.14004ce00
lea rdx, str.CHECK_failed:__other_____this_:
mov rcx, rax
call fcn.14004d0d0
mov rdx, rax
lea rcx, [rbp - 0x74]
call fcn.14004cf00
bt r14d, 0xd
jae 0x1400a710e
btr r14d, 0xd
lea rcx, [rbp - 0x69]
mov dword [rbp - 0x79], r14d
call fcn.14004ceb0
mov ecx, dword [rdi + 8]
test ecx, ecx
je 0x1400a6e63
mov edx, dword [rsi + 8]
add edx, ecx
mov rcx, rsi
call fcn.1400630b0
movsxd rcx, dword [rsi + 8]
mov rax, qword [rsi]
movsxd r8, dword [rdi + 8]
mov rdx, qword [rdi]
shl r8, 2
lea rcx, [rax + rcx*4]
call fcn.1400bddc0
mov eax, dword [rdi + 8]
add dword [rsi + 8], eax
xor esi, esi
jmp case.default.0x1400a6cf5
test dl, dl
je 0x1400a71a9
mov r9d, 0x811c9dc5
mov rcx, r12
mov eax, 0x44
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x1400a7160
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufextension_set.cc
mov dword [rsp + 0x20], 0x321
lea edx, [rax + 0xb]
lea ecx, [rax + 0x10]
call fcn.140025410
test rax, rax
je 0x1400a71a2
mov qword [rax], rsi
mov qword [rax + 8], 0
jmp 0x1400a71a5
mov rax, rsi
mov qword [r13 + 0x28], rax
mov rsi, qword [r13 + 0x28]
mov rdi, qword [rbx + 0x28]
cmp rdi, rsi
jne 0x1400a71f5
bts r14d, 0xf
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobuf_repeated_field.h
mov r9d, 0x2dd
mov dword [rbp - 0x79], r14d
mov edx, 3
lea rcx, [rbp - 0x69]
call fcn.14004ce00
lea rdx, str.CHECK_failed:__other_____this_:
mov rcx, rax
call fcn.14004d0d0
mov rdx, rax
lea rcx, [rbp - 0x73]
call fcn.14004cf00
bt r14d, 0xf
jae 0x1400a720e
btr r14d, 0xf
lea rcx, [rbp - 0x69]
mov dword [rbp - 0x79], r14d
call fcn.14004ceb0
mov ecx, dword [rdi + 8]
test ecx, ecx
je 0x1400a6e63
mov edx, dword [rsi + 8]
add edx, ecx
mov rcx, rsi
call fcn.140075cb0
movsxd rcx, dword [rsi + 8]
mov rax, qword [rsi]
movsxd r8, dword [rdi + 8]
mov rdx, qword [rdi]
shl r8, 3
lea rcx, [rax + rcx*8]
call fcn.1400bddc0
mov eax, dword [rdi + 8]
add dword [rsi + 8], eax
xor esi, esi
jmp case.default.0x1400a6cf5
test dl, dl
je 0x1400a72a9
mov r9d, 0x811c9dc5
mov rcx, r12
mov eax, 0x44
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x1400a7260
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufextension_set.cc
mov dword [rsp + 0x20], 0x322
lea edx, [rax + 0xb]
lea ecx, [rax + 0x10]
call fcn.140025410
test rax, rax
je 0x1400a72a2
mov qword [rax], rsi
mov qword [rax + 8], 0
jmp 0x1400a72a5
mov rax, rsi
mov qword [r13 + 0x28], rax
mov rsi, qword [r13 + 0x28]
mov rdi, qword [rbx + 0x28]
cmp rdi, rsi
jne 0x1400a72f5
bts r14d, 0xa
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobuf_repeated_field.h
mov r9d, 0x2dd
mov dword [rbp - 0x79], r14d
mov edx, 3
lea rcx, [rbp - 0x69]
call fcn.14004ce00
lea rdx, str.CHECK_failed:__other_____this_:
mov rcx, rax
call fcn.14004d0d0
mov rdx, rax
lea rcx, [rbp - 0x72]
call fcn.14004cf00
bt r14d, 0xa
jae 0x1400a730e
btr r14d, 0xa
lea rcx, [rbp - 0x69]
mov dword [rbp - 0x79], r14d
call fcn.14004ceb0
mov ecx, dword [rdi + 8]
test ecx, ecx
je 0x1400a6e63
mov edx, dword [rsi + 8]
add edx, ecx
mov rcx, rsi
call fcn.140075d70
movsxd rcx, dword [rsi + 8]
add rcx, qword [rsi]
movsxd r8, dword [rdi + 8]
mov rdx, qword [rdi]
call fcn.1400bddc0
mov eax, dword [rdi + 8]
add dword [rsi + 8], eax
xor esi, esi
jmp case.default.0x1400a6cf5
test dl, dl
je 0x1400a6d5a
mov r9d, 0x811c9dc5
mov rcx, r12
mov eax, 0x44
nop dword [rax]
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x1400a7360
mov dword [rsp + 0x20], 0x323
jmp 0x1400a6d2d
test dl, dl
je 0x1400a73ec
mov r9d, 0x811c9dc5
mov rcx, r12
mov eax, 0x44
nop word [rax + rax]
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x1400a73a0
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufextension_set.cc
mov dword [rsp + 0x20], 0x324
lea edx, [rax + 0xb]
lea ecx, [rax + 0x18]
call fcn.140025410
test rax, rax
je 0x1400a73e5
mov qword [rax], rsi
mov qword [rax + 8], 0
mov dword [rax + 0x10], esi
jmp 0x1400a73e8
mov rax, rsi
mov qword [r13 + 0x28], rax
mov rdi, qword [r13 + 0x28]
mov r15, qword [rbx + 0x28]
cmp r15, rdi
jne 0x1400a7438
bts r14d, 0x10
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobuf_repeated_field.h
mov r9d, 0x3a3
mov dword [rbp - 0x79], r14d
mov edx, 3
lea rcx, [rbp - 0x69]
call fcn.14004ce00
lea rdx, str.CHECK_failed:__other_____this_:
mov rcx, rax
call fcn.14004d0d0
mov rdx, rax
lea rcx, [rbp - 0x71]
call fcn.14004cf00
bt r14d, 0x10
jae 0x1400a7451
btr r14d, 0x10
lea rcx, [rbp - 0x69]
mov dword [rbp - 0x79], r14d
call fcn.14004ceb0
mov edx, dword [r15 + 8]
mov rcx, rdi
add edx, dword [rdi + 8]
call fcn.14007f6f0
cmp dword [r15 + 8], 0
mov r14d, esi
jle 0x1400a78c3
nop
movsxd rdx, dword [rdi + 8]
mov eax, dword [rdi + 0xc]
cmp edx, eax
jge 0x1400a748a
mov rax, qword [rdi]
mov rcx, qword [rax + rdx*8]
lea eax, [rdx + 1]
mov dword [rdi + 8], eax
jmp 0x1400a74b4
mov edx, dword [rdi + 0x10]
cmp eax, edx
jne 0x1400a749b
inc edx
mov rcx, rdi
call fcn.14007f6f0
call fcn.14007f670
movsxd rdx, dword [rdi + 8]
mov rcx, rax
inc dword [rdi + 0xc]
mov rax, qword [rdi]
mov qword [rax + rdx*8], rcx
inc dword [rdi + 8]
mov rax, qword [r15]
mov rdx, qword [rsi + rax]
mov r8, qword [rdx + 8]
mov rdx, qword [rdx]
call fcn.14000a820
inc r14d
add rsi, 8
cmp r14d, dword [r15 + 8]
jl 0x1400a7470
mov r14d, dword [rbp - 0x79]
xor esi, esi
jmp 0x1400a75b9
test dl, dl
je 0x1400a753d
mov r9d, 0x811c9dc5
mov rcx, r12
mov eax, 0x44
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x1400a74f1
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufextension_set.cc
mov dword [rsp + 0x20], 0x32a
lea edx, [rax + 0xb]
lea ecx, [rax + 0x18]
call fcn.140025410
test rax, rax
je 0x1400a7536
mov qword [rax], rsi
mov qword [rax + 8], 0
mov dword [rax + 0x10], esi
jmp 0x1400a7539
mov rax, rsi
mov qword [r13 + 0x28], rax
mov r12, qword [rbx + 0x28]
mov r15d, esi
cmp dword [r12 + 8], 0
jle 0x1400a75b2
mov r14, rsi
nop
mov rdx, qword [r13 + 0x28]
mov rax, qword [r12]
movsxd r8, dword [rdx + 8]
mov rsi, qword [r14 + rax]
cmp r8d, dword [rdx + 0xc]
jge 0x1400a7579
mov rax, qword [rdx]
mov rdi, qword [rax + r8*8]
lea eax, [r8 + 1]
mov dword [rdx + 8], eax
test rdi, rdi
jne 0x1400a7591
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [r13 + 0x28]
mov rdx, rax
mov rdi, rax
call fcn.1400a40d0
mov r8, qword [rdi]
mov rdx, rsi
mov rcx, rdi
call qword [r8 + 0x30]
inc r15d
add r14, 8
cmp r15d, dword [r12 + 8]
jl 0x1400a7550
mov r14d, dword [rbp - 0x79]
xor esi, esi
lea r12, [0x1400ec3a1]
lea r15, [0x140000000]
mov r10, qword [rbp + 0x67]
mov rdx, qword [rbp + 0x6f]
mov rax, qword [rbx + 0x10]
mov rcx, rbx
test rax, rax
je 0x1400a78cc
mov rbx, rax
mov rax, qword [rax + 8]
test rax, rax
je 0x1400a78f7
nop dword [rax + rax]
mov rbx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1400a75f0
jmp 0x1400a78f7
test byte [rbx + 0x32], 0xf
jne 0x1400a75c8
movzx edx, byte [rbx + 0x30]
mov eax, dword [r15 + rdx*4 + 0xe7e70]
dec eax
cmp eax, 9
ja case.default.0x1400a7627
cdqe
mov ecx, dword [r15 + rax*4 + 0xa7958]
add rcx, r15
jmp rcx
mov rax, qword [rbx + 0x38]
movzx r8d, dl
mov edx, dword [rbx + 0x20]
mov rcx, r10
mov r9d, dword [rbx + 0x28]
mov qword [rsp + 0x20], rax
call fcn.1400aa100
jmp case.default.0x1400a6cf5
mov rax, qword [rbx + 0x38]
movzx r8d, dl
mov edx, dword [rbx + 0x20]
mov rcx, r10
mov r9, qword [rbx + 0x28]
mov qword [rsp + 0x20], rax
call fcn.1400aa1f0
jmp case.default.0x1400a6cf5
mov rax, qword [rbx + 0x38]
movzx r8d, dl
mov edx, dword [rbx + 0x20]
mov rcx, r10
mov r9d, dword [rbx + 0x28]
mov qword [rsp + 0x20], rax
call fcn.1400aa100
jmp case.default.0x1400a6cf5
mov rax, qword [rbx + 0x38]
movzx r8d, dl
mov edx, dword [rbx + 0x20]
mov rcx, r10
mov r9, qword [rbx + 0x28]
mov qword [rsp + 0x20], rax
call fcn.1400aa1f0
jmp case.default.0x1400a6cf5
mov rax, qword [rbx + 0x38]
movzx r8d, dl
mov edx, dword [rbx + 0x20]
mov rcx, r10
movss xmm3, dword [rbx + 0x28]
mov qword [rsp + 0x20], rax
call fcn.1400aa170
jmp case.default.0x1400a6cf5
mov rax, qword [rbx + 0x38]
movzx r8d, dl
mov edx, dword [rbx + 0x20]
mov rcx, r10
movsd xmm3, qword [rbx + 0x28]
mov qword [rsp + 0x20], rax
call fcn.1400aa080
jmp case.default.0x1400a6cf5
mov rax, qword [rbx + 0x38]
movzx r8d, dl
mov edx, dword [rbx + 0x20]
mov rcx, r10
movzx r9d, byte [rbx + 0x28]
mov qword [rsp + 0x20], rax
call fcn.1400aa000
jmp case.default.0x1400a6cf5
mov rax, qword [rbx + 0x38]
movzx r8d, dl
mov edx, dword [rbx + 0x20]
mov rcx, r10
mov r9d, dword [rbx + 0x28]
mov qword [rsp + 0x20], rax
call fcn.1400aa100
jmp case.default.0x1400a6cf5
mov r9, qword [rbx + 0x38]
movzx r8d, dl
mov edx, dword [rbx + 0x20]
mov rcx, r10
mov rdi, qword [rbx + 0x28]
call fcn.1400a7f50
cmp rax, rdi
je case.default.0x1400a6cf5
mov r8, qword [rdi + 8]
mov rcx, rax
mov rdx, qword [rdi]
call fcn.14000a820
jmp case.default.0x1400a6cf5
mov eax, dword [rbx + 0x20]
lea r8, [rbp - 0x69]
mov rdi, qword [rbx + 0x38]
lea rdx, [rbp - 0x19]
xorps xmm0, xmm0
mov dword [rbp - 0x69], eax
xor ecx, ecx
mov qword [rbp + 7], rcx
mov rcx, r10
movups xmmword [rbp - 0x61], xmm0
movsd xmm0, qword [rbp + 7]
movsd qword [rbp - 0x51], xmm0
call fcn.1400a3d30
cmp byte [rbp - 0x11], 0
mov rsi, qword [rbp - 0x19]
mov qword [rsi + 0x38], rdi
lea r14, [rsi + 0x32]
je 0x1400a7828
movzx eax, byte [rbx + 0x30]
mov byte [rsi + 0x30], al
movzx eax, byte [rbx + 0x33]
mov byte [rsi + 0x33], al
mov byte [rsi + 0x31], 0
test byte [rbx + 0x32], 0xf0
je 0x1400a77f9
movzx eax, byte [r14]
and al, 0xf
or al, 0x10
mov byte [r14], al
mov rcx, qword [rbx + 0x28]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
mov qword [rsi + 0x28], rax
mov rcx, rax
mov rdx, qword [rbx + 0x28]
mov r8, qword [rax]
call qword [r8 + 0x48]
and byte [r14], 0xf0
mov r14d, dword [rbp - 0x79]
xor esi, esi
jmp case.default.0x1400a6cf5
and byte [r14], 0xf
mov rcx, qword [rbx + 0x28]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov qword [rsi + 0x28], rax
mov rcx, rax
mov rdx, qword [rbx + 0x28]
mov r8, qword [rax]
call qword [r8 + 0x30]
and byte [r14], 0xf0
mov r14d, dword [rbp - 0x79]
xor esi, esi
jmp case.default.0x1400a6cf5
test byte [rbx + 0x32], 0xf0
je 0x1400a7880
test byte [r14], 0xf0
je 0x1400a7851
mov rcx, qword [rsi + 0x28]
mov rdx, qword [rbx + 0x28]
mov rax, qword [rcx]
call qword [rax + 0x48]
and byte [r14], 0xf0
mov r14d, dword [rbp - 0x79]
xor esi, esi
jmp case.default.0x1400a6cf5
mov rsi, qword [rsi + 0x28]
mov rcx, qword [rbx + 0x28]
mov rdx, rsi
mov rax, qword [rsi]
mov rdi, qword [rax + 0x30]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rdx, rax
mov rcx, rsi
call rdi
and byte [r14], 0xf0
mov r14d, dword [rbp - 0x79]
xor esi, esi
jmp case.default.0x1400a6cf5
test byte [r14], 0xf0
mov rcx, qword [rsi + 0x28]
mov rdx, qword [rbx + 0x28]
mov rax, qword [rcx]
je 0x1400a78b1
call qword [rax + 0x18]
mov rdx, qword [rbx + 0x28]
mov rcx, rax
mov r8, qword [rax]
call qword [r8 + 0x30]
and byte [r14], 0xf0
mov r14d, dword [rbp - 0x79]
xor esi, esi
jmp case.default.0x1400a6cf5
call qword [rax + 0x30]
and byte [r14], 0xf0
mov r14d, dword [rbp - 0x79]
xor esi, esi
jmp case.default.0x1400a6cf5
mov r14d, dword [rbp - 0x79]
jmp 0x1400a75b9
mov rax, qword [rbx]
cmp rbx, qword [rax + 0x10]
jne 0x1400a78ec
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax]
cmp rcx, qword [rax + 0x10]
je 0x1400a78e0
cmp qword [rcx + 0x10], rax
mov rbx, rcx
cmovne rbx, rax
cmp rbx, rdx
jne 0x1400a6c71
mov r15, qword [rsp + 0xc8]
mov r13, qword [rsp + 0xd0]
mov r12, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
add rsp, 0xe8
pop r14
pop rsi
pop rbx
pop rbp
ret