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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], r8
push rdi
sub rsp, 0x20
mov rdi, r8
mov rsi, rdx
mov r8, rcx
movabs r9, 0xcbf29ce484222325
xor ecx, ecx
movzx eax, byte [rcx + rdi + 0x10]
movabs rdx, 0x100000001b3
xor r9, rax
inc rcx
imul r9, rdx
cmp rcx, 8
jb 0x140032eb1
movzx edx, word [rdi + 0x1c]
movzx eax, word [rdi + 0x1e]
movzx ecx, byte [rdi + 0x22]
shl edx, 0x10
or rdx, rax
shl ecx, 0x18
movzx eax, byte [rdi + 0x27]
or rcx, rax
mov eax, dword [rdi + 0x18]
xor rdx, rcx
mov rcx, qword [r8 + 0x18]
xor rdx, rax
xor rdx, r9
and rdx, qword [r8 + 0x30]
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], rdi
jne 0x140032f2d
cmp qword [rcx + rdx*8], rdi
jne 0x140032f27
mov rax, qword [r8 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r8 + 0x18]
mov rax, qword [r8 + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x140032f3a
mov rax, qword [rdi + 8]
jmp 0x140032f20
cmp qword [rcx + rdx*8], rdi
jne 0x140032f3f
mov rax, qword [rdi]
mov qword [rcx + rdx*8], rax
mov rdi, qword [rsp + 0x40]
mov rax, qword [rdi + 8]
lea rcx, [rdi + 0x10]
mov rbx, qword [rdi]
mov qword [rax], rbx
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rdx + 8], rax
xor edx, edx
dec qword [r8 + 0x10]
call fcn.1400322b0
mov rcx, rdi
call fcn.14015729c
mov qword [rsi], rbx
mov rax, rsi
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

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

Disassembly:
mov qword [rsp + 8], rbx
mov r9, rdx
mov r11, rcx
xor edx, edx
movabs r10, 0xcbf29ce484222325
movzx eax, byte [rdx + r8]
movabs rcx, 0x100000001b3
xor r10, rax
inc rdx
imul r10, rcx
cmp rdx, 8
jb 0x140032f9b
movzx edx, word [r8 + 0xc]
movzx eax, word [r8 + 0xe]
movzx ecx, byte [r8 + 0x12]
shl edx, 0x10
or rdx, rax
shl ecx, 0x18
movzx eax, byte [r8 + 0x17]
or rcx, rax
mov eax, dword [r8 + 8]
xor rdx, rcx
xor rdx, rax
xor rdx, r10
mov r10, qword [r11 + 0x18]
and rdx, qword [r11 + 0x30]
mov rax, rdx
add rax, rax
lea rbx, [rdx + rdx]
mov rdx, qword [r11 + 8]
mov rax, qword [r10 + rax*8]
cmp qword [r10 + rbx*8], rdx
jne 0x14003300c
mov rcx, rdx
jmp 0x140033014
mov rcx, qword [r10 + rbx*8 + 8]
mov rcx, qword [rcx]
cmp rax, rcx
je 0x140033060
mov rcx, qword [rax + 0x18]
cmp rcx, qword [r8 + 8]
jne 0x140033036
mov rcx, qword [rax + 0x20]
cmp rcx, qword [r8 + 0x10]
jne 0x140033036
mov rcx, qword [r8]
cmp qword [rax + 0x10], rcx
je 0x14003303b
mov rax, qword [rax]
jmp 0x140033001
mov rcx, qword [r8 + 8]
cmp rcx, qword [rax + 0x18]
jne 0x140033058
mov rcx, qword [r8 + 0x10]
cmp rcx, qword [rax + 0x20]
jne 0x140033058
mov rcx, qword [rax + 0x10]
cmp qword [r8], rcx
je 0x14003305b
mov rax, rdx
mov qword [r9], rax
jmp 0x140033063
mov qword [r9], rdx
mov rbx, qword [rsp + 8]
mov rax, r9
ret
Function at 0x1400332cc
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 8], rcx
push rdi
sub rsp, 0x30
mov qword [rax - 0x10], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov rbx, r9
mov r10, r8
mov rsi, rdx
mov r9, rcx
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rdx + r10]
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
inc rdx
cmp rdx, 2
jb 0x140033304
mov rdx, qword [r9 + 0x30]
and rdx, rcx
mov r8, rdx
add r8, r8
mov rcx, qword [r9 + 0x18]
mov rax, qword [rcx + r8*8]
cmp rax, qword [r9 + 8]
jne 0x140033344
mov rdi, qword [r9 + 8]
jmp 0x14003334c
mov rdi, qword [rcx + r8*8 + 8]
mov rdi, qword [rdi]
cmp rdi, rax
je 0x14003339a
movzx eax, word [r10]
add rdx, rdx
mov rdi, qword [rdi + 8]
cmp ax, word [rdi + 0x10]
je 0x14003336a
cmp rdi, qword [rcx + rdx*8]
jne 0x140033358
jmp 0x14003339a
mov rcx, qword [rbx + 8]
mov rax, qword [rbx]
mov qword [rcx], rax
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
dec qword [r9 + 0x10]
mov rcx, rbx
call fcn.14015729c
mov qword [rsi], rdi
mov byte [rsi + 8], 0
mov rax, rsi
jmp 0x140033433
mov qword [rsp + 0x20], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x1400333d4
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [r9 + 8]
jne 0x1400333f1
mov qword [rdx + r8*8], rbx
mov rax, qword [r9 + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x140033420
cmp rax, rdi
jne 0x1400333fc
mov qword [rdx + r8*8], rbx
jmp 0x140033420
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rbx
je 0x140033420
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rcx, r9
call fcn.1400353d8
nop
mov qword [rsi], rbx
mov byte [rsi + 8], 1
mov rax, rsi
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
Function at 0x140033444
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 8], rcx
push rbx
push rsi
push rdi
sub rsp, 0x30
mov qword [rax - 0x28], 0xfffffffffffffffe
mov rbx, r9
mov rsi, rdx
mov r9, rcx
mov r10d, dword [r8]
mov dword [rax + 0x18], r10d
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rsp + rdx + 0x60]
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
inc rdx
cmp rdx, 4
jb 0x14003347a
mov rdx, qword [r9 + 0x30]
and rdx, rcx
mov r8, rdx
add r8, r8
mov rcx, qword [r9 + 0x18]
mov rax, qword [rcx + r8*8]
cmp rax, qword [r9 + 8]
jne 0x1400334ba
mov rdi, qword [r9 + 8]
jmp 0x1400334c2
mov rdi, qword [rcx + r8*8 + 8]
mov rdi, qword [rdi]
cmp rdi, rax
je 0x14003350c
add rdx, rdx
mov rdi, qword [rdi + 8]
cmp r10d, dword [rdi + 0x10]
je 0x1400334dc
cmp rdi, qword [rcx + rdx*8]
jne 0x1400334ca
jmp 0x14003350c
mov rcx, qword [rbx + 8]
mov rax, qword [rbx]
mov qword [rcx], rax
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
dec qword [r9 + 0x10]
mov rcx, rbx
call fcn.14015729c
mov qword [rsi], rdi
mov byte [rsi + 8], 0
mov rax, rsi
jmp 0x1400335a5
mov qword [rsp + 0x60], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x140033546
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [r9 + 8]
jne 0x140033563
mov qword [rdx + r8*8], rbx
mov rax, qword [r9 + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x140033592
cmp rax, rdi
jne 0x14003356e
mov qword [rdx + r8*8], rbx
jmp 0x140033592
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rbx
je 0x140033592
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rcx, r9
call fcn.1400351c8
nop
mov qword [rsi], rbx
mov byte [rsi + 8], 1
mov rax, rsi
add rsp, 0x30
pop rdi
pop rsi
pop rbx
ret
Function at 0x1400335b0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 8], rcx
push rbx
push rsi
push rdi
sub rsp, 0x30
mov qword [rax - 0x28], 0xfffffffffffffffe
mov rbx, r9
mov rsi, rdx
mov r9, rcx
mov r10d, dword [r8]
mov dword [rax + 0x18], r10d
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rsp + rdx + 0x60]
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
inc rdx
cmp rdx, 4
jb 0x1400335e6
mov rdx, qword [r9 + 0x30]
and rdx, rcx
mov r8, rdx
add r8, r8
mov rcx, qword [r9 + 0x18]
mov rax, qword [rcx + r8*8]
cmp rax, qword [r9 + 8]
jne 0x140033626
mov rdi, qword [r9 + 8]
jmp 0x14003362e
mov rdi, qword [rcx + r8*8 + 8]
mov rdi, qword [rdi]
cmp rdi, rax
je 0x140033681
add rdx, rdx
mov rdi, qword [rdi + 8]
cmp r10d, dword [rdi + 0x10]
je 0x140033648
cmp rdi, qword [rcx + rdx*8]
jne 0x140033636
jmp 0x140033681
mov rcx, qword [rbx + 8]
mov rax, qword [rbx]
mov qword [rcx], rax
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
dec qword [r9 + 0x10]
lea rcx, [rbx + 0x18]
call fcn.140034514
mov rcx, rbx
call fcn.14015729c
mov qword [rsi], rdi
mov byte [rsi + 8], 0
mov rax, rsi
jmp 0x14003371a
mov qword [rsp + 0x60], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x1400336bb
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [r9 + 8]
jne 0x1400336d8
mov qword [rdx + r8*8], rbx
mov rax, qword [r9 + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x140033707
cmp rax, rdi
jne 0x1400336e3
mov qword [rdx + r8*8], rbx
jmp 0x140033707
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rbx
je 0x140033707
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rcx, r9
call fcn.140035278
nop
mov qword [rsi], rbx
mov byte [rsi + 8], 1
mov rax, rsi
add rsp, 0x30
pop rdi
pop rsi
pop rbx
ret
Function at 0x140033724
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 8], rcx
push rbx
push rsi
push rdi
sub rsp, 0x30
mov qword [rax - 0x28], 0xfffffffffffffffe
mov rbx, r9
mov rsi, rdx
mov r9, rcx
mov r10d, dword [r8]
mov dword [rax + 0x18], r10d
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rsp + rdx + 0x60]
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
inc rdx
cmp rdx, 4
jb 0x14003375a
mov rdx, qword [r9 + 0x30]
and rdx, rcx
mov r8, rdx
add r8, r8
mov rcx, qword [r9 + 0x18]
mov rax, qword [rcx + r8*8]
cmp rax, qword [r9 + 8]
jne 0x14003379a
mov rdi, qword [r9 + 8]
jmp 0x1400337a2
mov rdi, qword [rcx + r8*8 + 8]
mov rdi, qword [rdi]
cmp rdi, rax
je 0x1400337ec
add rdx, rdx
mov rdi, qword [rdi + 8]
cmp r10d, dword [rdi + 0x10]
je 0x1400337bc
cmp rdi, qword [rcx + rdx*8]
jne 0x1400337aa
jmp 0x1400337ec
mov rcx, qword [rbx + 8]
mov rax, qword [rbx]
mov qword [rcx], rax
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
dec qword [r9 + 0x10]
mov rcx, rbx
call fcn.14015729c
mov qword [rsi], rdi
mov byte [rsi + 8], 0
mov rax, rsi
jmp 0x140033885
mov qword [rsp + 0x60], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x140033826
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [r9 + 8]
jne 0x140033843
mov qword [rdx + r8*8], rbx
mov rax, qword [r9 + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x140033872
cmp rax, rdi
jne 0x14003384e
mov qword [rdx + r8*8], rbx
jmp 0x140033872
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rbx
je 0x140033872
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rcx, r9
call fcn.140035328
nop
mov qword [rsi], rbx
mov byte [rsi + 8], 1
mov rax, rsi
add rsp, 0x30
pop rdi
pop rsi
pop rbx
ret
Function at 0x140033890
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 8], rcx
push rdi
sub rsp, 0x30
mov qword [rax - 0x10], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov rbx, r9
mov r10, r8
mov rsi, rdx
mov r9, rcx
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rdx + r10]
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
inc rdx
cmp rdx, 2
jb 0x1400338c8
mov rdx, qword [r9 + 0x30]
and rdx, rcx
mov r8, rdx
add r8, r8
mov rcx, qword [r9 + 0x18]
mov rax, qword [rcx + r8*8]
cmp rax, qword [r9 + 8]
jne 0x140033908
mov rdi, qword [r9 + 8]
jmp 0x140033910
mov rdi, qword [rcx + r8*8 + 8]
mov rdi, qword [rdi]
cmp rdi, rax
je 0x14003395e
movzx eax, word [r10]
add rdx, rdx
mov rdi, qword [rdi + 8]
cmp ax, word [rdi + 0x10]
je 0x14003392e
cmp rdi, qword [rcx + rdx*8]
jne 0x14003391c
jmp 0x14003395e
mov rcx, qword [rbx + 8]
mov rax, qword [rbx]
mov qword [rcx], rax
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
dec qword [r9 + 0x10]
mov rcx, rbx
call fcn.14015729c
mov qword [rsi], rdi
mov byte [rsi + 8], 0
mov rax, rsi
jmp 0x1400339f7
mov qword [rsp + 0x20], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x140033998
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [r9 + 8]
jne 0x1400339b5
mov qword [rdx + r8*8], rbx
mov rax, qword [r9 + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x1400339e4
cmp rax, rdi
jne 0x1400339c0
mov qword [rdx + r8*8], rbx
jmp 0x1400339e4
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rbx
je 0x1400339e4
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rcx, r9
call fcn.1400353d8
nop
mov qword [rsi], rbx
mov byte [rsi + 8], 1
mov rax, rsi
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
Function at 0x140036e64
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x18], r8
push rdi
sub rsp, 0x20
mov eax, dword [r8 + 0x10]
mov rdi, r8
mov r9, rcx
mov dword [rsp + 0x30], eax
xor ecx, ecx
movabs r8, 0xcbf29ce484222325
mov rsi, rdx
movzx eax, byte [rsp + rcx + 0x30]
movabs rdx, 0x100000001b3
xor r8, rax
inc rcx
imul r8, rdx
cmp rcx, 4
jb 0x140036e95
mov rdx, qword [r9 + 0x30]
mov rcx, qword [r9 + 0x18]
and rdx, r8
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], rdi
jne 0x140036eec
cmp qword [rcx + rdx*8], rdi
jne 0x140036ee6
mov rax, qword [r9 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r9 + 0x18]
mov rax, qword [r9 + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x140036ef9
mov rax, qword [rdi + 8]
jmp 0x140036edf
cmp qword [rcx + rdx*8], rdi
jne 0x140036efe
mov rax, qword [rdi]
mov qword [rcx + rdx*8], rax
mov rdi, qword [rsp + 0x40]
mov rax, qword [rdi + 8]
lea rcx, [rdi + 0x18]
mov rbx, qword [rdi]
mov qword [rax], rbx
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rdx + 8], rax
dec qword [r9 + 0x10]
call fcn.140034514
mov rcx, rdi
call fcn.14015729c
mov qword [rsi], rbx
mov rax, rsi
mov rsi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret

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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
push rdi
sub rsp, 0x20
mov r9, rcx
mov rdi, rdx
movabs rcx, 0xcbf29ce484222325
xor r10d, r10d
movzx eax, byte [r10 + r8 + 0x10]
movabs rdx, 0x100000001b3
xor rcx, rax
inc r10
imul rcx, rdx
cmp r10, 2
jb 0x140036f62
mov rdx, qword [r9 + 0x30]
and rdx, rcx
mov rcx, qword [r9 + 0x18]
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], r8
jne 0x140036fba
cmp qword [rcx + rdx*8], r8
jne 0x140036fb4
mov rax, qword [r9 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r9 + 0x18]
mov rax, qword [r9 + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x140036fc7
mov rax, qword [r8 + 8]
jmp 0x140036fad
cmp qword [rcx + rdx*8], r8
jne 0x140036fcc
mov rax, qword [r8]
mov qword [rcx + rdx*8], rax
mov r8, qword [rsp + 0x40]
mov rax, qword [r8 + 8]
mov rcx, r8
mov rbx, qword [r8]
mov qword [rax], rbx
mov rdx, qword [r8]
mov rax, qword [r8 + 8]
mov qword [rdx + 8], rax
dec qword [r9 + 0x10]
call fcn.14015729c
mov qword [rdi], rbx
mov rax, rdi
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x140055a34
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 8], rcx
push rdi
sub rsp, 0x30
mov qword [rax - 0x10], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov rbx, r9
mov r11, r8
mov rsi, rdx
mov r9, rcx
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rdx + r11]
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
inc rdx
cmp rdx, 4
jb 0x140055a6c
mov rdx, qword [r9 + 0x30]
and rdx, rcx
lea r10, [r9 + 8]
mov r8, rdx
add r8, r8
mov rcx, qword [r9 + 0x18]
mov rax, qword [rcx + r8*8]
cmp rax, qword [r10]
jne 0x140055aae
mov rdi, qword [r10]
jmp 0x140055ab6
mov rdi, qword [rcx + r8*8 + 8]
mov rdi, qword [rdi]
cmp rdi, rax
je 0x140055af1
mov eax, dword [r11]
add rdx, rdx
mov rdi, qword [rdi + 8]
cmp eax, dword [rdi + 0x10]
je 0x140055ad2
cmp rdi, qword [rcx + rdx*8]
jne 0x140055ac1
jmp 0x140055af1
mov r8, rbx
lea rdx, [rsp + 0x20]
mov rcx, r10
call fcn.14005ea64
mov qword [rsi], rdi
mov byte [rsi + 8], 0
mov rax, rsi
jmp 0x140055b89
mov qword [rsp + 0x20], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x140055b2b
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [r10]
jne 0x140055b47
mov qword [rdx + r8*8], rbx
mov rax, qword [r9 + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x140055b76
cmp rax, rdi
jne 0x140055b52
mov qword [rdx + r8*8], rbx
jmp 0x140055b76
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rbx
je 0x140055b76
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rcx, r9
call fcn.14005ca9c
nop
mov qword [rsi], rbx
mov byte [rsi + 8], 1
mov rax, rsi
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
Function at 0x140055ba0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 8], rcx
push rsi
push rdi
push r14
sub rsp, 0x30
mov qword [rax - 0x28], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov rbx, r9
mov rsi, rdx
mov r9, rcx
mov r11d, dword [r8]
mov dword [rax + 0x18], r11d
movabs r10, 0xcbf29ce484222325
mov rcx, r10
xor edx, edx
movabs rdi, 0x100000001b3
movzx eax, byte [rsp + rdx + 0x60]
xor rcx, rax
imul rcx, rdi
inc rdx
cmp rdx, 4
jb 0x140055be8
movzx r14d, byte [r8 + 4]
mov eax, r14d
xor rax, r10
imul rax, rdi
imul rdx, rcx, 0x18d
xor rdx, rax
and rdx, qword [r9 + 0x30]
lea r10, [r9 + 8]
mov r8, rdx
add r8, r8
mov rcx, qword [r9 + 0x18]
mov rax, qword [rcx + r8*8]
cmp rax, qword [r10]
jne 0x140055c36
mov rdi, qword [r10]
jmp 0x140055c3e
mov rdi, qword [rcx + r8*8 + 8]
mov rdi, qword [rdi]
cmp rdi, rax
je 0x140055c7b
add rdx, rdx
mov rdi, qword [rdi + 8]
cmp r11d, dword [rdi + 0x10]
jne 0x140055c75
cmp r14b, byte [rdi + 0x14]
jne 0x140055c75
mov r8, rbx
lea rdx, [rsp + 0x60]
mov rcx, r10
call fcn.14005ea64
mov qword [rsi], rdi
mov byte [rsi + 8], 0
mov rax, rsi
jmp 0x140055d13
cmp rdi, qword [rcx + rdx*8]
jne 0x140055c46
mov qword [rsp + 0x60], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x140055cb5
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [r10]
jne 0x140055cd1
mov qword [rdx + r8*8], rbx
mov rax, qword [r9 + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x140055d00
cmp rax, rdi
jne 0x140055cdc
mov qword [rdx + r8*8], rbx
jmp 0x140055d00
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rbx
je 0x140055d00
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rcx, r9
call fcn.14005cb4c
nop
mov qword [rsi], rbx
mov byte [rsi + 8], 1
mov rax, rsi
mov rbx, qword [rsp + 0x58]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
Function at 0x140055e9c
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov rbx, r9
mov rsi, rdx
mov r9, rcx
movzx r11d, byte [r8]
mov eax, r11d
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
movabs rcx, 0x100000001b3
imul rax, rcx
mov rcx, qword [r9 + 0x30]
and rcx, rax
lea r10, [r9 + 8]
mov r8, rcx
add r8, r8
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [r10]
jne 0x140055f04
mov rdi, qword [r10]
jmp 0x140055f0c
mov rdi, qword [rdx + r8*8 + 8]
mov rdi, qword [rdi]
cmp rdi, rax
je 0x140055f45
add rcx, rcx
mov rdi, qword [rdi + 8]
cmp r11b, byte [rdi + 0x10]
je 0x140055f26
cmp rdi, qword [rdx + rcx*8]
jne 0x140055f14
jmp 0x140055f45
mov r8, rbx
lea rdx, [rsp + 0x60]
mov rcx, r10
call fcn.14005ea64
mov qword [rsi], rdi
mov byte [rsi + 8], 0
mov rax, rsi
jmp 0x140055fdd
mov qword [rsp + 0x60], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x140055f7f
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [r10]
jne 0x140055f9b
mov qword [rdx + r8*8], rbx
mov rax, qword [r9 + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x140055fca
cmp rax, rdi
jne 0x140055fa6
mov qword [rdx + r8*8], rbx
jmp 0x140055fca
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rbx
je 0x140055fca
mov rdx, qword [r9 + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rcx, r9
call fcn.14005ccac
nop
mov qword [rsi], rbx
mov byte [rsi + 8], 1
mov rax, rsi
add rsp, 0x30
pop rdi
pop rsi
pop rbx
ret

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

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
sub rsp, 0x20
mov r9, rcx
mov rbx, rdx
movabs rcx, 0xcbf29ce484222325
xor r10d, r10d
movzx eax, byte [r10 + r8 + 0x10]
movabs rdx, 0x100000001b3
xor rcx, rax
inc r10
imul rcx, rdx
cmp r10, 4
jb 0x14005e261
mov rdx, qword [r9 + 0x30]
and rdx, rcx
mov rcx, qword [r9 + 0x18]
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], r8
jne 0x14005e2b9
cmp qword [rcx + rdx*8], r8
jne 0x14005e2b3
mov rax, qword [r9 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r9 + 0x18]
mov rax, qword [r9 + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x14005e2c6
mov rax, qword [r8 + 8]
jmp 0x14005e2ac
cmp qword [rcx + rdx*8], r8
jne 0x14005e2cb
mov rax, qword [r8]
mov qword [rcx + rdx*8], rax
mov r8, qword [rsp + 0x40]
lea rcx, [r9 + 8]
mov rdx, rbx
call fcn.14005ea64
mov rax, rbx
add rsp, 0x20
pop rbx
ret