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

Disassembly:
movzx r8d, byte [rdx]
mov r9, rcx
movabs rcx, 0x100000001b3
movabs rax, 0xcbf29ce484222325
xor r8, rax
mov r10, rdx
movzx eax, byte [rdx + 1]
imul r8, rcx
xor r8, rax
movzx eax, byte [rdx + 2]
imul r8, rcx
xor r8, rax
movzx eax, byte [rdx + 3]
imul r8, rcx
xor r8, rax
movzx eax, byte [rdx + 4]
imul r8, rcx
xor r8, rax
movzx eax, byte [rdx + 5]
imul r8, rcx
xor r8, rax
movzx eax, byte [rdx + 6]
imul r8, rcx
xor r8, rax
movzx eax, byte [rdx + 7]
mov rdx, qword [r9 + 0x30]
imul r8, rcx
xor r8, rax
imul r8, rcx
and rdx, r8
mov r8, qword [r9 + 8]
shl rdx, 4
add rdx, qword [r9 + 0x18]
mov rax, qword [rdx + 8]
cmp rax, r8
je 0x140255380
mov rcx, qword [r10]
mov rdx, qword [rdx]
cmp rcx, qword [rax + 0x10]
je 0x14025536f
nop word [rax + rax]
cmp rax, rdx
je 0x140255380
mov rax, qword [rax + 8]
cmp rcx, qword [rax + 0x10]
jne 0x140255360
test rax, rax
cmove rax, r8
cmp rax, r8
je 0x140255380
mov rax, qword [rax + 0x18]
ret
xor eax, eax
ret
Function at 0x140257e20
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov rsi, rcx
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x140258003
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [rsi + 8]
or rax, rdi
bsr rcx, rax
mov r8, rbx
mov qword [rsp + 0x40], r14
inc ecx
shl rdi, cl
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
call fcn.140257cf0
mov rcx, qword [rsi + 8]
lea rax, [rdi - 1]
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x38], rdi
mov rcx, qword [rcx]
mov rdx, rcx
cmp rcx, rbx
je 0x140257fc8
mov qword [rsp + 0x38], rbp
movabs rdi, 0x100000001b3
movabs rbp, 0xcbf29ce484222325
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + 0x11]
movzx r9d, byte [rcx + 0x10]
mov r11, qword [rsi + 0x30]
xor r9, rbp
mov rdx, qword [rdx]
imul r9, rdi
xor r9, rax
movzx eax, byte [rcx + 0x12]
imul r9, rdi
xor r9, rax
movzx eax, byte [rcx + 0x13]
imul r9, rdi
xor r9, rax
movzx eax, byte [rcx + 0x14]
imul r9, rdi
xor r9, rax
movzx eax, byte [rcx + 0x15]
imul r9, rdi
xor r9, rax
movzx eax, byte [rcx + 0x16]
imul r9, rdi
xor r9, rax
movzx eax, byte [rcx + 0x17]
imul r9, rdi
xor r9, rax
imul r9, rdi
and r11, r9
shl r11, 4
add r11, qword [rsi + 0x18]
mov r10, qword [r11]
cmp r10, rbx
jne 0x140257f3c
mov qword [r11], rcx
mov qword [r11 + 8], rcx
jmp 0x140257fb7
mov rax, qword [r11 + 8]
mov r9, qword [rcx + 0x10]
cmp r9, qword [rax + 0x10]
jne 0x140257f79
mov r10, qword [rax]
cmp r10, rcx
je 0x140257f73
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
mov qword [r11 + 8], rcx
jmp 0x140257fb7
mov r8, rax
cmp r10, rax
je 0x140257f93
mov rax, qword [rax + 8]
mov r8, rax
cmp r9, qword [rax + 0x10]
je 0x140257fdd
cmp r10, rax
jne 0x140257f81
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov r9, qword [rdx + 8]
mov qword [r9], r8
mov rax, qword [r8 + 8]
mov qword [rax], rcx
mov qword [r8 + 8], r9
mov qword [rdx + 8], r10
mov qword [rcx + 8], rax
mov qword [r11], rcx
mov rcx, rdx
cmp rdx, rbx
jne 0x140257ec0
mov rbp, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
mov r10, qword [rax]
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
jmp 0x140257fb7
lea rcx, str.invalid_hash_bucket_count
call fcn.1401ad6c8
int3

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

Disassembly:
cmp qword [rdx + 0x18], 0x10
mov r8, rdx
jb 0x1402588dd
mov r8, qword [rdx]
mov r9, qword [rdx + 0x10]
movabs rax, 0xcbf29ce484222325
xor edx, edx
test r9, r9
je 0x140258914
movabs r10, 0x100000001b3
nop dword [rax]
movzx ecx, byte [rdx + r8]
inc rdx
xor rax, rcx
imul rax, r10
cmp rdx, r9
jb 0x140258900
ret
Function at 0x14025db50
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x30
cmp qword [rdx + 0x18], 0x10
mov r10, rdx
jb 0x14025db63
mov r10, qword [rdx]
mov r11, qword [rdx + 0x10]
xor ebx, ebx
movabs r9, 0xcbf29ce484222325
mov r8d, ebx
test r11, r11
je 0x14025dba9
mov qword [rsp + 0x40], rdi
movabs rdi, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [r8 + r10]
inc r8
xor r9, rax
imul r9, rdi
cmp r8, r11
jb 0x14025db90
mov rdi, qword [rsp + 0x40]
mov r8, rdx
lea rdx, [rsp + 0x20]
call fcn.14025cb00
cmp qword [rax + 8], rbx
setne bl
mov rax, rbx
add rsp, 0x30
pop rbx
ret
Function at 0x14025dbd0
Capabilities:
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, 0x40
mov rbx, r8
mov rsi, rdx
mov rbp, rcx
xor r9d, r9d
mov r10, qword [r8 + 8]
mov rdx, qword [r8 + 0x10]
add rdx, r10
cmp r10, rdx
jae 0x14025dc23
nop word [rax + rax]
lea r9, [r9 + r9*4]
movsx rax, byte [r10]
add r9, rax
inc r10
cmp r10, rdx
jb 0x14025dc10
imul r14, qword [r8], 0x1000193
xor r14, r9
mov r9, r14
lea rdx, [rsp + 0x20]
call fcn.14025ca10
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x14025dc50
mov qword [rsi], rax
mov byte [rsi + 8], 0
jmp 0x14025ddee
movabs rax, 0x555555555555555
cmp qword [rbp + 0x10], rax
je 0x14025de10
lea r12, [rbp + 8]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], 0
mov ecx, 0x30
call fcn.14001f68c
mov rdi, rax
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rbx]
movups xmmword [rax + 0x10], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x20], xmm1
mov r9, qword [rbp + 0x10]
lea rcx, [r9 + 1]
movss xmm3, dword [rbp]
xorps xmm0, xmm0
test rcx, rcx
js 0x14025dcb3
cvtsi2ss xmm0, rcx
jmp 0x14025dcc8
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [rbp + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x14025dcdb
cvtsi2ss xmm2, rbx
jmp 0x14025dcf3
mov rcx, rbx
shr rcx, 1
mov rax, rbx
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x14025dd93
divss xmm0, xmm3
call fcn.1402c0c4c
xor ecx, ecx
movss xmm1, dword [0x1403313a4]
comiss xmm0, xmm1
jb 0x14025dd36
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x14025dd36
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x14025dd68
cmp rbx, 0x200
jae 0x14025dd65
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x14025dd68
mov rbx, rcx
mov rdx, rbx
mov rcx, rbp
call fcn.140286d10
mov r9, r14
lea r8, [rdi + 0x10]
lea rdx, [rsp + 0x30]
mov rcx, rbp
call fcn.14025ca10
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
mov r9, qword [rbp + 0x10]
mov rdx, qword [rsp + 0x20]
mov r8, qword [rdx + 8]
lea rax, [r9 + 1]
mov qword [rbp + 0x10], rax
mov qword [rdi], rdx
mov qword [rdi + 8], r8
mov qword [r8], rdi
mov qword [rdx + 8], rdi
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x30]
and rax, r14
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [r12]
jne 0x14025ddd0
mov qword [rcx + rax*8], rdi
jmp 0x14025dde2
cmp r9, rdx
jne 0x14025dddb
mov qword [rcx + rax*8], rdi
jmp 0x14025dde7
cmp qword [rcx + rax*8 + 8], r8
jne 0x14025dde7
mov qword [rcx + rax*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
mov rax, rsi
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop r12
ret
lea rcx, str.unordered_map_set_too_long
call fcn.1401ad6c8
int3
Function at 0x14025e2f0
Capabilities:
Hash data using fnv

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x60
mov rbx, r8
mov rsi, rdx
mov rbp, rcx
mov rax, qword [r8]
mov qword [r11 + 0x18], rax
lea rdx, [r11 - 0x48]
lea rcx, [r11 + 0x18]
call fcn.140289120
mov rdx, rax
xor r10d, r10d
mov r11, qword [rax + 8]
mov rcx, qword [rax + 0x10]
add rcx, r11
cmp r11, rcx
jae 0x14025e353
nop word [rax + rax]
lea r10, [r10 + r10*4]
movsx rax, byte [r11]
add r10, rax
inc r11
cmp r11, rcx
jb 0x14025e340
imul r14, qword [rdx], 0x1000193
xor r14, r10
mov r9, r14
mov r8, rbx
lea rdx, [rsp + 0x20]
mov rcx, rbp
call fcn.14025cdc0
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x14025e386
mov qword [rsi], rax
mov byte [rsi + 8], 0
jmp 0x14025e51c
movabs rax, 0xaaaaaaaaaaaaaaa
cmp qword [rbp + 0x10], rax
je 0x14025e538
lea r12, [rbp + 8]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], 0
mov ecx, 0x18
call fcn.14001f68c
mov rdi, rax
mov qword [rsp + 0x38], rax
mov rcx, qword [rbx]
mov qword [rax + 0x10], rcx
mov r9, qword [rbp + 0x10]
lea rcx, [r9 + 1]
movss xmm3, dword [rbp]
xorps xmm0, xmm0
test rcx, rcx
js 0x14025e3e1
cvtsi2ss xmm0, rcx
jmp 0x14025e3f6
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [rbp + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x14025e409
cvtsi2ss xmm2, rbx
jmp 0x14025e421
mov rcx, rbx
shr rcx, 1
mov rax, rbx
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x14025e4c1
divss xmm0, xmm3
call fcn.1402c0c4c
xor ecx, ecx
movss xmm1, dword [0x1403313a4]
comiss xmm0, xmm1
jb 0x14025e464
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x14025e464
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x14025e496
cmp rbx, 0x200
jae 0x14025e493
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x14025e496
mov rbx, rcx
mov rdx, rbx
mov rcx, rbp
call fcn.140287990
mov r9, r14
lea r8, [rdi + 0x10]
lea rdx, [rsp + 0x20]
mov rcx, rbp
call fcn.14025cdc0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
mov r9, qword [rbp + 0x10]
mov rdx, qword [rsp + 0x20]
mov r8, qword [rdx + 8]
lea rax, [r9 + 1]
mov qword [rbp + 0x10], rax
mov qword [rdi], rdx
mov qword [rdi + 8], r8
mov qword [r8], rdi
mov qword [rdx + 8], rdi
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x30]
and rax, r14
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [r12]
jne 0x14025e4fe
mov qword [rcx + rax*8], rdi
jmp 0x14025e510
cmp r9, rdx
jne 0x14025e509
mov qword [rcx + rax*8], rdi
jmp 0x14025e515
cmp qword [rcx + rax*8 + 8], r8
jne 0x14025e515
mov qword [rcx + rax*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
mov rax, rsi
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
lea rcx, str.unordered_map_set_too_long
call fcn.1401ad6c8
int3
Function at 0x14025e7f0
Capabilities:
Hash data using fnv

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x50
mov rbx, r8
mov rsi, rdx
mov rbp, rcx
mov rax, qword [r8]
mov qword [r11 + 0x18], rax
lea rdx, [r11 - 0x38]
lea rcx, [r11 + 0x18]
call fcn.140289410
movsxd r9, dword [rax + 8]
imul r15, r9, 0x1000193
imul rax, qword [rax], 0x100011b
xor r15, rax
mov r9, r15
mov r8, rbx
lea rdx, [rsp + 0x20]
mov rcx, rbp
call fcn.14025cbd0
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x14025e862
mov qword [rsi], rax
mov byte [rsi + 8], 0
jmp 0x14025e9f8
movabs rax, 0xaaaaaaaaaaaaaaa
cmp qword [rbp + 0x10], rax
je 0x14025ea14
lea r12, [rbp + 8]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], 0
mov ecx, 0x18
call fcn.14001f68c
mov rdi, rax
mov qword [rsp + 0x38], rax
mov rcx, qword [rbx]
mov qword [rax + 0x10], rcx
mov r9, qword [rbp + 0x10]
lea rcx, [r9 + 1]
movss xmm3, dword [rbp]
xorps xmm0, xmm0
test rcx, rcx
js 0x14025e8bd
cvtsi2ss xmm0, rcx
jmp 0x14025e8d2
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rbx, qword [rbp + 0x38]
xorps xmm2, xmm2
test rbx, rbx
js 0x14025e8e5
cvtsi2ss xmm2, rbx
jmp 0x14025e8fd
mov rcx, rbx
shr rcx, 1
mov rax, rbx
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm1, xmm0
divss xmm1, xmm2
comiss xmm1, xmm3
seta al
test al, al
je 0x14025e99d
divss xmm0, xmm3
call fcn.1402c0c4c
xor ecx, ecx
movss xmm1, dword [0x1403313a4]
comiss xmm0, xmm1
jb 0x14025e940
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x14025e940
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x14025e972
cmp rbx, 0x200
jae 0x14025e96f
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x14025e972
mov rbx, rcx
mov rdx, rbx
mov rcx, rbp
call fcn.140287480
mov r9, r15
lea r8, [rdi + 0x10]
lea rdx, [rsp + 0x20]
mov rcx, rbp
call fcn.14025cbd0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
mov r9, qword [rbp + 0x10]
mov rdx, qword [rsp + 0x20]
mov r8, qword [rdx + 8]
lea rax, [r9 + 1]
mov qword [rbp + 0x10], rax
mov qword [rdi], rdx
mov qword [rdi + 8], r8
mov qword [r8], rdi
mov qword [rdx + 8], rdi
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x30]
and rax, r15
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [r12]
jne 0x14025e9da
mov qword [rcx + rax*8], rdi
jmp 0x14025e9ec
cmp r9, rdx
jne 0x14025e9e5
mov qword [rcx + rax*8], rdi
jmp 0x14025e9f1
cmp qword [rcx + rax*8 + 8], r8
jne 0x14025e9f1
mov qword [rcx + rax*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
mov rax, rsi
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
lea rcx, str.unordered_map_set_too_long
call fcn.1401ad6c8
int3
Function at 0x140277380
Capabilities:
Hash data using fnv

Disassembly:
push rbp
sub rsp, 0x90
mov rbp, rcx
mov rcx, qword [rdx + 0x28]
movsxd r10, dword [rcx + 4]
cmp r10d, r8d
jg 0x1402773bf
movsx r9, word [rdx + 2]
add r9, r10
movsxd rax, r8d
cmp rax, r9
jg 0x1402773bf
sub r8d, r10d
movsxd rax, r8d
shl rax, 5
add rax, rcx
add rsp, 0x90
pop rbp
ret
mov qword [rsp + 0xa0], rbx
lea rax, [rsp + 0x50]
xorps xmm0, xmm0
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x88], rsi
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0xa8]
mov qword [rsp + 0x80], rdi
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0xa8], rax
mov dword [rsp + 0x70], r8d
mov byte [rsp + 0x50], 0xa
call fcn.140289410
movsxd rcx, dword [rax + 8]
imul rax, qword [rax], 0x100011b
imul rsi, rcx, 0x1000193
xor rsi, rax
mov rax, qword [rbp + 0x128]
and rsi, qword [rbp + 0x150]
shl rsi, 4
add rsi, qword [rbp + 0x138]
mov rbx, qword [rsi + 8]
cmp rbx, rax
je 0x1402774b3
mov rsi, qword [rsi]
lea rax, [rsp + 0x50]
mov qword [rsp + 0xb8], rax
mov rax, qword [rbx + 0x10]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa8]
mov qword [rsp + 0xa8], rax
call fcn.140289410
lea rdx, [rsp + 0x40]
mov rdi, rax
lea rcx, [rsp + 0xb8]
call fcn.140289410
mov rcx, qword [rdi]
cmp qword [rax], rcx
jne 0x140277498
mov ecx, dword [rdi + 8]
cmp dword [rax + 8], ecx
je 0x1402774a3
cmp rbx, rsi
je 0x1402774ac
mov rbx, qword [rbx + 8]
jmp 0x140277455
mov rax, qword [rbp + 0x128]
jmp 0x1402774b6
mov rax, qword [rbp + 0x128]
mov rbx, rax
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x88]
cmp rbx, rax
je 0x1402774f5
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x1402774f5
movzx ecx, byte [rax]
cmp cl, 5
je 0x1402774f7
cmp cl, 6
jne 0x1402774f5
mov rbx, qword [rsp + 0xa0]
dec rax
add rsp, 0x90
pop rbp
ret
xor eax, eax
mov rbx, qword [rsp + 0xa0]
add rsp, 0x90
pop rbp
ret
Function at 0x140277ef0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
mov r14, r8
mov r13, rdx
mov rbp, rcx
lea r12, [rcx + 0x88]
xor r9d, r9d
lea r8, [rsp + 0xa0]
xor edx, edx
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_InitOnceBeginInitialize]
test eax, eax
je 0x140278122
xor r15d, r15d
cmp dword [rsp + 0xa0], r15d
je 0x14027803d
mov qword [rsp + 0x20], r12
mov dword [rsp + 0x28], 4
mov r14, qword [rbp + 8]
mov rdi, qword [r14]
cmp rdi, r14
je 0x14027801f
nop word [rax + rax]
mov rbx, qword [rdi + 0x10]
test rbx, rbx
je 0x140278010
cmp byte [rbx], 2
jne 0x140278010
movzx esi, byte [rbx + 3]
and esi, 3
shl rsi, 5
add rsi, qword [rbx + 8]
cmp qword [rsi + 0x18], 0x10
jb 0x140277f9f
mov rsi, qword [rsi]
test byte [rbx + 1], 8
je 0x140277fc5
mov rcx, rbx
call fcn.1402480c0
test rax, rax
jne 0x140277fb8
mov rcx, qword [rbx + 0x10]
jmp 0x140277fc9
mov rcx, rbx
call fcn.1402480c0
mov rcx, rax
jmp 0x140277fc9
mov rcx, qword [rbx + 0x20]
mov rax, r15
test rsi, rsi
je 0x140277fe9
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rsi + rax], 0
jne 0x140277fe0
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rbx
lea rcx, [rbp + 0x40]
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x30]
call fcn.14025dbd0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, r14
jne 0x140277f70
xor r8d, r8d
xor edx, edx
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_InitOnceComplete]
test eax, eax
je 0x140278122
mov r14, qword [rsp + 0xb0]
movups xmm1, xmmword [r14]
mov rdx, r15
movdqa xmm0, xmm1
psrldq xmm0, 8
movq r8, xmm0
movq rcx, xmm1
add r8, rcx
cmp rcx, r8
jae 0x140278073
nop
lea rdx, [rdx + rdx*4]
movsx rax, byte [rcx]
add rdx, rax
inc rcx
cmp rcx, r8
jb 0x140278060
imul rcx, r13, 0x1000193
xor rcx, rdx
and rcx, qword [rbp + 0x70]
add rcx, rcx
mov rax, qword [rbp + 0x58]
mov rbx, qword [rax + rcx*8 + 8]
mov rsi, qword [rbp + 0x48]
cmp rbx, rsi
je 0x140278107
mov rdi, qword [rax + rcx*8]
nop word [rax + rax]
cmp r13, qword [rbx + 0x10]
jne 0x1402780ee
movups xmm1, xmmword [rbx + 0x18]
movaps xmmword [rsp + 0x30], xmm1
movups xmm0, xmmword [r14]
movaps xmmword [rsp + 0x20], xmm0
psrldq xmm0, 8
movq r8, xmm0
psrldq xmm1, 8
movq rax, xmm1
cmp r8, rax
jne 0x1402780ee
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x30]
cmp rcx, rdx
je 0x1402780f9
test r8, r8
je 0x1402780f9
call fcn.1401af2e0
test eax, eax
je 0x1402780f9
cmp rbx, rdi
je 0x140278107
mov rbx, qword [rbx + 8]
jmp 0x1402780a0
test rbx, rbx
je 0x140278107
cmp rbx, rsi
je 0x140278107
mov r15, qword [rbx + 0x28]
mov rax, r15
mov rbx, qword [rsp + 0xa8]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1401d00d0
int3
Function at 0x140278130
Capabilities:
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x70
cmp qword [rdx + 0x18], 0x10
mov rax, rdx
jb 0x140278143
mov rax, qword [rdx]
mov qword [rsp + 0x20], rax
mov rax, qword [rdx + 0x10]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x48]
movups xmm0, xmmword [rsp + 0x20]
mov qword [rsp + 0x88], rax
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x60], rcx
lea rcx, [rsp + 0x80]
movups xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x48], 0xa
mov rbx, qword [rax + 0x80]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x80], rax
call fcn.140289120
xor ecx, ecx
mov r10, rax
mov r8, qword [rax + 8]
mov r9, qword [rax + 0x10]
add r9, r8
cmp r8, r9
jae 0x1402781c4
movsx rax, byte [r8]
lea rcx, [rcx + rcx*4]
add rcx, rax
inc r8
cmp r8, r9
jb 0x1402781b1
imul r9, qword [r10], 0x1000193
lea r8, [rsp + 0x88]
xor r9, rcx
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.14025cdc0
mov rax, qword [rax + 8]
test rax, rax
je 0x1402781f8
cmp rax, qword [rbx + 8]
je 0x1402781f8
add rax, 0x10
jmp 0x1402781ff
lea rax, [0x14039eb20]
mov rax, qword [rax]
test rax, rax
je 0x140278212
cmp byte [rax], 2
jne 0x140278212
test byte [rax + 1], 8
je 0x140278214
xor eax, eax
add rsp, 0x70
pop rbx
ret

Function at 0x140278250
Capabilities:
Hash data using fnv

Disassembly:
push rbp
sub rsp, 0x90
mov rbp, rcx
test rdx, rdx
je 0x14027828c
cmp r8d, 1
jl 0x14027828c
movzx eax, word [rdx + 2]
cmp r8d, eax
jg 0x14027828c
movsxd rax, r8d
lea rcx, [rax + rax*8]
mov rax, qword [rdx + 0x28]
lea rax, [rax + rcx*8]
add rax, 0xffffffffffffffb8
add rsp, 0x90
pop rbp
ret
mov qword [rsp + 0xa0], rbx
lea rax, [rsp + 0x50]
xorps xmm0, xmm0
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x88], rsi
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0xa8]
mov qword [rsp + 0x80], rdi
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0xa8], rax
mov dword [rsp + 0x70], r8d
mov byte [rsp + 0x50], 0xa
call fcn.140289410
movsxd rcx, dword [rax + 8]
imul rax, qword [rax], 0x100011b
imul rsi, rcx, 0x1000193
xor rsi, rax
mov rax, qword [rbp + 0xe8]
and rsi, qword [rbp + 0x110]
shl rsi, 4
add rsi, qword [rbp + 0xf8]
mov rbx, qword [rsi + 8]
cmp rbx, rax
je 0x140278380
mov rsi, qword [rsi]
lea rax, [rsp + 0x50]
mov qword [rsp + 0xb8], rax
mov rax, qword [rbx + 0x10]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa8]
mov qword [rsp + 0xa8], rax
call fcn.140289410
lea rdx, [rsp + 0x40]
mov rdi, rax
lea rcx, [rsp + 0xb8]
call fcn.140289410
mov rcx, qword [rdi]
cmp qword [rax], rcx
jne 0x140278365
mov ecx, dword [rdi + 8]
cmp dword [rax + 8], ecx
je 0x140278370
cmp rbx, rsi
je 0x140278379
mov rbx, qword [rbx + 8]
jmp 0x140278322
mov rax, qword [rbp + 0xe8]
jmp 0x140278383
mov rax, qword [rbp + 0xe8]
mov rbx, rax
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x88]
cmp rbx, rax
je 0x1402783a6
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x1402783a6
cmp byte [rax], 2
je 0x1402783a8
xor eax, eax
mov rbx, qword [rsp + 0xa0]
add rsp, 0x90
pop rbp
ret
Function at 0x140278680
Capabilities:
Hash data using fnv

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], rbx
push rdi
sub rsp, 0x70
movups xmm0, xmmword [r9]
lea rax, [r11 - 0x30]
mov rbx, rdx
mov qword [r11 + 0x10], rax
lea rdx, [r11 - 0x48]
movups xmmword [rsp + 0x50], xmm0
mov rdi, rcx
mov qword [r11 - 0x18], r8
lea rax, [r11 - 0x30]
mov byte [rsp + 0x48], 0xa
lea rcx, [r11 + 8]
mov qword [r11 + 8], rax
call fcn.140289120
xor ecx, ecx
mov r8, qword [rax + 8]
mov r9, qword [rax + 0x10]
add r9, r8
cmp r8, r9
jae 0x1402786f3
nop dword [rax]
nop word [rax + rax]
movsx rdx, byte [r8]
lea rcx, [rcx + rcx*4]
add rcx, rdx
inc r8
cmp r8, r9
jb 0x1402786e0
imul r9, qword [rax], 0x1000193
lea r8, [rsp + 0x88]
xor r9, rcx
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.14025cdc0
mov rax, qword [rax + 8]
test rax, rax
je 0x140278727
cmp rax, qword [rdi + 8]
je 0x140278727
add rax, 0x10
jmp 0x14027872e
lea rax, [0x14039eb20]
mov rax, qword [rax]
mov qword [rbx], rax
mov rax, rbx
mov rbx, qword [rsp + 0x90]
add rsp, 0x70
pop rdi
ret

Function at 0x140278ce0
Capabilities:
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x70
cmp qword [rdx + 0x18], 0x10
mov rax, rdx
jb 0x140278cf3
mov rax, qword [rdx]
mov qword [rsp + 0x20], rax
mov rax, qword [rdx + 0x10]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x48]
movups xmm0, xmmword [rsp + 0x20]
mov qword [rsp + 0x88], rax
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x60], rcx
lea rcx, [rsp + 0x80]
movups xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x48], 0xa
mov rbx, qword [rax + 0x80]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x80], rax
call fcn.140289120
xor ecx, ecx
mov r10, rax
mov r8, qword [rax + 8]
mov r9, qword [rax + 0x10]
add r9, r8
cmp r8, r9
jae 0x140278d74
movsx rax, byte [r8]
lea rcx, [rcx + rcx*4]
add rcx, rax
inc r8
cmp r8, r9
jb 0x140278d61
imul r9, qword [r10], 0x1000193
lea r8, [rsp + 0x88]
xor r9, rcx
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.14025cdc0
mov rax, qword [rax + 8]
test rax, rax
je 0x140278da8
cmp rax, qword [rbx + 8]
je 0x140278da8
add rax, 0x10
jmp 0x140278daf
lea rax, [0x14039eb20]
mov rax, qword [rax]
test rax, rax
je 0x140278dcd
movzx ecx, byte [rax]
cmp cl, 5
je 0x140278dcf
cmp cl, 6
jne 0x140278dcd
dec rax
add rsp, 0x70
pop rbx
ret
xor eax, eax
add rsp, 0x70
pop rbx
ret

Function at 0x140278de0
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rcx
mov r8d, edx
mov rcx, qword [rcx + 0x10]
mov rdx, rax
mov rcx, qword [rcx + 0x80]
jmp fcn.140277380