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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x30]
mov qword [rbp], 0xfffffffffffffffe
mov rbx, r8
mov rsi, rdx
mov rdi, rcx
movzx eax, byte [r8]
movabs rcx, 0xcbf29ce484222325
xor rcx, rax
movabs rax, 0x100000001b3
imul rcx, rax
movzx edx, byte [r8 + 1]
xor rdx, rcx
imul rdx, rax
movzx ecx, byte [r8 + 2]
xor rcx, rdx
imul rcx, rax
movzx r14d, byte [r8 + 3]
xor r14, rcx
imul r14, rax
mov rcx, qword [rdi + 0x30]
and rcx, r14
mov rdx, qword [rdi + 0x18]
mov rax, rcx
shl rax, 4
mov r13, qword [rdx + rax + 8]
cmp r13, qword [rdi + 8]
je 0x140017bc6
mov eax, dword [rbx]
cmp eax, dword [r13 + 0x10]
je 0x140017bbf
add rcx, rcx
mov r15, qword [rdx + rcx*8]
nop word cs:[rax + rax]
cmp r13, r15
je 0x140017bc9
mov r13, qword [r13 + 8]
cmp eax, dword [r13 + 0x10]
jne 0x140017bb0
xor eax, eax
jmp 0x140017d62
mov r15, r13
movabs rax, 0xaaaaaaaaaaaaaaa
cmp qword [rdi + 0x10], rax
je 0x140017d7c
mov ecx, 0x18
call fcn.1400b605c
mov r13, rax
mov r12d, dword [rbx]
mov dword [rax + 0x10], r12d
mov dword [rax + 0x14], 0
mov rax, qword [rdi + 0x10]
inc rax
js 0x140017c08
cvtsi2ss xmm0, rax
jmp 0x140017c1d
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
movss xmm1, dword [rdi]
mov rbx, qword [rdi + 0x38]
test rbx, rbx
js 0x140017c31
cvtsi2ss xmm2, rbx
jmp 0x140017c48
mov rax, rbx
shr rax, 1
mov ecx, ebx
and ecx, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm3, xmm0
divss xmm3, xmm2
ucomiss xmm3, xmm1
jbe 0x140017d0d
divss xmm0, xmm1
call fcn.140139444
cvttss2si rax, xmm0
mov rcx, rax
subss xmm0, dword [0x14015cc44]
cvttss2si rdx, xmm0
sar rcx, 0x3f
and rdx, rcx
or rdx, rax
cmp rdx, 9
mov eax, 8
cmovae rax, rdx
cmp rbx, rax
mov qword [rbp - 8], r13
jae 0x140017cb3
lea rcx, [rbx*8]
cmp rcx, rax
cmovb rcx, rax
cmp rbx, 0x200
cmovae rcx, rax
mov rbx, rcx
mov rcx, rdi
mov rdx, rbx
call fcn.140017e80
mov rax, qword [rdi + 0x30]
and rax, r14
mov rcx, qword [rdi + 0x18]
mov rdx, rax
shl rdx, 4
mov r15, qword [rcx + rdx + 8]
cmp r15, qword [rdi + 8]
je 0x140017d04
cmp r12d, dword [r15 + 0x10]
mov r13, qword [rbp - 8]
je 0x140017cff
add rax, rax
mov rax, qword [rcx + rax*8]
nop dword [rax]
cmp r15, rax
je 0x140017d0a
mov r15, qword [r15 + 8]
cmp r12d, dword [r15 + 0x10]
jne 0x140017cf0
mov r15, qword [r15]
jmp 0x140017d0d
mov r13, qword [rbp - 8]
jmp 0x140017d0d
mov r15, rax
mov rcx, qword [r15 + 8]
inc qword [rdi + 0x10]
mov qword [r13], r15
mov qword [r13 + 8], rcx
mov qword [rcx], r13
mov qword [r15 + 8], r13
mov rax, qword [rdi + 0x18]
and r14, qword [rdi + 0x30]
shl r14, 4
lea rdx, [rax + r14]
lea r8, [rax + r14]
add r8, 8
mov rax, qword [rax + r14]
cmp rax, qword [rdi + 8]
je 0x140017d57
cmp rax, r15
je 0x140017d5d
mov al, 1
mov rdx, r8
cmp qword [r8], rcx
jne 0x140017d62
jmp 0x140017d5d
mov qword [rdx], r13
mov rdx, r8
mov qword [rdx], r13
mov al, 1
mov qword [rsi], r13
mov byte [rsi + 8], al
mov rax, rsi
add rsp, 0x38
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, str.unordered_map_set_too_long
call fcn.1400b6fc4
int3
Function at 0x140017e80
Capabilities:
Hash data using fnv

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
movabs rax, 0x800000000000001
cmp rdx, rax
jae 0x14001802f
mov rsi, rcx
dec rdx
or rdx, 1
bsr rcx, rdx
xor ecx, 0x3f
neg cl
mov ebx, 1
shl rbx, cl
lea rax, [rsi + 0x18]
mov rdi, qword [rsi + 8]
mov edx, 2
shl rdx, cl
mov rcx, rax
mov r8, rdi
call fcn.140016f00
lea rax, [rbx - 1]
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x38], rbx
mov rax, qword [rsi + 8]
mov rax, qword [rax]
cmp rax, rdi
je 0x140018022
movabs rcx, 0xcbf29ce484222325
movabs rdx, 0x100000001b3
jmp 0x140017f21
mov qword [r9 + r10*8], r8
mov qword [r9 + rbx*8], r8
cmp rax, rdi
je 0x140018022
mov r8, rax
mov rax, qword [rax]
movzx r9d, byte [r8 + 0x10]
xor r9, rcx
imul r9, rdx
movzx r10d, byte [r8 + 0x11]
xor r10, r9
imul r10, rdx
movzx r9d, byte [r8 + 0x12]
xor r9, r10
imul r9, rdx
movzx r11d, byte [r8 + 0x13]
xor r11, r9
imul r11, rdx
and r11, qword [rsi + 0x30]
mov r9, qword [rsi + 0x18]
lea r10, [r11 + r11]
lea rbx, [r11*2 + 1]
shl r11, 4
mov r11, qword [r9 + r11]
cmp r11, rdi
je 0x140017f10
mov r14, qword [r9 + rbx*8]
mov ebp, dword [r8 + 0x10]
cmp ebp, dword [r14 + 0x10]
jne 0x140017fc0
mov r10, qword [r14]
cmp r10, r8
je 0x140017f14
mov r11, qword [r8 + 8]
mov qword [r11], rax
mov r14, qword [rax + 8]
mov qword [r14], r10
mov r15, qword [r10 + 8]
mov qword [r15], r8
mov qword [r10 + 8], r14
mov qword [rax + 8], r11
mov qword [r8 + 8], r15
jmp 0x140017f14
cmp r11, r14
je 0x140017ff8
mov r14, qword [r14 + 8]
cmp ebp, dword [r14 + 0x10]
jne 0x140017fc0
mov r9, qword [r14]
mov r10, qword [r8 + 8]
mov qword [r10], rax
mov r11, qword [rax + 8]
mov qword [r11], r9
mov rbx, qword [r9 + 8]
mov qword [rbx], r8
mov qword [r9 + 8], r11
mov qword [rax + 8], r10
mov qword [r8 + 8], rbx
jmp 0x140017f18
mov rbx, qword [r8 + 8]
mov qword [rbx], rax
mov r14, qword [rax + 8]
mov qword [r14], r11
mov r15, qword [r11 + 8]
mov qword [r15], r8
mov qword [r11 + 8], r14
mov qword [rax + 8], rbx
mov qword [r8 + 8], r15
mov qword [r9 + r10*8], r8
jmp 0x140017f18
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.1400b6fc4
int3
Function at 0x14001a070
Capabilities:
Hash data using fnv

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
movabs rax, 0x800000000000001
cmp rdx, rax
jae 0x14001a21f
mov rsi, rcx
dec rdx
or rdx, 1
bsr rcx, rdx
xor ecx, 0x3f
neg cl
mov ebx, 1
shl rbx, cl
lea rax, [rsi + 0x18]
mov rdi, qword [rsi + 8]
mov edx, 2
shl rdx, cl
mov rcx, rax
mov r8, rdi
call fcn.140016f00
lea rax, [rbx - 1]
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x38], rbx
mov rax, qword [rsi + 8]
mov rax, qword [rax]
cmp rax, rdi
je 0x14001a212
movabs rcx, 0x100000001b3
movabs rdx, 0xcbf29ce484222325
jmp 0x14001a111
mov qword [r9 + r10*8], r8
mov qword [r9 + rbx*8], r8
cmp rax, rdi
je 0x14001a212
mov r8, rax
mov rax, qword [rax]
movzx r9d, byte [r8 + 0x10]
xor r9, rdx
imul r9, rcx
movzx r10d, byte [r8 + 0x11]
xor r10, r9
imul r10, rcx
movzx r9d, byte [r8 + 0x12]
xor r9, r10
imul r9, rcx
movzx r11d, byte [r8 + 0x13]
xor r11, r9
imul r11, rcx
and r11, qword [rsi + 0x30]
mov r9, qword [rsi + 0x18]
lea r10, [r11 + r11]
lea rbx, [r11*2 + 1]
shl r11, 4
mov r11, qword [r9 + r11]
cmp r11, rdi
je 0x14001a100
mov r14, qword [r9 + rbx*8]
mov ebp, dword [r8 + 0x10]
cmp ebp, dword [r14 + 0x10]
jne 0x14001a1b0
mov r10, qword [r14]
cmp r10, r8
je 0x14001a104
mov r11, qword [r8 + 8]
mov qword [r11], rax
mov r14, qword [rax + 8]
mov qword [r14], r10
mov r15, qword [r10 + 8]
mov qword [r15], r8
mov qword [r10 + 8], r14
mov qword [rax + 8], r11
mov qword [r8 + 8], r15
jmp 0x14001a104
cmp r11, r14
je 0x14001a1e8
mov r14, qword [r14 + 8]
cmp ebp, dword [r14 + 0x10]
jne 0x14001a1b0
mov r9, qword [r14]
mov r10, qword [r8 + 8]
mov qword [r10], rax
mov r11, qword [rax + 8]
mov qword [r11], r9
mov rbx, qword [r9 + 8]
mov qword [rbx], r8
mov qword [r9 + 8], r11
mov qword [rax + 8], r10
mov qword [r8 + 8], rbx
jmp 0x14001a108
mov rbx, qword [r8 + 8]
mov qword [rbx], rax
mov r14, qword [rax + 8]
mov qword [r14], r11
mov r15, qword [r11 + 8]
mov qword [r15], r8
mov qword [r11 + 8], r14
mov qword [rax + 8], rbx
mov qword [r8 + 8], r15
mov qword [r9 + r10*8], r8
jmp 0x14001a108
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.1400b6fc4
int3
Function at 0x14002b2a0
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x20
test r8, r8
jle 0x14002b336
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
cmp qword [rcx + 0x68], 0
je 0x14002b33d
mov r15, rsi
jmp 0x14002b2fb
cmp r15, r14
cmovb r14, r15
mov rcx, rdi
mov r8, r14
call fcn.140159580
add rdi, r14
sub r15, r14
mov rax, qword [rbx + 0x50]
sub dword [rax], r14d
mov rax, qword [rbx + 0x38]
add qword [rax], r14
test r15, r15
jle 0x14002b32e
mov rax, qword [rbx + 0x38]
mov rdx, qword [rax]
test rdx, rdx
je 0x14002b313
mov rax, qword [rbx + 0x50]
mov r14d, dword [rax]
test r14d, r14d
jg 0x14002b2d0
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x38]
cmp eax, 0xffffffff
je 0x14002b32e
mov byte [rdi], al
inc rdi
dec r15
test r15, r15
jg 0x14002b2fb
sub rsi, r15
jmp 0x14002b42a
xor esi, esi
jmp 0x14002b42a
mov rax, qword [rbx + 0x38]
mov rdx, qword [rax]
test rdx, rdx
je 0x14002b390
mov rax, qword [rbx + 0x50]
movsxd r15, dword [rax]
test r15, r15
je 0x14002b390
cmp r15, rsi
cmovae r15, rsi
mov rcx, rdi
mov r8, r15
call fcn.140159580
add rdi, r15
mov r14, rsi
sub r14, r15
mov rax, qword [rbx + 0x50]
sub dword [rax], r15d
mov rax, qword [rbx + 0x38]
movsxd rcx, r15d
add qword [rax], rcx
cmp qword [rbx + 0x80], 0
jne 0x14002b3a1
jmp 0x14002b427
mov r14, rsi
cmp qword [rbx + 0x80], 0
je 0x14002b427
mov rax, qword [rbx + 0x18]
lea rcx, [rbx + 0x70]
cmp qword [rax], rcx
jne 0x14002b3d0
mov ecx, dword [rbx + 0x90]
mov rdx, qword [rbx + 0x88]
mov qword [rax], rdx
mov rax, qword [rbx + 0x38]
mov qword [rax], rdx
sub ecx, edx
mov rax, qword [rbx + 0x50]
mov dword [rax], ecx
nop dword [rax]
cmp r14, 0x1000
jb 0x14002b403
mov r9, qword [rbx + 0x80]
mov edx, 1
mov r8d, 0xfff
mov rcx, rdi
call fcn.14013a614
add rdi, rax
sub r14, rax
cmp rax, 0xfff
je 0x14002b3d0
jmp 0x14002b427
test r14, r14
je 0x14002b424
mov r9, qword [rbx + 0x80]
mov edx, 1
mov rcx, rdi
mov r8, r14
call fcn.14013a614
sub r14, rax
jmp 0x14002b427
xor r14d, r14d
sub rsi, r14
mov rax, rsi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret

Function at 0x14002c7d0
Capabilities:
Hash data using fnv

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x40
call fcn.140066550
mov rsi, rax
mov rbx, qword [0x140286ad0]
mov edx, dword [rbx + 0x48]
cmp edx, 0xffffffff
je 0x14002c839
cmp dword [rsi + 0x6b4], edx
je 0x14002c839
lea rdi, [0x140286ad8]
mov rcx, rdi
call fcn.140044f90
mov eax, dword [rbx + 0x48]
mov dword [rsi + 0x6b4], eax
mov dword [rsi + 0x6b8], 0
lea rdx, [rsi + 0xd0]
lea rcx, [rsi + 0x3a0]
mov r8d, 0x2d0
call fcn.140159580
mov rcx, rdi
call fcn.140045750
movss xmm0, dword [0x14015b014]
ucomiss xmm0, dword [rsi + 0x6b8]
jbe 0x14002c89f
add rsi, 0x6b8
mov byte [rsp + 0x30], 1
mov dword [rsp + 0x28], 0x3c23d70a
mov dword [rsp + 0x20], 0x3f800000
movss xmm1, dword [0x14015b014]
movss xmm2, dword [0x14015b5e0]
xorps xmm3, xmm3
mov rcx, rsi
call fcn.1400630f0
lea rcx, [0x140286ad8]
mov edx, 0xffffffff
xor r8d, r8d
xor r9d, r9d
add rsp, 0x40
pop rbx
pop rdi
pop rsi
jmp fcn.140046800
nop
add rsp, 0x40
pop rbx
pop rdi
pop rsi
ret
Function at 0x140046800
Capabilities:
Hash data using fnv

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x300
mov edi, r9d
mov rsi, r8
mov ebx, edx
mov r14, rcx
mov rax, qword [0x1401b7cc0]
xor rax, rsp
mov qword [rsp + 0x2f8], rax
test r8, r8
je 0x140046968
cmp ebx, 0xffffffff
jne 0x14004683b
mov ebx, dword [r14]
mov rdx, qword [r14 + 8]
mov rax, qword [r14 + 0x10]
sub rax, rdx
shr rax, 4
imul eax, eax, 0x677d46cf
cmp ebx, eax
jge 0x140046866
movsxd rax, ebx
imul rax, rax, 0x2f0
add rdx, rax
jmp 0x1400468f7
mov eax, ebx
shr eax, 0x18
mov ecx, ebx
shr ecx, 0x10
movzx edx, bl
movabs r8, 0xcbf29ce484222325
xor r8, rdx
movabs rdx, 0x100000001b3
imul r8, rdx
movzx ebp, bh
xor rbp, r8
imul rbp, rdx
movzx ecx, cl
xor rcx, rbp
imul rcx, rdx
xor rcx, rax
imul rcx, rdx
and rcx, qword [r14 + 0x50]
mov rax, qword [r14 + 0x28]
mov r8, qword [r14 + 0x38]
mov rdx, rcx
shl rdx, 4
mov rdx, qword [r8 + rdx + 8]
cmp rdx, rax
je 0x140046949
cmp ebx, dword [rdx + 0x10]
je 0x1400468ee
add rcx, rcx
mov rcx, qword [r8 + rcx*8]
nop word cs:[rax + rax]
cmp rdx, rcx
je 0x140046949
mov rdx, qword [rdx + 8]
cmp ebx, dword [rdx + 0x10]
jne 0x1400468e0
cmp rdx, rax
je 0x140046949
add rdx, 0x18
lea rcx, [rsp + 0x28]
mov r8d, 0x2d0
call fcn.140159580
test dil, dil
je 0x14004697e
add rsi, 0xf0
lea rax, [rsp + 0x48]
xor ecx, ecx
nop word [rax + rax]
movups xmm0, xmmword [rax + rcx - 0x20]
movups xmmword [rsi + rcx - 0x20], xmm0
movups xmm0, xmmword [rax + rcx - 0x10]
movups xmmword [rsi + rcx - 0x10], xmm0
movups xmm0, xmmword [rax + rcx]
movups xmmword [rsi + rcx], xmm0
add rcx, 0x30
cmp rcx, 0x2d0
jne 0x140046920
mov rcx, qword [rsp + 0x2f8]
xor rcx, rsp
call fcn.1400b6210
nop
add rsp, 0x300
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
call fcn.140066550
mov rsi, rax
cmp ebx, 0xffffffff
je 0x140046838
jmp 0x14004683b
xor eax, eax
movups xmm0, xmmword [rsp + rax + 0x28]
movups xmm1, xmmword [rsi + rax + 0x3a0]
subps xmm0, xmm1
movss xmm2, dword [rsi + 0x6b8]
shufps xmm2, xmm2, 0
mulps xmm2, xmm0
addps xmm2, xmm1
movups xmmword [rsi + rax + 0xd0], xmm2
cmp rax, 0x2c0
je 0x140046949
movups xmm0, xmmword [rsp + rax + 0x38]
movups xmm1, xmmword [rsi + rax + 0x3b0]
subps xmm0, xmm1
movss xmm2, dword [rsi + 0x6b8]
shufps xmm2, xmm2, 0
mulps xmm2, xmm0
addps xmm2, xmm1
movups xmmword [rsi + rax + 0xe0], xmm2
add rax, 0x20
jmp 0x140046980
Function at 0x140048ff0
Capabilities:
Parse pe header

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
test rcx, rcx
je 0x14004906a
mov rdi, rcx
movzx eax, word [rcx]
cmp eax, 0x5a4d
jne 0x14004906a
movsxd rax, dword [rdi + 0x3c]
cmp rax, 0x400
jg 0x14004906a
cmp dword [rdi + rax], 0x4550
jne 0x14004906a
mov ecx, dword [rdi + rax + 0x90]
test rcx, rcx
je 0x14004906a
mov edx, dword [rdi + rax + 0x94]
mov al, 1
mov qword [rsp + 0x28], rdx
test rdx, rdx
je 0x14004906c
add rcx, rdi
xor edx, edx
movabs rbp, 0x8000000080000000
mov r12, qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov r15, qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsp + 0x20], rcx
jmp 0x140049099
xor eax, eax
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, qword [rsp + 0x30]
add rdx, 0x14
cmp rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x20]
jae 0x14004912f
mov esi, dword [rcx + rdx]
mov r13d, dword [rcx + rdx + 0x10]
mov eax, r13d
or eax, esi
je 0x14004912f
mov qword [rsp + 0x30], rdx
mov ebx, dword [rdx + rcx + 0xc]
add rbx, rdi
test rsi, rsi
cmove rsi, r13
add r13, rdi
add rsi, rdi
jmp 0x1400490d8
add r13, 8
add rsi, 8
mov rax, qword [rsi]
test rax, rbp
je 0x140049100
movzx r14d, ax
mov rcx, rbx
call r12
mov rcx, rax
mov rdx, r14
call r15
mov qword [r13], rax
test rax, rax
jne 0x14004910d
jmp 0x140049080
mov rax, qword [r13]
test rax, rax
je 0x140049080
cmp rax, qword [rsi]
jne 0x1400490d0
lea r14, [rax + rdi]
add r14, 2
mov rcx, rbx
call r12
mov rcx, rax
mov rdx, r14
call r15
mov qword [r13], rax
jmp 0x1400490d0
mov al, 1
jmp 0x14004906c
Function at 0x14005b250
Capabilities:
Terminate process

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov esi, edx
mov r8d, ecx
mov ecx, 1
xor edx, edx
call qword [sym.imp.KERNEL32.dll_OpenProcess]
test rax, rax
je 0x14005b28a
mov rdi, rax
mov rcx, rax
mov edx, esi
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov esi, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, esi
jmp 0x14005b28c
xor eax, eax
add rsp, 0x28
pop rdi
pop rsi
ret
Function at 0x14005c890
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov ebx, r9d
mov rsi, r8
test r8, r8
je 0x14005c8b0
mov qword [rsi], 0
call fcn.14005c050
test rax, rax
je 0x14005c8e8
mov rdi, rax
mov rcx, rax
call fcn.14013a9d8
cmp eax, 0xffffffff
je 0x14005c8e0
mov ebp, eax
mov rcx, rdi
xor edx, edx
mov r8d, 2
call fcn.140136fa0
test eax, eax
je 0x14005c8fd
mov rcx, rdi
call fcn.1401399d0
xor r14d, r14d
mov rax, r14
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov rcx, rdi
call fcn.14013a9d8
cmp eax, 0xffffffff
je 0x14005c8e0
mov r14d, eax
xor r15d, r15d
mov rcx, rdi
mov edx, ebp
xor r8d, r8d
call fcn.140136fa0
neg eax
sbb r15d, r15d
or r15d, r14d
cmp r15d, 0xffffffff
je 0x14005c8e0
movsxd r15, r15d
movsxd r12, ebx
lea rcx, [r15 + r12]
mov rax, qword [0x140287288]
test rax, rax
je 0x14005c947
inc dword [rax + 0x3c8]
mov rdx, qword [0x140287298]
call qword [0x1401b7d80]
test rax, rax
je 0x14005c8e0
mov r14, rax
mov edx, 1
mov rcx, rax
mov r8, r15
mov r9, rdi
call fcn.14013a614
cmp rax, r15
jne 0x14005c9a1
test ebx, ebx
jle 0x14005c988
mov rcx, r14
add rcx, r15
xor edx, edx
mov r8, r12
call fcn.140159c20
mov rcx, rdi
call fcn.1401399d0
test rsi, rsi
je 0x14005c8eb
mov qword [rsi], r15
jmp 0x14005c8eb
mov rcx, rdi
call fcn.1401399d0
mov rax, qword [0x140287288]
test rax, rax
je 0x14005c9bb
dec dword [rax + 0x3c8]
mov rdx, qword [0x140287298]
mov rcx, r14
call qword [0x1401b7d88]
jmp 0x14005c8e8
Function at 0x140065f30
Capabilities:
Hash data with crc32

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov rax, qword [0x140287288]
mov rdi, qword [rax + 0x1ed0]
mov rsi, qword [rdi + 0xe0]
movsxd rdx, dword [rdi + 0xd8]
mov r8d, dword [rsi + rdx*4 - 4]
not r8d
mov r9d, r8d
shr r9d, 8
xor r8d, ecx
movzx r10d, r8b
lea r8, [0x1401613a0]
xor r9d, dword [r8 + r10*4]
mov r10d, ecx
shr r10d, 8
xor r10d, r9d
shr r9d, 8
movzx r10d, r10b
xor r9d, dword [r8 + r10*4]
mov r10d, ecx
shr r10d, 0x10
xor r10d, r9d
shr r9d, 8
movzx r10d, r10b
xor r9d, dword [r8 + r10*4]
movzx r10d, r9b
shr r9d, 8
mov r11d, ecx
shr r11d, 0x18
xor r11d, r10d
xor r9d, dword [r8 + r11*4]
mov r10, rcx
shr r10, 0x20
xor r10d, r9d
shr r9d, 8
movzx r10d, r10b
xor r9d, dword [r8 + r10*4]
mov r10, rcx
shr r10, 0x28
xor r10d, r9d
mov ebx, r9d
shr ebx, 8
movzx r9d, r10b
xor ebx, dword [r8 + r9*4]
mov r9, rcx
shr r9, 0x30
xor r9d, ebx
shr ebx, 8
movzx r9d, r9b
xor ebx, dword [r8 + r9*4]
movzx r9d, bl
shr rcx, 0x38
xor ecx, r9d
mov ebp, dword [r8 + rcx*4]
cmp edx, dword [rdi + 0xdc]
jne 0x1400660b3
lea r14d, [rdx + 1]
test edx, edx
je 0x14006602c
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sar ecx, 1
add ecx, edx
jmp 0x140066031
mov ecx, 8
cmp ecx, r14d
cmovg r14d, ecx
movsxd rcx, r14d
shl rcx, 2
inc dword [rax + 0x3c8]
mov rdx, qword [0x140287298]
call qword [0x1401b7d80]
mov rsi, rax
mov rdx, qword [rdi + 0xe0]
test rdx, rdx
je 0x14006609f
movsxd r8, dword [rdi + 0xd8]
shl r8, 2
mov rcx, rsi
call fcn.140159580
mov rcx, qword [rdi + 0xe0]
test rcx, rcx
je 0x140066092
mov rax, qword [0x140287288]
test rax, rax
je 0x140066092
dec dword [rax + 0x3c8]
mov rdx, qword [0x140287298]
call qword [0x1401b7d88]
mov qword [rdi + 0xe0], rsi
mov dword [rdi + 0xdc], r14d
mov edx, dword [rdi + 0xd8]
shr ebx, 8
xor ebp, ebx
not ebp
movsxd rax, edx
mov dword [rsi + rax*4], ebp
inc dword [rdi + 0xd8]
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
Function at 0x140066560
Capabilities:
Hash data with crc32

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov rax, qword [0x140287288]
mov rdi, qword [rax + 0x1ed0]
mov r9d, ecx
shr r9d, 8
mov r8d, ecx
shr r8d, 0x10
mov rsi, qword [rdi + 0xe0]
movsxd rdx, dword [rdi + 0xd8]
mov r10d, dword [rsi + rdx*4 - 4]
not r10d
mov r11d, r10d
shr r11d, 8
xor r10d, ecx
movzx r10d, r10b
lea r14, [0x1401613a0]
xor r11d, dword [r14 + r10*4]
mov r10d, r11d
shr r10d, 8
xor r11d, r9d
movzx r9d, r11b
xor r10d, dword [r14 + r9*4]
shr ecx, 0x18
mov ebx, r10d
shr ebx, 8
xor r10d, r8d
movzx r8d, r10b
xor ebx, dword [r14 + r8*4]
movzx r8d, bl
xor r8d, ecx
mov ebp, dword [r14 + r8*4]
cmp edx, dword [rdi + 0xdc]
jne 0x14006668e
lea r14d, [rdx + 1]
test edx, edx
je 0x140066607
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sar ecx, 1
add ecx, edx
jmp 0x14006660c
mov ecx, 8
cmp ecx, r14d
cmovg r14d, ecx
movsxd rcx, r14d
shl rcx, 2
inc dword [rax + 0x3c8]
mov rdx, qword [0x140287298]
call qword [0x1401b7d80]
mov rsi, rax
mov rdx, qword [rdi + 0xe0]
test rdx, rdx
je 0x14006667a
movsxd r8, dword [rdi + 0xd8]
shl r8, 2
mov rcx, rsi
call fcn.140159580
mov rcx, qword [rdi + 0xe0]
test rcx, rcx
je 0x14006666d
mov rax, qword [0x140287288]
test rax, rax
je 0x14006666d
dec dword [rax + 0x3c8]
mov rdx, qword [0x140287298]
call qword [0x1401b7d88]
mov qword [rdi + 0xe0], rsi
mov dword [rdi + 0xdc], r14d
mov edx, dword [rdi + 0xd8]
shr ebx, 8
xor ebp, ebx
not ebp
movsxd rax, edx
mov dword [rsi + rax*4], ebp
inc dword [rdi + 0xd8]
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret

Function at 0x140069370
Capabilities:
Hash data with crc32

Disassembly:
mov rax, rdx
mov rdx, r8
sub rdx, rax
test r8, r8
cmove rdx, r8
mov r8, qword [rcx + 0xe0]
movsxd rcx, dword [rcx + 0xd8]
mov r8d, dword [r8 + rcx*4 - 4]
mov rcx, rax
jmp fcn.140069a00
Function at 0x140069a00
Capabilities:
Hash data with crc32

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
mov edi, r8d
mov rbx, rcx
mov rax, qword [0x1401b7cc0]
xor rax, rsp
mov qword [rsp + 0x50], rax
not edi
test rdx, rdx
je 0x140069b5d
mov r12, rdx
movabs r13, 0x7d092e99070a0cf0
lea r14, [rsp + 0x30]
lea rsi, [0x1401613a0]
mov dword [rsp + 0x2c], edi
jmp 0x140069a6b
movzx ecx, dil
shr edi, 8
xor ecx, eax
xor edi, dword [rsi + rcx*4]
mov r12, rbp
mov rbx, r15
test rbp, rbp
je 0x140069c69
lea rbp, [r12 - 1]
lea r15, [rbx + 1]
movzx eax, byte [rbx]
cmp eax, 7
jne 0x140069b20
movabs rax, 0x32e313192c64eb7f
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x40], r13
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x38], rax
movabs rax, 0x32b75f4c6d22ae3b
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x20], r13
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
movaps xmm0, xmmword [rsp + 0x30]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x30], xmm0
mov r8d, 7
mov rcx, r15
mov rdx, r14
call fcn.140140010
test eax, eax
je 0x140069b4a
cmp rbp, 8
jb 0x140069a5c
add rbx, 9
add r12, 0xfffffffffffffff7
jmp 0x140069b52
cmp rbp, 2
jb 0x140069a50
cmp al, 0x23
jne 0x140069a50
cmp byte [r15], 0x23
jne 0x140069a50
cmp byte [rbx + 2], 0x23
cmove edi, dword [rsp + 0x2c]
jmp 0x140069a50
add rbx, 8
add r12, 0xfffffffffffffff8
mov r15, rbx
mov rbp, r12
jmp 0x140069a5c
movzx ecx, byte [rbx]
test cl, cl
je 0x140069c69
movabs rsi, 0x7d092e99070a0cf0
xor r13d, r13d
lea rbp, [rsp + 0x40]
lea r14, [rsp + 0x30]
mov r12d, 8
mov dword [rsp + 0x2c], edi
jmp 0x140069c27
movabs rax, 0x32e313192c64eb7f
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x38], rax
movabs rax, 0x32b75f4c6d22ae3b
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x20], rsi
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x20], rbp
mov rax, qword [rsp + 0x20]
movaps xmm0, xmmword [rsp + 0x30]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x30], xmm0
mov r8d, 7
mov rcx, r15
mov rdx, r14
call fcn.140140010
add rbx, 8
test eax, eax
cmovne r13d, r12d
cmove r15, rbx
mov eax, r13d
movzx ecx, byte [r15]
mov rbx, r15
mov r13d, eax
test cl, cl
je 0x140069c69
lea r15, [rbx + 1]
cmp cl, 7
je 0x140069b90
lea eax, [r13 - 1]
test r13d, r13d
jg 0x140069c19
movzx ecx, cl
cmp ecx, 0x23
jne 0x140069c54
cmp byte [r15], 0x23
jne 0x140069c54
cmp byte [rbx + 2], 0x23
cmove edi, dword [rsp + 0x2c]
movzx edx, dil
shr edi, 8
xor edx, ecx
lea rcx, [0x1401613a0]
xor edi, dword [rcx + rdx*4]
jmp 0x140069c19
not edi
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1400b6210
mov eax, edi
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret