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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rdi
push r14
push r15
sub rsp, 0x40
mov qword [rax - 0x38], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x20], rsi
mov rbx, r9
mov r14, rdx
mov rsi, rcx
mov r9d, dword [r8]
mov dword [rax + 0x18], r9d
movabs r11, 0xcbf29ce484222325
mov rcx, r11
xor edx, edx
movabs r10, 0x100000001b3
movzx eax, byte [rsp + rdx + 0x70]
xor rcx, rax
imul rcx, r10
inc rdx
cmp rdx, 4
jb 0x1401ce835
movzx r15d, byte [r8 + 4]
mov eax, r15d
xor rax, r11
imul rax, r10
imul r8, rcx, 0x18d
xor r8, rax
and r8, qword [rsi + 0x30]
mov rax, r8
add rax, rax
mov rcx, qword [rsi + 0x18]
mov rdi, qword [rsi + 8]
mov r11, qword [rcx + rax*8]
cmp r11, rdi
je 0x1401ce886
mov rdi, qword [rcx + rax*8 + 8]
mov rdi, qword [rdi]
mov rdx, rdi
cmp rdx, r11
je 0x1401ce8c2
mov rdi, qword [rdi + 8]
mov rdx, rdi
cmp r9d, dword [rdi + 0x10]
jne 0x1401ce889
cmp r15b, byte [rdi + 0x14]
jne 0x1401ce889
mov r8, rbx
lea rdx, [rsp + 0x60]
lea rcx, [rsi + 8]
call fcn.1401cef5c
mov qword [r14], rdi
mov byte [r14 + 8], 0
mov rax, r14
jmp 0x1401ce9e7
mov qword [rsp + 0x70], rbx
mov r9, qword [rbx]
cmp rdx, r9
je 0x1401ce8fc
mov rax, qword [rbx + 8]
mov qword [rax], r9
mov rax, qword [r9 + 8]
mov qword [rax], rdx
mov rax, qword [rdx + 8]
mov qword [rax], rbx
mov rcx, qword [rdx + 8]
mov rax, qword [r9 + 8]
mov qword [rdx + 8], rax
mov rax, qword [rbx + 8]
mov qword [r9 + 8], rax
mov qword [rbx + 8], rcx
add r8, r8
mov r9, qword [rsi + 0x18]
mov rax, qword [r9 + r8*8]
cmp rax, qword [rsi + 8]
jne 0x1401ce91c
mov qword [r9 + r8*8], rbx
mov rax, qword [rsi + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x1401ce94b
cmp rax, rdx
jne 0x1401ce927
mov qword [r9 + r8*8], rbx
jmp 0x1401ce94b
mov rax, qword [r9 + r8*8 + 8]
mov rcx, qword [rax]
mov qword [r9 + r8*8 + 8], rcx
cmp rcx, rbx
je 0x1401ce94b
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rax, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x38]
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movss xmm1, dword [0x140333fc4]
test rax, rax
jns 0x1401ce96c
addss xmm0, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm2, rdx
test rdx, rdx
jns 0x1401ce97d
addss xmm2, xmm1
divss xmm0, xmm2
comiss xmm0, dword [rsi]
jbe 0x1401ce9dc
cmp rdx, 0x200
jae 0x1401ce995
shl rdx, 3
jmp 0x1401ce9a7
movabs rax, 0xfffffffffffffff
cmp rdx, rax
jae 0x1401ce9a7
add rdx, rdx
mov rcx, rsi
call fcn.140035658
mov rax, qword [rsi + 8]
cmp qword [rax], rax
je 0x1401ce9dc
mov r15, qword [rax + 8]
mov rdi, qword [rsi + 8]
mov rdi, qword [rdi]
lea r8, [rdi + 0x10]
mov r9, rdi
lea rdx, [rsp + 0x28]
mov rcx, rsi
call fcn.1401ce7ec
cmp rdi, r15
jne 0x1401ce9bc
mov qword [r14], rbx
mov byte [r14 + 8], 1
mov rax, r14
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret
Function at 0x1401ce9fc
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rdi
push r14
push r15
sub rsp, 0x40
mov qword [rax - 0x38], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x20], rsi
mov rbx, r9
mov r14, rdx
mov rsi, rcx
movzx r11d, byte [r8]
mov eax, r11d
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
movabs rcx, 0x100000001b3
imul rax, rcx
mov r8, qword [rsi + 0x30]
and r8, rax
mov rax, r8
add rax, rax
mov rcx, qword [rsi + 0x18]
mov rdi, qword [rsi + 8]
mov r10, qword [rcx + rax*8]
cmp r10, rdi
je 0x1401cea6d
mov rdi, qword [rcx + rax*8 + 8]
mov rdi, qword [rdi]
mov rdx, rdi
cmp rdx, r10
je 0x1401ceaa3
mov rdi, qword [rdi + 8]
mov rdx, rdi
cmp r11b, byte [rdi + 0x10]
jne 0x1401cea70
mov r8, rbx
lea rdx, [rsp + 0x60]
lea rcx, [rsi + 8]
call fcn.1401cef5c
mov qword [r14], rdi
mov byte [r14 + 8], 0
mov rax, r14
jmp 0x1401cebc8
mov qword [rsp + 0x70], rbx
mov r9, qword [r9]
cmp rdx, r9
je 0x1401ceadd
mov rax, qword [rbx + 8]
mov qword [rax], r9
mov rax, qword [r9 + 8]
mov qword [rax], rdx
mov rax, qword [rdx + 8]
mov qword [rax], rbx
mov rcx, qword [rdx + 8]
mov rax, qword [r9 + 8]
mov qword [rdx + 8], rax
mov rax, qword [rbx + 8]
mov qword [r9 + 8], rax
mov qword [rbx + 8], rcx
add r8, r8
mov r9, qword [rsi + 0x18]
mov rax, qword [r9 + r8*8]
cmp rax, qword [rsi + 8]
jne 0x1401ceafd
mov qword [r9 + r8*8], rbx
mov rax, qword [rsi + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x1401ceb2c
cmp rax, rdx
jne 0x1401ceb08
mov qword [r9 + r8*8], rbx
jmp 0x1401ceb2c
mov rax, qword [r9 + r8*8 + 8]
mov rcx, qword [rax]
mov qword [r9 + r8*8 + 8], rcx
cmp rcx, rbx
je 0x1401ceb2c
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rax, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x38]
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movss xmm1, dword [0x140333fc4]
test rax, rax
jns 0x1401ceb4d
addss xmm0, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm2, rdx
test rdx, rdx
jns 0x1401ceb5e
addss xmm2, xmm1
divss xmm0, xmm2
comiss xmm0, dword [rsi]
jbe 0x1401cebbd
cmp rdx, 0x200
jae 0x1401ceb76
shl rdx, 3
jmp 0x1401ceb88
movabs rax, 0xfffffffffffffff
cmp rdx, rax
jae 0x1401ceb88
add rdx, rdx
mov rcx, rsi
call fcn.140035658
mov rax, qword [rsi + 8]
cmp qword [rax], rax
je 0x1401cebbd
mov r15, qword [rax + 8]
mov rdi, qword [rsi + 8]
mov rdi, qword [rdi]
lea r8, [rdi + 0x10]
mov r9, rdi
lea rdx, [rsp + 0x28]
mov rcx, rsi
call fcn.1401ce9fc
cmp rdi, r15
jne 0x1401ceb9d
mov qword [r14], rbx
mov byte [r14 + 8], 1
mov rax, r14
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret
Function at 0x1401cf048
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
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 0x1401cf061
mov rdx, qword [r9 + 0x30]
and rdx, rcx
mov rcx, qword [r9 + 0x18]
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], r8
jne 0x1401cf0b9
cmp qword [rcx + rdx*8], r8
jne 0x1401cf0ae
mov rax, qword [r9 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r9 + 0x18]
mov rax, qword [r9 + 8]
jmp 0x1401cf0b2
mov rax, qword [r8 + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x1401cf0c6
cmp qword [rcx + rdx*8], r8
jne 0x1401cf0c6
mov rax, qword [r8]
mov qword [rcx + rdx*8], rax
lea rcx, [r9 + 8]
mov rdx, rbx
call fcn.1401cef5c
mov rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov eax, dword [r8 + 0x10]
movabs r11, 0xcbf29ce484222325
mov rbx, rdx
mov dword [rsp + 0x30], eax
mov r9, rcx
xor r10d, r10d
mov rcx, r11
movabs rdx, 0x100000001b3
movzx eax, byte [rsp + r10 + 0x30]
inc r10
xor rcx, rax
imul rcx, rdx
cmp r10, 4
jb 0x1401cf15e
movzx eax, byte [r8 + 0x14]
xor rax, r11
imul rax, rdx
imul rdx, rcx, 0x18d
mov rcx, qword [r9 + 0x18]
xor rdx, rax
and rdx, qword [r9 + 0x30]
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], r8
jne 0x1401cf1bf
cmp qword [rcx + rdx*8], r8
jne 0x1401cf1b4
mov rax, qword [r9 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r9 + 0x18]
mov rax, qword [r9 + 8]
jmp 0x1401cf1b8
mov rax, qword [r8 + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x1401cf1cc
cmp qword [rcx + rdx*8], r8
jne 0x1401cf1cc
mov rax, qword [r8]
mov qword [rcx + rdx*8], rax
lea rcx, [r9 + 8]
mov rdx, rbx
call fcn.1401cef5c
mov rax, rbx
add rsp, 0x20
pop rbx
ret

Function at 0x1401cf238
Capabilities:
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
movzx eax, byte [r8 + 0x10]
mov r10, rcx
movabs rcx, 0xcbf29ce484222325
mov rbx, rdx
xor rax, rcx
movabs rcx, 0x100000001b3
imul rax, rcx
mov r9, qword [r10 + 0x30]
mov rcx, qword [r10 + 0x18]
and r9, rax
add r9, r9
cmp qword [rcx + r9*8 + 8], r8
jne 0x1401cf29c
cmp qword [rcx + r9*8], r8
jne 0x1401cf291
mov rax, qword [r10 + 8]
mov qword [rcx + r9*8], rax
mov rcx, qword [r10 + 0x18]
mov rax, qword [r10 + 8]
jmp 0x1401cf295
mov rax, qword [r8 + 8]
mov qword [rcx + r9*8 + 8], rax
jmp 0x1401cf2a9
cmp qword [rcx + r9*8], r8
jne 0x1401cf2a9
mov rax, qword [r8]
mov qword [rcx + r9*8], rax
lea rcx, [r10 + 8]
call fcn.1401cef5c
mov rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1401daf4c
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
lea r10, [r8 + 0x10]
mov rdi, r8
cmp qword [r10 + 0x18], 0x10
mov rsi, rdx
mov r9, rcx
mov r11, r10
jb 0x1401daf75
mov r11, qword [r10]
xor r8d, r8d
movabs rcx, 0xcbf29ce484222325
cmp qword [r10 + 0x10], r8
jbe 0x1401dafa7
movzx eax, byte [r8 + r11]
movabs rdx, 0x100000001b3
xor rcx, rax
inc r8
imul rcx, rdx
cmp r8, qword [r10 + 0x10]
jb 0x1401daf88
mov rdx, qword [r9 + 0x30]
and rdx, rcx
mov rcx, qword [r9 + 0x18]
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], rdi
jne 0x1401dafdf
cmp qword [rcx + rdx*8], rdi
jne 0x1401dafd4
mov rax, qword [r9 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r9 + 0x18]
mov rax, qword [r9 + 8]
jmp 0x1401dafd8
mov rax, qword [rdi + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x1401dafec
cmp qword [rcx + rdx*8], rdi
jne 0x1401dafec
mov rax, qword [rdi]
mov qword [rcx + rdx*8], rax
mov rax, qword [rdi + 8]
mov rcx, r10
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.1401da27c
mov rcx, rdi
call fcn.140261814
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 0x1401f7e64
Capabilities:
Encode data using xor
Encrypt data using rc4 prga
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r13
push r14
push r15
cmp qword [rdx + 0x18], 8
mov rbx, r8
mov r10, qword [rdx + 0x10]
mov r13, rcx
mov r9, rdx
jb 0x1401f7e96
mov r9, qword [rdx]
lea r11, [r10 + r10]
xor ecx, ecx
movabs r8, 0xcbf29ce484222325
test r11, r11
je 0x1401f7ec9
movzx eax, byte [rcx + r9]
movabs rdi, 0x100000001b3
xor r8, rax
inc rcx
imul r8, rdi
cmp rcx, r11
jb 0x1401f7eab
mov rsi, qword [r13 + 0xb0]
mov r12, qword [r13 + 0x98]
and rsi, r8
mov r11, qword [r13 + 0x88]
add rsi, rsi
mov rcx, qword [r12 + rsi*8]
cmp qword [r12 + rsi*8], r11
jne 0x1401f7ef3
mov rax, r11
jmp 0x1401f7efb
mov rax, qword [r12 + rsi*8 + 8]
mov rax, qword [rax]
cmp rcx, rax
je 0x1401f7fc2
cmp qword [rdx + 0x18], 8
lea rax, [rcx + 0x10]
mov r8, rdx
jb 0x1401f7f15
mov r8, qword [rdx]
mov r15, qword [rax + 0x18]
mov rbp, qword [rax + 0x10]
cmp r15, 8
jb 0x1401f7f26
mov rax, qword [rax]
cmp rbp, r10
jne 0x1401f7f66
mov r14, rbp
test rbp, rbp
je 0x1401f7f6e
movzx r9d, word [rax]
movzx edi, word [r8]
cmp r9w, di
jb 0x1401f7f66
sub rax, r8
cmp r9w, di
ja 0x1401f7f66
cmp r14, 1
je 0x1401f7f6e
add r8, 2
dec r14
movzx r9d, word [rax + r8]
movzx edi, word [r8]
cmp r9w, di
jae 0x1401f7f48
mov rcx, qword [rcx]
jmp 0x1401f7ee8
lea rax, [rcx + 0x10]
cmp r15, 8
jb 0x1401f7f7b
mov rax, qword [rax]
cmp qword [rdx + 0x18], 8
jb 0x1401f7f85
mov rdx, qword [rdx]
cmp r10, rbp
jne 0x1401f7fc2
test r10, r10
je 0x1401f7fc5
movzx r8d, word [rdx]
movzx r9d, word [rax]
cmp r8w, r9w
jb 0x1401f7fc2
sub rdx, rax
cmp r8w, r9w
ja 0x1401f7fc2
cmp r10, 1
je 0x1401f7fc5
add rax, 2
dec r10
movzx r8d, word [rdx + rax]
movzx r9d, word [rax]
cmp r8w, r9w
jae 0x1401f7fa4
mov rcx, r11
cmp rcx, r11
jne 0x1401f7fd1
mov eax, 0x80004005
jmp 0x1401f8013
mov rax, qword [rcx + 0x38]
cmp rax, qword [0x1403164a8]
jne 0x1401f7ff3
mov rax, qword [rcx + 0x40]
cmp rax, qword [0x1403164b0]
jne 0x1401f7ff3
mov rax, qword [r13 + 0x30]
or byte [rax + 0x50], 0x20
test rbx, rbx
je 0x1401f8011
movups xmm0, xmmword [rcx + 0x30]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rcx + 0x40]
movups xmmword [rbx + 0x10], xmm1
movsd xmm0, qword [rcx + 0x50]
movsd qword [rbx + 0x20], xmm0
xor eax, eax
mov rbx, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
pop r15
pop r14
pop r13
pop r12
ret
Function at 0x1401fc2b0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x40
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbp
movzx r12d, r8w
mov r15b, dl
mov r14d, ecx
cmp byte [0x1403d7f40], 0
jne 0x1401fc2ed
mov eax, 1
jmp 0x1401fc483
mov dl, r15b
lea rcx, [0x1403cf039]
call fcn.1401fc014
test al, al
jne 0x1401fc2e3
mov esi, 1
mov rdi, qword [0x1403d60a8]
test rdi, rdi
je 0x1401fc31c
lock add dword [rdi + 8], esi
mov rdi, qword [0x1403d60a8]
mov rbp, qword [0x1403d60a0]
test rbp, rbp
je 0x1401fc441
lea rax, [0x1403c5e98]
mov qword [rsp + 0x28], rax
and dword [rsp + 0x30], 0
mov rcx, qword [0x1403c5e98]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockShared]
mov eax, esi
lock xadd dword [rsp + 0x30], eax
mov dword [rsp + 0x88], r14d
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rsp + rdx + 0x88]
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
add rdx, rsi
cmp rdx, 4
jb 0x1401fc366
mov rdx, qword [rbp + 0x30]
and rdx, rcx
add rdx, rdx
mov r8, qword [rbp + 0x18]
mov rbx, qword [r8 + rdx*8]
mov rcx, qword [rbp + 8]
cmp qword [r8 + rdx*8], rcx
jne 0x1401fc3a9
mov rax, rcx
jmp 0x1401fc3b1
mov rax, qword [r8 + rdx*8 + 8]
mov rax, qword [rax]
cmp rbx, rax
je 0x1401fc3c1
cmp dword [rbx + 0x10], r14d
je 0x1401fc3c4
mov rbx, qword [rbx]
jmp 0x1401fc39e
mov rbx, rcx
cmp rbx, rcx
je 0x1401fc41d
lea rcx, [rbx + 0x18]
mov dl, r15b
call fcn.1401fc014
test al, al
jne 0x1401fc420
mov r8, qword [rbx + 0x20]
mov rcx, qword [rbx + 0x28]
sub rcx, r8
sar rcx, 1
jmp 0x1401fc40c
mov rdx, rcx
sar rdx, 1
lea rax, [r8 + rdx*2]
cmp word [rax], r12w
jae 0x1401fc409
lea r8, [rax + 2]
or rax, 0xffffffffffffffff
sub rax, rdx
add rcx, rax
jmp 0x1401fc40c
mov rcx, rdx
test rcx, rcx
jg 0x1401fc3e9
cmp r8, qword [rbx + 0x28]
je 0x1401fc41d
cmp r12w, word [r8]
jae 0x1401fc420
xor sil, sil
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x1401fc441
or eax, 0xffffffff
lock xadd dword [rsp + 0x30], eax
mov rcx, qword [rsp + 0x28]
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockShared]
jmp 0x1401fc420
test rdi, rdi
je 0x1401fc480
or eax, 0xffffffff
lock xadd dword [rdi + 8], eax
sub eax, 1
jne 0x1401fc480
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax]
call qword [case.0x140118f85.0]
or eax, 0xffffffff
lock xadd dword [rdi + 0xc], eax
sub eax, 1
jne 0x1401fc480
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [case.0x140118f85.0]
nop
mov al, sil
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
Function at 0x1401fc6ec
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x40
mov r10d, dword [rdx]
mov r11, rdx
mov dword [rsp + 0x50], r10d
mov rbx, rcx
movabs r8, 0xcbf29ce484222325
xor r9d, r9d
movzx eax, byte [rsp + r9 + 0x50]
movabs rcx, 0x100000001b3
xor r8, rax
inc r9
imul r8, rcx
cmp r9, 4
jb 0x1401fc716
mov r9, qword [rbx + 0x30]
mov rdx, qword [rbx + 8]
and r9, r8
mov r8, qword [rbx + 0x18]
add r9, r9
mov rax, qword [r8 + r9*8]
cmp qword [r8 + r9*8], rdx
jne 0x1401fc757
mov rcx, rdx
jmp 0x1401fc75f
mov rcx, qword [r8 + r9*8 + 8]
mov rcx, qword [rcx]
cmp rax, rcx
je 0x1401fc774
cmp dword [rax + 0x10], r10d
je 0x1401fc76f
mov rax, qword [rax]
jmp 0x1401fc74c
mov rcx, rax
jmp 0x1401fc77a
mov rax, rdx
mov rcx, rdx
cmp rcx, rdx
jne 0x1401fc7e5
mov rdi, qword [rdx]
lea rax, [rsp + 0x50]
mov rdx, rdi
mov qword [rsp + 0x50], r11
mov qword [rsp + 0x20], rax
mov rsi, qword [rdi + 8]
mov r8, rsi
call fcn.1401fd1e0
mov rdx, rax
movabs rcx, 0x492492492492491
mov rax, qword [rbx + 0x10]
sub rcx, rax
cmp rcx, 1
jb 0x1401fc7f9
inc rax
mov rcx, rbx
mov qword [rbx + 0x10], rax
mov qword [rdi + 8], rdx
mov qword [rsi], rdx
lea rdx, [rsp + 0x30]
mov r9, qword [rbx + 8]
mov r9, qword [r9]
lea r8, [r9 + 0x10]
call fcn.1401fceb4
mov rax, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x58]
add rax, 0x18
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
lea rcx, str.list_T__too_long
call fcn.1402328c4
int3
Function at 0x1401fceb4
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rdi
push r14
push r15
sub rsp, 0x40
mov qword [rax - 0x38], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x20], rsi
mov rbx, r9
mov r14, rdx
mov rsi, rcx
mov r10d, dword [r8]
mov dword [rax + 0x18], r10d
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rsp + rdx + 0x70]
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
inc rdx
cmp rdx, 4
jb 0x1401fcef0
mov r8, qword [rsi + 0x30]
and r8, rcx
mov rax, r8
add rax, rax
mov rcx, qword [rsi + 0x18]
mov rdi, qword [rsi + 8]
mov r11, qword [rcx + rax*8]
cmp r11, rdi
je 0x1401fcf35
mov rdi, qword [rcx + rax*8 + 8]
mov rdi, qword [rdi]
mov rdx, rdi
cmp rdx, r11
je 0x1401fcf6b
mov rdi, qword [rdi + 8]
mov rdx, rdi
cmp r10d, dword [rdi + 0x10]
jne 0x1401fcf38
mov r8, rbx
lea rdx, [rsp + 0x60]
lea rcx, [rsi + 8]
call fcn.1401fd0a4
mov qword [r14], rdi
mov byte [r14 + 8], 0
mov rax, r14
jmp 0x1401fd090
mov qword [rsp + 0x70], rbx
mov r9, qword [r9]
cmp rdx, r9
je 0x1401fcfa5
mov rax, qword [rbx + 8]
mov qword [rax], r9
mov rax, qword [r9 + 8]
mov qword [rax], rdx
mov rax, qword [rdx + 8]
mov qword [rax], rbx
mov rcx, qword [rdx + 8]
mov rax, qword [r9 + 8]
mov qword [rdx + 8], rax
mov rax, qword [rbx + 8]
mov qword [r9 + 8], rax
mov qword [rbx + 8], rcx
add r8, r8
mov r9, qword [rsi + 0x18]
mov rax, qword [r9 + r8*8]
cmp rax, qword [rsi + 8]
jne 0x1401fcfc5
mov qword [r9 + r8*8], rbx
mov rax, qword [rsi + 0x18]
mov qword [rax + r8*8 + 8], rbx
jmp 0x1401fcff4
cmp rax, rdx
jne 0x1401fcfd0
mov qword [r9 + r8*8], rbx
jmp 0x1401fcff4
mov rax, qword [r9 + r8*8 + 8]
mov rcx, qword [rax]
mov qword [r9 + r8*8 + 8], rcx
cmp rcx, rbx
je 0x1401fcff4
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rax, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x38]
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movss xmm1, dword [0x140333fc4]
test rax, rax
jns 0x1401fd015
addss xmm0, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm2, rdx
test rdx, rdx
jns 0x1401fd026
addss xmm2, xmm1
divss xmm0, xmm2
comiss xmm0, dword [rsi]
jbe 0x1401fd085
cmp rdx, 0x200
jae 0x1401fd03e
shl rdx, 3
jmp 0x1401fd050
movabs rax, 0xfffffffffffffff
cmp rdx, rax
jae 0x1401fd050
add rdx, rdx
mov rcx, rsi
call fcn.140035658
mov rax, qword [rsi + 8]
cmp qword [rax], rax
je 0x1401fd085
mov r15, qword [rax + 8]
mov rdi, qword [rsi + 8]
mov rdi, qword [rdi]
lea r8, [rdi + 0x10]
mov r9, rdi
lea rdx, [rsp + 0x28]
mov rcx, rsi
call fcn.1401fceb4
cmp rdi, r15
jne 0x1401fd065
mov qword [r14], rbx
mov byte [r14 + 8], 1
mov rax, r14
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret
Function at 0x1401fd22c
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov eax, dword [r8 + 0x10]
mov r9, rcx
mov dword [rsp + 0x30], eax
movabs rcx, 0xcbf29ce484222325
mov rbx, rdx
xor r10d, r10d
movzx eax, byte [rsp + r10 + 0x30]
movabs rdx, 0x100000001b3
xor rcx, rax
inc r10
imul rcx, rdx
cmp r10, 4
jb 0x1401fd24d
mov rdx, qword [r9 + 0x30]
and rdx, rcx
mov rcx, qword [r9 + 0x18]
add rdx, rdx
cmp qword [rcx + rdx*8 + 8], r8
jne 0x1401fd2a5
cmp qword [rcx + rdx*8], r8
jne 0x1401fd29a
mov rax, qword [r9 + 8]
mov qword [rcx + rdx*8], rax
mov rcx, qword [r9 + 0x18]
mov rax, qword [r9 + 8]
jmp 0x1401fd29e
mov rax, qword [r8 + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x1401fd2b2
cmp qword [rcx + rdx*8], r8
jne 0x1401fd2b2
mov rax, qword [r8]
mov qword [rcx + rdx*8], rax
lea rcx, [r9 + 8]
mov rdx, rbx
call fcn.1401fd0a4
mov rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1402035e0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
mov ebx, dword [r8]
movabs rdi, 0xcbf29ce484222325
mov r11, rdx
mov dword [rsp + 8], ebx
mov r9, rdi
xor r10d, r10d
movabs rdx, 0x100000001b3
movzx eax, byte [rsp + r10 + 8]
inc r10
xor r9, rax
imul r9, rdx
cmp r10, 4
jb 0x14020360e
movzx r10d, byte [r8 + 4]
imul r8, r9, 0x18d
mov r9, qword [rcx + 0x18]
mov eax, r10d
xor rax, rdi
imul rax, rdx
mov rdx, qword [rcx + 8]
xor r8, rax
and r8, qword [rcx + 0x30]
add r8, r8
mov rax, qword [r9 + r8*8]
cmp qword [r9 + r8*8], rdx
jne 0x14020365b
mov rcx, rdx
jmp 0x140203663
mov rcx, qword [r9 + r8*8 + 8]
mov rcx, qword [rcx]
cmp rax, rcx
je 0x140203681
cmp dword [rax + 0x10], ebx
jne 0x140203673
cmp byte [rax + 0x14], r10b
je 0x140203678
mov rax, qword [rax]
jmp 0x140203650
cmovne rax, rdx
mov qword [r11], rax
jmp 0x140203684
mov qword [r11], rdx
mov rbx, qword [rsp + 0x10]
mov rax, r11
mov rdi, qword [rsp + 0x18]
ret

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

Disassembly:
mov qword [rsp + 8], rbx
mov r11, r8
mov rbx, rcx
movabs r9, 0xcbf29ce484222325
xor r10d, r10d
movzx eax, byte [r10 + r8]
movabs rcx, 0x100000001b3
xor r9, rax
inc r10
imul r9, rcx
cmp r10, 4
jb 0x1402036ac
mov r8, qword [rbx + 0x30]
mov r10, qword [rbx + 0x18]
and r8, r9
add r8, r8
mov r9, qword [r10 + r8*8]
mov rcx, r9
cmp r9, qword [rbx + 8]
jne 0x1402036ec
mov rax, qword [rbx + 8]
jmp 0x1402036f4
mov rax, qword [r10 + r8*8 + 8]
mov rax, qword [rax]
cmp rcx, rax
je 0x140203706
mov eax, dword [r11]
cmp dword [rcx + 0x10], eax
je 0x14020370a
mov rcx, qword [rcx]
jmp 0x1402036e0
mov rcx, qword [rbx + 8]
mov qword [rdx], rcx
mov rax, rdx
mov rbx, qword [rsp + 8]
ret

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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x40
xor edi, edi
mov rbp, r9
mov r11d, edi
mov r14, r8
mov rsi, rdx
movabs r10, 0xcbf29ce484222325
movzx eax, byte [r11 + rsi]
movabs rdx, 0x100000001b3
xor r10, rax
inc r11
imul r10, rdx
cmp r11, 4
jb 0x140203eb6
mov rdx, qword [rcx + 0x30]
mov r8, qword [rcx + 0x18]
and rdx, r10
mov rcx, qword [rcx + 8]
add rdx, rdx
mov rbx, qword [r8 + rdx*8]
cmp qword [r8 + rdx*8], rcx
jne 0x140203ef6
mov rax, rcx
jmp 0x140203efe
mov rax, qword [r8 + rdx*8 + 8]
mov rax, qword [rax]
cmp rbx, rax
je 0x140203f0f
mov eax, dword [rsi]
cmp dword [rbx + 0x10], eax
je 0x140203f12
mov rbx, qword [rbx]
jmp 0x140203eeb
mov rbx, rcx
cmp rbx, rcx
je 0x140203f59
movzx eax, word [r14]
lea rcx, [rbx + 0x18]
lea r8, [rsp + 0x60]
mov word [rsp + 0x60], ax
lea rdx, [rsp + 0x30]
call fcn.1402059cc
mov rdx, qword [rbx + 0x20]
cmp qword [rsp + 0x30], rdx
je 0x140203f59
mov al, byte [rsp + 0x60]
lea rdx, [rsp + 0x30]
mov r9, r14
mov byte [rsp + 0x20], al
mov rcx, rbp
call fcn.1401a565c
mov dil, 1
mov rbx, qword [rsp + 0x68]
mov al, dil
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret