joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140053870
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x30
mov rbx, rdx
lea r8, [0x1400e5931]
mov rsi, rcx
mov r9d, 0x811c9dc5
mov eax, 0x44
nop word [rax + rax]
xor eax, r9d
lea r8, [r8 + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [r8 - 1]
test eax, eax
jne 0x1400538a0
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufdescriptor.cc
mov dword [rsp + 0x20], 0x364
lea edx, [rax + 0xb]
lea ecx, [rax + 0x28]
call fcn.140025410
mov rdi, rax
test rax, rax
je 0x1400538ea
mov r8, qword [rbx + 8]
mov rcx, rax
mov rdx, qword [rbx]
call fcn.1400027c0
jmp 0x1400538ec
xor edi, edi
lea rbx, [rsi + 0x78]
mov qword [rsp + 0x40], rdi
mov rdx, qword [rbx + 0x10]
lea rsi, [rsp + 0x40]
sub rsi, qword [rbx]
movabs rax, 0x7fffffffffffffff
sar rsi, 3
and rdx, rax
cmp qword [rbx + 8], rdx
jne 0x140053923
inc rdx
mov rcx, rbx
call fcn.14006baa0
mov rax, qword [rbx + 8]
mov rcx, qword [rbx]
lea rdx, [rcx + rax*8]
cmp rsi, rax
jae 0x140053939
mov rax, qword [rcx + rsi*8]
jmp 0x14005393c
mov rax, rdi
mov qword [rdx], rax
mov rax, rdi
inc qword [rbx + 8]
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
Function at 0x140059560
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
push rbp
push rdi
push r13
push r14
sub rsp, 0x30
mov qword [rsp + 0x60], rsi
lea rbp, [0x1400e5891]
mov rsi, qword [rcx]
mov r13, rcx
or dword [rdx + 0x10], 1
mov rdi, rdx
mov rcx, qword [rdx + 0x18]
mov r14d, 0x811c9dc5
cmp rcx, qword [0x1401d2e90]
mov ebx, 0x44
mov qword [rsp + 0x70], r15
jne 0x140059610
mov r9d, r14d
mov rcx, rbp
mov eax, ebx
nop word [rax + rax]
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x1400595b0
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobufdescriptor.pb.h
mov dword [rsp + 0x20], 0x11f4
lea edx, [rax + 0xb]
lea ecx, [rax + 0x28]
call fcn.140025410
mov rcx, rax
test rax, rax
je 0x14005960a
mov qword [rax + 8], 0
movabs rdx, 0x800000000000000f
add rax, 0x18
mov qword [rcx + 0x10], rdx
mov qword [rcx], rax
mov byte [rax], 0
jmp 0x14005960c
xor ecx, ecx
mov qword [rdi + 0x18], rcx
cmp rcx, rsi
je 0x140059621
mov r8, qword [rsi + 8]
mov rdx, qword [rsi]
call fcn.14000a820
xor r15d, r15d
cmp dword [r13 + 0x20], r15d
jle 0x140059700
mov qword [rsp + 0x68], r12
nop dword [rax]
nop word [rax + rax]
movsxd r8, dword [rdi + 0x28]
movsxd rax, r15d
lea rsi, [rax + rax*2]
mov eax, dword [rdi + 0x2c]
shl rsi, 4
add rsi, qword [r13 + 0x28]
cmp r8d, eax
jge 0x14005966c
mov rax, qword [rdi + 0x20]
mov rdx, qword [rax + r8*8]
lea eax, [r8 + 1]
mov dword [rdi + 0x28], eax
jmp 0x1400596e6
mov edx, dword [rdi + 0x30]
cmp eax, edx
jne 0x14005967e
inc edx
lea rcx, [rdi + 0x20]
call fcn.14007f6f0
mov r9d, r14d
lea rcx, [0x1400e75d1]
mov eax, ebx
nop word [rax + rax]
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x140059690
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobuf_repeated_field.h
mov dword [rsp + 0x20], 0x16c
lea edx, [rax + 0xb]
lea ecx, [rax + 0x38]
call fcn.140025410
test rax, rax
je 0x1400596d2
mov rcx, rax
call fcn.140080a70
mov rdx, rax
jmp 0x1400596d4
xor edx, edx
movsxd r8, dword [rdi + 0x28]
inc dword [rdi + 0x2c]
mov rax, qword [rdi + 0x20]
mov qword [rax + r8*8], rdx
inc dword [rdi + 0x28]
mov rcx, rsi
call fcn.140059150
inc r15d
cmp r15d, dword [r13 + 0x20]
jl 0x140059640
mov r12, qword [rsp + 0x68]
call fcn.1400910e0
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
cmp qword [r13 + 0x18], rax
je 0x140059772
or dword [rdi + 0x10], 4
mov rax, qword [rdi + 0x38]
test rax, rax
jne 0x140059766
xor ebx, r14d
lea rbp, [rbp + 1]
imul r14d, ebx, 0x1000193
movzx ebx, byte [rbp - 1]
test ebx, ebx
jne 0x140059722
mov r9d, r14d
mov dword [rsp + 0x20], 0x125b
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobufdescriptor.pb.h
lea edx, [rbx + 0xb]
lea ecx, [rbx + 0x60]
call fcn.140025410
test rax, rax
je 0x140059762
mov rcx, rax
call fcn.140080b60
mov qword [rdi + 0x38], rax
mov rdx, qword [r13 + 0x18]
mov rcx, rax
call fcn.1400850b0
add rsp, 0x30
pop r14
pop r13
pop rdi
pop rbp
pop rbx
ret
Function at 0x1400630b0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x30
mov eax, dword [rcx + 0xc]
mov r8d, edx
mov rbx, rcx
cmp eax, edx
jge 0x140063169
add eax, eax
mov qword [rsp + 0x40], rdi
mov rdi, qword [rcx]
cmp eax, edx
mov r9d, 0x811c9dc5
lea rdx, [0x1400e75d1]
cmovge r8d, eax
mov eax, 4
cmp r8d, eax
cmovle r8d, eax
mov dword [rcx + 0xc], r8d
mov ecx, 0x44
nop dword [rax]
xor ecx, r9d
lea rdx, [rdx + 1]
imul r9d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test ecx, ecx
jne 0x140063100
movsxd rcx, r8d
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7includegoogleprotobuf_repeated_field.h
mul rcx
mov rcx, 0xffffffffffffffff
mov dword [rsp + 0x20], 0x330
cmovo rax, rcx
lea edx, [rcx + 0xc]
mov rcx, rax
call fcn.140025410
mov qword [rbx], rax
test rdi, rdi
je 0x140063164
movsxd r8, dword [rbx + 8]
mov rdx, rdi
shl r8, 2
mov rcx, rax
call fcn.1400bddc0
mov rcx, rdi
call fcn.140025570
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
ret

Function at 0x1400649f0
Capabilities:
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x60
mov ebx, r9d
cmp r9d, 5
je 0x140064a92
cmp ebx, 0xf
je 0x140064a80
cmp ebx, 0x11
je 0x140064a62
mov r9d, 0x14ea
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufdescriptor.cc
mov edx, 3
lea rcx, [rsp + 0x20]
call fcn.14004ce00
lea rdx, str.Invalid_wire_type_for_CPPTYPE_INT32:
mov rcx, rax
call fcn.14004d0d0
mov edx, ebx
mov rcx, rax
call fcn.14004cff0
mov rdx, rax
lea rcx, [rsp + 0x88]
call fcn.14004cf00
lea rcx, [rsp + 0x20]
call fcn.14004ceb0
add rsp, 0x60
pop rbx
ret
mov ecx, r8d
add r8d, r8d
sar ecx, 0x1f
xor r8d, ecx
mov rcx, qword [rsp + 0x90]
add rsp, 0x60
pop rbx
jmp fcn.14006e110
mov rcx, qword [rsp + 0x90]
add rsp, 0x60
pop rbx
jmp fcn.14006dc00
mov rcx, qword [rsp + 0x90]
movsxd r8, r8d
add rsp, 0x60
pop rbx
jmp fcn.14006e110

Function at 0x140064ab0
Capabilities:
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x60
mov ebx, r9d
mov rax, r8
cmp r9d, 3
je 0x140064b2b
cmp ebx, 0x10
je 0x140064b3d
cmp ebx, 0x12
je 0x140064b21
mov r9d, 0x1500
lea r8, str.D:BuildServerDworkpackage_cacheprotobuf_blz2.6.1.7_srcgoogleprotobufdescriptor.cc
mov edx, 3
lea rcx, [rsp + 0x20]
call fcn.14004ce00
lea rdx, str.Invalid_wire_type_for_CPPTYPE_INT64:
mov rcx, rax
call fcn.14004d0d0
mov edx, ebx
mov rcx, rax
call fcn.14004cff0
mov rdx, rax
lea rcx, [rsp + 0x88]
call fcn.14004cf00
lea rcx, [rsp + 0x20]
call fcn.14004ceb0
add rsp, 0x60
pop rbx
ret
sar r8, 0x3f
add rax, rax
xor r8, rax
mov rcx, qword [rsp + 0x90]
add rsp, 0x60
pop rbx
jmp fcn.14006e110
mov rcx, qword [rsp + 0x90]
add rsp, 0x60
pop rbx
jmp fcn.14006dd10
Function at 0x140069410
Capabilities:
Encode data using xor
Encrypt data using rc4 prga
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
mov r9, qword [r8]
xor ebx, ebx
mov r12, r8
mov r14, rdx
mov rsi, rcx
movzx eax, byte [r9]
test al, al
je 0x140069467
nop dword [rax]
nop dword [rax + rax]
movsx rax, al
lea rbx, [rbx + rbx*4]
add rbx, rax
lea r9, [r9 + 1]
movzx eax, byte [r9]
test al, al
jne 0x140069450
cmp qword [rcx + 8], 0
jne 0x140069476
mov rdx, qword [rcx]
call fcn.14006ab70
mov r11, qword [rsi]
mov rdi, qword [rsi + 8]
lea rax, [r11 - 1]
and rax, rbx
mov r9, qword [rdi + rax*8]
lea rbp, [rdi + rax*8]
mov r15, rbp
test r9, r9
je 0x1400694d2
mov r10, qword [r12]
nop dword [rax + rax]
mov r8, qword [r9 + 8]
mov rax, r10
sub r8, r10
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400694c3
inc rax
test ecx, ecx
jne 0x1400694b0
test edx, edx
je 0x1400694d2
mov r15, r9
mov r9, qword [r9]
test r9, r9
jne 0x1400694a0
mov rcx, qword [r15]
test rcx, rcx
je 0x1400694f3
mov qword [r14], rcx
lea rax, [rdi + r11*8]
mov qword [r14 + 8], rbp
mov qword [r14 + 0x10], rax
mov byte [r14 + 0x18], 0
jmp 0x1400695fa
movzx eax, byte [str.._AU__chained_hash_node_U__pair_QEBDPEBVFileDescriptor_protobuf_google___blz___blz__]
lea rcx, [0x140126d31]
mov r9d, 0x811c9dc5
test eax, eax
je 0x140069526
nop dword [rax + rax]
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x140069510
mov edx, ntohs
mov dword [rsp + 0x28], 0
lea r8, str.._AU__chained_hash_node_U__pair_QEBDPEBVFileDescriptor_protobuf_google___blz___blz__
mov dword [rsp + 0x20], 0xfffffffa
lea ecx, [rdx + 0xd]
call fcn.140025e30
mov rdi, rax
test rax, rax
je 0x140069562
mov qword [rax], 0
movups xmm0, xmmword [r12]
movups xmmword [rax + 8], xmm0
mov qword [r15], rdi
xorps xmm0, xmm0
inc qword [rsi + 0x10]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi]
test rcx, rcx
js 0x14006957f
cvtsi2ss xmm0, rcx
jmp 0x140069594
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
xorps xmm1, xmm1
test rdx, rdx
js 0x1400695a3
cvtsi2ss xmm1, rdx
jmp 0x1400695bb
mov rax, rdx
mov rcx, rdx
shr rcx, 1
and eax, 1
or rcx, rax
cvtsi2ss xmm1, rcx
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rsi + 0x18]
jbe 0x1400695e2
add rdx, rdx
mov rcx, rsi
call fcn.14006ab70
mov rdx, qword [rsi]
mov rax, qword [rsi + 8]
lea rcx, [rdx - 1]
and rcx, rbx
lea rbp, [rax + rcx*8]
mov rax, qword [rsi + 8]
mov qword [r14], rdi
mov qword [r14 + 8], rbp
lea rcx, [rax + rdx*8]
mov qword [r14 + 0x10], rcx
mov byte [r14 + 0x18], 1
mov rbx, qword [rsp + 0x50]
mov rax, r14
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
Function at 0x140069620
Capabilities:
Encode data using xor
Encrypt data using rc4 prga
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
mov r9, qword [r8]
xor edi, edi
mov r12, r8
mov r14, rdx
mov rsi, rcx
movzx eax, byte [r9]
test al, al
je 0x140069677
nop dword [rax]
nop dword [rax + rax]
movsx rax, al
lea rdi, [rdi + rdi*4]
add rdi, rax
lea r9, [r9 + 1]
movzx eax, byte [r9]
test al, al
jne 0x140069660
cmp qword [rcx + 8], 0
jne 0x140069686
mov rdx, qword [rcx]
call fcn.14006ad70
mov r11, qword [rsi]
mov rbx, qword [rsi + 8]
lea rax, [r11 - 1]
and rax, rdi
mov r9, qword [rbx + rax*8]
lea rbp, [rbx + rax*8]
mov r15, rbp
test r9, r9
je 0x1400696e2
mov r10, qword [r12]
nop dword [rax + rax]
mov r8, qword [r9 + 8]
mov rax, r10
sub r8, r10
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400696d3
inc rax
test ecx, ecx
jne 0x1400696c0
test edx, edx
je 0x1400696e2
mov r15, r9
mov r9, qword [r9]
test r9, r9
jne 0x1400696b0
mov rcx, qword [r15]
test rcx, rcx
je 0x140069703
mov qword [r14], rcx
lea rax, [rbx + r11*8]
mov qword [r14 + 8], rbp
mov qword [r14 + 0x10], rax
mov byte [r14 + 0x18], 0
jmp 0x140069816
movzx eax, byte [str.._AU__chained_hash_node_U__pair_QEBDUSymbol__A0xdbaf4b5f_protobuf_google___blz___blz__]
lea rcx, [0x140126cc1]
mov r9d, 0x811c9dc5
test eax, eax
je 0x140069736
nop dword [rax + rax]
xor eax, r9d
lea rcx, [rcx + 1]
imul r9d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test eax, eax
jne 0x140069720
mov edx, ntohs
mov dword [rsp + 0x28], 0
lea r8, str.._AU__chained_hash_node_U__pair_QEBDUSymbol__A0xdbaf4b5f_protobuf_google___blz___blz__
mov dword [rsp + 0x20], 0xfffffffa
lea ecx, [rdx + 0x15]
call fcn.140025e30
mov rbx, rax
test rax, rax
je 0x14006977e
mov qword [rax], 0
movups xmm0, xmmword [r12]
movups xmmword [rax + 8], xmm0
movsd xmm1, qword [r12 + 0x10]
movsd qword [rax + 0x18], xmm1
mov qword [r15], rbx
xorps xmm0, xmm0
inc qword [rsi + 0x10]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi]
test rcx, rcx
js 0x14006979b
cvtsi2ss xmm0, rcx
jmp 0x1400697b0
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
xorps xmm1, xmm1
test rdx, rdx
js 0x1400697bf
cvtsi2ss xmm1, rdx
jmp 0x1400697d7
mov rax, rdx
mov rcx, rdx
shr rcx, 1
and eax, 1
or rcx, rax
cvtsi2ss xmm1, rcx
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rsi + 0x18]
jbe 0x1400697fe
add rdx, rdx
mov rcx, rsi
call fcn.14006ad70
mov rdx, qword [rsi]
mov rax, qword [rsi + 8]
lea rcx, [rdx - 1]
and rcx, rdi
lea rbp, [rax + rcx*8]
mov rax, qword [rsi + 8]
mov qword [r14], rbx
mov qword [r14 + 8], rbp
lea rcx, [rax + rdx*8]
mov qword [r14 + 0x10], rcx
mov byte [r14 + 0x18], 1
mov rbx, qword [rsp + 0x50]
mov rax, r14
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
Function at 0x140069840
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
imul r12, qword [r8], 0xffff
movsxd rax, dword [r8 + 8]
mov r14, r8
add r12, rax
mov rbx, rdx
cmp qword [rcx + 8], 0
mov rdi, rcx
jne 0x14006987f
mov rdx, qword [rcx]
call fcn.14006af70
mov r8, qword [rdi]
mov r9, qword [rdi + 8]
lea rax, [r8 - 1]
and rax, r12
mov rcx, qword [r9 + rax*8]
lea rbp, [r9 + rax*8]
mov r15, rbp
test rcx, rcx
je 0x1400698ba
mov rdx, qword [r14]
cmp rdx, qword [rcx + 8]
jne 0x1400698af
mov eax, dword [rcx + 0x10]
cmp dword [r14 + 8], eax
je 0x1400698ba
mov r15, rcx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x1400698a0
mov rcx, qword [r15]
test rcx, rcx
je 0x1400698da
mov qword [rbx], rcx
lea rax, [r9 + r8*8]
mov qword [rbx + 8], rbp
mov qword [rbx + 0x10], rax
mov byte [rbx + 0x18], 0
jmp 0x1400699f7
movzx eax, byte [str.._AU__chained_hash_node_U__pair___CBU__pair_PEBVDescriptor_protobuf_google__H_blz__PEBVFieldDescriptor_protobuf_google___blz___blz__]
lea rcx, [0x1401272c1]
mov qword [rsp + 0x50], rsi
mov r9d, 0x811c9dc5
test eax, eax
je 0x140069915
nop word [rax + rax]
xor r9d, eax
movzx eax, byte [rcx]
imul r9d, r9d, 0x1000193
lea rcx, [rcx + 1]
test eax, eax
jne 0x140069900
mov edx, ntohs
mov dword [rsp + 0x28], 0
lea r8, str.._AU__chained_hash_node_U__pair___CBU__pair_PEBVDescriptor_protobuf_google__H_blz__PEBVFieldDescriptor_protobuf_google___blz___blz__
mov dword [rsp + 0x20], 0xfffffffa
lea ecx, [rdx + 0x15]
call fcn.140025e30
mov rsi, rax
test rax, rax
je 0x14006995b
mov qword [rax], 0
movups xmm0, xmmword [r14]
movups xmmword [rax + 8], xmm0
movsd xmm1, qword [r14 + 0x10]
movsd qword [rax + 0x18], xmm1
mov qword [r15], rsi
xorps xmm0, xmm0
inc qword [rdi + 0x10]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi]
test rcx, rcx
js 0x140069978
cvtsi2ss xmm0, rcx
jmp 0x14006998d
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
xorps xmm1, xmm1
test rdx, rdx
js 0x14006999c
cvtsi2ss xmm1, rdx
jmp 0x1400699b4
mov rax, rdx
mov rcx, rdx
shr rcx, 1
and eax, 1
or rcx, rax
cvtsi2ss xmm1, rcx
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rdi + 0x18]
jbe 0x1400699db
add rdx, rdx
mov rcx, rdi
call fcn.14006af70
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
lea rcx, [rdx - 1]
and rcx, r12
lea rbp, [rax + rcx*8]
mov rax, qword [rdi + 8]
mov qword [rbx], rsi
mov qword [rbx + 8], rbp
lea rcx, [rax + rdx*8]
mov qword [rbx + 0x10], rcx
mov rsi, qword [rsp + 0x50]
mov byte [rbx + 0x18], 1
mov rbp, qword [rsp + 0x60]
mov rax, rbx
mov rbx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
Function at 0x140069a20
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
imul r12, qword [r8], 0xffff
movsxd rax, dword [r8 + 8]
mov r14, r8
add r12, rax
mov rbx, rdx
cmp qword [rcx + 8], 0
mov rdi, rcx
jne 0x140069a5f
mov rdx, qword [rcx]
call fcn.14006b160
mov r8, qword [rdi]
mov r9, qword [rdi + 8]
lea rax, [r8 - 1]
and rax, r12
mov rcx, qword [r9 + rax*8]
lea rbp, [r9 + rax*8]
mov r15, rbp
test rcx, rcx
je 0x140069a9a
mov rdx, qword [r14]
cmp rdx, qword [rcx + 8]
jne 0x140069a8f
mov eax, dword [rcx + 0x10]
cmp dword [r14 + 8], eax
je 0x140069a9a
mov r15, rcx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140069a80
mov rcx, qword [r15]
test rcx, rcx
je 0x140069aba
mov qword [rbx], rcx
lea rax, [r9 + r8*8]
mov qword [rbx + 8], rbp
mov qword [rbx + 0x10], rax
mov byte [rbx + 0x18], 0
jmp 0x140069bd7
movzx eax, byte [str.._AU__chained_hash_node_U__pair___CBU__pair_PEBVEnumDescriptor_protobuf_google__H_blz__PEBVEnumValueDescriptor_protobuf_google___blz___blz__]
lea rcx, [0x140127401]
mov qword [rsp + 0x50], rsi
mov r9d, 0x811c9dc5
test eax, eax
je 0x140069af5
nop word [rax + rax]
xor r9d, eax
movzx eax, byte [rcx]
imul r9d, r9d, 0x1000193
lea rcx, [rcx + 1]
test eax, eax
jne 0x140069ae0
mov edx, ntohs
mov dword [rsp + 0x28], 0
lea r8, str.._AU__chained_hash_node_U__pair___CBU__pair_PEBVEnumDescriptor_protobuf_google__H_blz__PEBVEnumValueDescriptor_protobuf_google___blz___blz__
mov dword [rsp + 0x20], 0xfffffffa
lea ecx, [rdx + 0x15]
call fcn.140025e30
mov rsi, rax
test rax, rax
je 0x140069b3b
mov qword [rax], 0
movups xmm0, xmmword [r14]
movups xmmword [rax + 8], xmm0
movsd xmm1, qword [r14 + 0x10]
movsd qword [rax + 0x18], xmm1
mov qword [r15], rsi
xorps xmm0, xmm0
inc qword [rdi + 0x10]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi]
test rcx, rcx
js 0x140069b58
cvtsi2ss xmm0, rcx
jmp 0x140069b6d
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
xorps xmm1, xmm1
test rdx, rdx
js 0x140069b7c
cvtsi2ss xmm1, rdx
jmp 0x140069b94
mov rax, rdx
mov rcx, rdx
shr rcx, 1
and eax, 1
or rcx, rax
cvtsi2ss xmm1, rcx
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rdi + 0x18]
jbe 0x140069bbb
add rdx, rdx
mov rcx, rdi
call fcn.14006b160
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
lea rcx, [rdx - 1]
and rcx, r12
lea rbp, [rax + rcx*8]
mov rax, qword [rdi + 8]
mov qword [rbx], rsi
mov qword [rbx + 8], rbp
lea rcx, [rax + rdx*8]
mov qword [rbx + 0x10], rcx
mov rsi, qword [rsp + 0x50]
mov byte [rbx + 0x18], 1
mov rbp, qword [rsp + 0x60]
mov rax, rbx
mov rbx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
Function at 0x140069c00
Capabilities:
Encode data using xor
Encrypt data using rc4 prga
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
mov r10, qword [r8 + 8]
xor r9d, r9d
mov r14, r8
mov rsi, rdx
mov rdi, rcx
movzx eax, byte [r10]
test al, al
je 0x140069c57
nop word [rax + rax]
movsx rax, al
lea r9, [r9 + r9*4]
add r9, rax
lea r10, [r10 + 1]
movzx eax, byte [r10]
test al, al
jne 0x140069c40
imul r12, qword [r8], 0xffff
add r12, r9
cmp qword [rcx + 8], 0
jne 0x140069c70
mov rdx, qword [rcx]
call fcn.14006b350
mov r11, qword [rdi]
mov rbx, qword [rdi + 8]
lea rax, [r11 - 1]
and rax, r12
mov r8, qword [rbx + rax*8]
lea rbp, [rbx + rax*8]
mov r15, rbp
test r8, r8
je 0x140069cc4
mov r10, qword [r14]
cmp r10, qword [r8 + 8]
jne 0x140069cb9
mov rax, qword [r14 + 8]
mov r9, qword [r8 + 0x10]
sub r9, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r9]
sub edx, ecx
jne 0x140069cb5
inc rax
test ecx, ecx
jne 0x140069ca2
test edx, edx
je 0x140069cc4
mov r15, r8
mov r8, qword [r8]
test r8, r8
jne 0x140069c91
mov rcx, qword [r15]
test rcx, rcx
je 0x140069ce4
mov qword [rsi], rcx
lea rax, [rbx + r11*8]
mov qword [rsi + 8], rbp
mov qword [rsi + 0x10], rax
mov byte [rsi + 0x18], 0
jmp 0x140069df2
movzx eax, byte [str.._AU__chained_hash_node_U__pair___CBU__pair_PEBXPEBD_blz__PEBVFieldDescriptor_protobuf_google___blz___blz__]
lea rcx, [0x1401271c1]
mov r9d, 0x811c9dc5
test eax, eax
je 0x140069d15
nop dword [rax]
xor r9d, eax
movzx eax, byte [rcx]
imul r9d, r9d, 0x1000193
lea rcx, [rcx + 1]
test eax, eax
jne 0x140069d00
mov edx, ntohs
mov dword [rsp + 0x28], 0
lea r8, str.._AU__chained_hash_node_U__pair___CBU__pair_PEBXPEBD_blz__PEBVFieldDescriptor_protobuf_google___blz___blz__
mov dword [rsp + 0x20], 0xfffffffa
lea ecx, [rdx + 0x15]
call fcn.140025e30
mov rbx, rax
test rax, rax
je 0x140069d5b
mov qword [rax], 0
movups xmm0, xmmword [r14]
movups xmmword [rax + 8], xmm0
movsd xmm1, qword [r14 + 0x10]
movsd qword [rax + 0x18], xmm1
mov qword [r15], rbx
xorps xmm0, xmm0
inc qword [rdi + 0x10]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi]
test rcx, rcx
js 0x140069d78
cvtsi2ss xmm0, rcx
jmp 0x140069d8d
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
xorps xmm1, xmm1
test rdx, rdx
js 0x140069d9c
cvtsi2ss xmm1, rdx
jmp 0x140069db4
mov rax, rdx
mov rcx, rdx
shr rcx, 1
and eax, 1
or rcx, rax
cvtsi2ss xmm1, rcx
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rdi + 0x18]
jbe 0x140069ddb
add rdx, rdx
mov rcx, rdi
call fcn.14006b350
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
lea rcx, [rdx - 1]
and rcx, r12
lea rbp, [rax + rcx*8]
mov rax, qword [rdi + 8]
mov qword [rsi], rbx
mov qword [rsi + 8], rbp
lea rcx, [rax + rdx*8]
mov qword [rsi + 0x10], rcx
mov byte [rsi + 0x18], 1
mov rbx, qword [rsp + 0x50]
mov rax, rsi
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
Function at 0x140069e20
Capabilities:
Encode data using xor
Encrypt data using rc4 prga
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
mov r10, qword [r8 + 8]
xor r9d, r9d
mov r14, r8
mov rsi, rdx
mov rdi, rcx
movzx eax, byte [r10]
test al, al
je 0x140069e77
nop word [rax + rax]
movsx rax, al
lea r9, [r9 + r9*4]
add r9, rax
lea r10, [r10 + 1]
movzx eax, byte [r10]
test al, al
jne 0x140069e60
imul r12, qword [r8], 0xffff
add r12, r9
cmp qword [rcx + 8], 0
jne 0x140069e90
mov rdx, qword [rcx]
call fcn.14006b560
mov r11, qword [rdi]
mov rbx, qword [rdi + 8]
lea rax, [r11 - 1]
and rax, r12
mov r8, qword [rbx + rax*8]
lea rbp, [rbx + rax*8]
mov r15, rbp
test r8, r8
je 0x140069ee4
mov r10, qword [r14]
cmp r10, qword [r8 + 8]
jne 0x140069ed9
mov rax, qword [r14 + 8]
mov r9, qword [r8 + 0x10]
sub r9, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r9]
sub edx, ecx
jne 0x140069ed5
inc rax
test ecx, ecx
jne 0x140069ec2
test edx, edx
je 0x140069ee4
mov r15, r8
mov r8, qword [r8]
test r8, r8
jne 0x140069eb1
mov rcx, qword [r15]
test rcx, rcx
je 0x140069f04
mov qword [rsi], rcx
lea rax, [rbx + r11*8]
mov qword [rsi + 8], rbp
mov qword [rsi + 0x10], rax
mov byte [rsi + 0x18], 0
jmp 0x14006a010
movzx eax, byte [str.._AU__chained_hash_node_U__pair___CBU__pair_PEBXPEBD_blz__USymbol__A0xdbaf4b5f_protobuf_google___blz___blz__]
lea rcx, [0x1401270c1]
mov r9d, 0x811c9dc5
test eax, eax
je 0x140069f35
nop dword [rax]
xor r9d, eax
movzx eax, byte [rcx]
imul r9d, r9d, 0x1000193
lea rcx, [rcx + 1]
test eax, eax
jne 0x140069f20
mov edx, ntohs
mov dword [rsp + 0x28], 0
lea r8, str.._AU__chained_hash_node_U__pair___CBU__pair_PEBXPEBD_blz__USymbol__A0xdbaf4b5f_protobuf_google___blz___blz__
mov dword [rsp + 0x20], 0xfffffffa
lea ecx, [rdx + 0x1d]
call fcn.140025e30
mov rbx, rax
test rax, rax
je 0x140069f79
mov qword [rax], 0
movups xmm0, xmmword [r14]
movups xmmword [rax + 8], xmm0
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rax + 0x18], xmm1
mov qword [r15], rbx
xorps xmm0, xmm0
inc qword [rdi + 0x10]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi]
test rcx, rcx
js 0x140069f96
cvtsi2ss xmm0, rcx
jmp 0x140069fab
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
xorps xmm1, xmm1
test rdx, rdx
js 0x140069fba
cvtsi2ss xmm1, rdx
jmp 0x140069fd2
mov rax, rdx
mov rcx, rdx
shr rcx, 1
and eax, 1
or rcx, rax
cvtsi2ss xmm1, rcx
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rdi + 0x18]
jbe 0x140069ff9
add rdx, rdx
mov rcx, rdi
call fcn.14006b560
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
lea rcx, [rdx - 1]
and rcx, r12
lea rbp, [rax + rcx*8]
mov rax, qword [rdi + 8]
mov qword [rsi], rbx
mov qword [rsi + 8], rbp
lea rcx, [rax + rdx*8]
mov qword [rsi + 0x10], rcx
mov byte [rsi + 0x18], 1
mov rbx, qword [rsp + 0x50]
mov rax, rsi
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret