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

Disassembly:
push rbx
sub rsp, 0x20
mov rcx, qword [0x180121940]
xorps xmm0, xmm0
add rcx, 1
mov rbx, qword [0x180121968]
js 0x18001d044
cvtsi2ss xmm0, rcx
jmp 0x18001d059
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x180121930]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceilf
movss xmm1, dword [0x180107460]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x18001d08b
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x18001d08b
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 0x18001d0bd
cmp rbx, 0x200
jae 0x18001d0ba
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x18001d0bd
mov rbx, rcx
mov rdx, rbx
add rsp, 0x20
pop rbx
jmp 0x18001d5b0
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
jbe 0x18001d5e1
lea rcx, str.invalid_hash_bucket_count
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x180121938]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x180121948]
lea rdx, [rdi + rdi]
call fcn.1800046d0
mov rax, qword [0x180121938]
lea r9, [rdi - 1]
mov qword [0x180121960], r9
mov qword [0x180121968], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x18001d754
mov qword [rsp + 0x40], rsi
movabs rdi, 0x100000001b3
movabs rsi, 0xcbf29ce484222325
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rsi
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rdi
xor r11, rdx
imul r11, rdi
and r11, r9
shl r11, 4
add r11, qword [0x180121948]
mov r9, qword [r11]
cmp r9, rbx
jne 0x18001d6a0
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x18001d715
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x18001d6dd
mov r10, qword [rdx]
cmp r10, rax
je 0x18001d6d7
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x18001d715
cmp r9, rdx
je 0x18001d6f1
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x18001d729
cmp r9, rdx
jne 0x18001d6e2
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
je 0x18001d74f
mov r9, qword [0x180121960]
jmp 0x18001d651
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x18001d715
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x18001d5b0
Capabilities:
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rcx, qword [0x180121940]
xorps xmm0, xmm0
add rcx, 1
mov rbx, qword [0x180121968]
js 0x18001d044
cvtsi2ss xmm0, rcx
jmp 0x18001d059
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x180121930]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceilf
movss xmm1, dword [0x180107460]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x18001d08b
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x18001d08b
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 0x18001d0bd
cmp rbx, 0x200
jae 0x18001d0ba
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x18001d0bd
mov rbx, rcx
mov rdx, rbx
add rsp, 0x20
pop rbx
jmp 0x18001d5b0
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
jbe 0x18001d5e1
lea rcx, str.invalid_hash_bucket_count
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x180121938]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x180121948]
lea rdx, [rdi + rdi]
call fcn.1800046d0
mov rax, qword [0x180121938]
lea r9, [rdi - 1]
mov qword [0x180121960], r9
mov qword [0x180121968], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x18001d754
mov qword [rsp + 0x40], rsi
movabs rdi, 0x100000001b3
movabs rsi, 0xcbf29ce484222325
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rsi
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rdi
xor r11, rdx
imul r11, rdi
and r11, r9
shl r11, 4
add r11, qword [0x180121948]
mov r9, qword [r11]
cmp r9, rbx
jne 0x18001d6a0
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x18001d715
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x18001d6dd
mov r10, qword [rdx]
cmp r10, rax
je 0x18001d6d7
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x18001d715
cmp r9, rdx
je 0x18001d6f1
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x18001d729
cmp r9, rdx
jne 0x18001d6e2
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
je 0x18001d74f
mov r9, qword [0x180121960]
jmp 0x18001d651
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x18001d715
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x18001d760
Capabilities:
Hash data using fnv

Disassembly:
push rsi
push rdi
sub rsp, 0x28
movabs rax, 0xfffffffffffffff
mov rsi, rcx
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
jbe 0x18001d795
lea rcx, str.invalid_hash_bucket_count
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [rdx - 1]
mov qword [rsp + 0x50], rbx
mov rbx, qword [rsi + 8]
or rax, rdi
bsr rcx, rax
mov r8, rbx
mov qword [rsp + 0x20], r14
inc ecx
shl rdi, cl
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
call fcn.1800046d0
lea rax, [rdi - 1]
mov qword [rsi + 0x38], rdi
mov qword [rsi + 0x30], rax
mov rax, qword [rsi + 8]
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x18001d8d6
mov qword [rsp + 0x58], rbp
movabs rdi, 0x100000001b3
movabs rbp, 0xcbf29ce484222325
nop dword [rax + rax]
movzx edx, byte [rax + 0x11]
movzx r9d, byte [rax + 0x10]
mov r11, qword [rsi + 0x30]
xor r9, rbp
mov rcx, qword [rcx]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x12]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x13]
imul r9, rdi
xor r9, rdx
imul r9, rdi
and r11, r9
shl r11, 4
add r11, qword [rsi + 0x18]
mov r9, qword [r11]
cmp r9, rbx
jne 0x18001d850
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x18001d8c5
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x18001d88d
mov r10, qword [rdx]
cmp r10, rax
je 0x18001d887
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x18001d8c5
cmp r9, rdx
je 0x18001d8a1
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x18001d8e7
cmp r9, rdx
jne 0x18001d892
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
jne 0x18001d800
mov rbp, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
mov r14, qword [rsp + 0x20]
add rsp, 0x28
pop rdi
pop rsi
ret
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x18001d8c5
Function at 0x18001dab0
Capabilities:
Hash data using fnv

Disassembly:
push rdi
sub rsp, 0x30
mov rdi, qword [rcx]
test rdi, rdi
je 0x18001db5c
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x18001db5c
mov rax, qword [rdi + 0x38]
shr rax, 3
cmp rax, rcx
jbe 0x18001daf3
mov rdx, qword [rdi + 8]
mov rcx, rdi
mov r8, rdx
mov rdx, qword [rdx]
add rsp, 0x30
pop rdi
jmp 0x18001db70
mov rcx, qword [rdi + 8]
mov rax, qword [rcx + 8]
mov qword [rax], 0
mov rcx, qword [rcx]
test rcx, rcx
je 0x18001db2a
mov qword [rsp + 0x48], rbx
nop
mov rbx, qword [rcx]
mov edx, 0x28
call fcn.1800a7420
mov rcx, rbx
test rbx, rbx
jne 0x18001db10
mov rbx, qword [rsp + 0x48]
mov rax, qword [rdi + 8]
lea r8, [rsp + 0x20]
mov qword [rax], rax
mov rax, qword [rdi + 8]
mov qword [rax + 8], rax
mov qword [rdi + 0x10], 0
mov rax, qword [rdi + 8]
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x18]
mov qword [rsp + 0x20], rax
call fcn.180004980
add rsp, 0x30
pop rdi
ret
mov rax, rsp
push rbp
push rsi
push r14
sub rsp, 0x50
mov rbp, r8
mov r14, rdx
mov rsi, rcx
cmp rdx, r8
je 0x18001dc74
mov rdx, qword [rcx + 0x18]
movabs r8, 0x100000001b3
mov qword [rax + 0x10], rbx
mov rbx, r14
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
mov r12, qword [rcx + 8]
movzx ecx, byte [r14 + 0x10]
mov qword [rax - 0x20], r13
mov r13, qword [r14 + 8]
mov qword [rax - 0x28], r15
movabs rax, 0xcbf29ce484222325
mov r15, qword [rsi + 0x30]
xor rcx, rax
movzx eax, byte [r14 + 0x11]
imul rcx, r8
mov qword [rsp + 0x30], rdx
xor rcx, rax
movzx eax, byte [r14 + 0x12]
imul rcx, r8
xor rcx, rax
movzx eax, byte [r14 + 0x13]
imul rcx, r8
xor rcx, rax
imul rcx, r8
and r15, rcx
shl r15, 4
add r15, rdx
mov rax, qword [r15]
mov qword [rsp + 0x20], rax
mov rax, qword [r15 + 8]
mov qword [rsp + 0x28], rax
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x28
call fcn.1800a7420
dec qword [rsi + 0x10]
cmp rdi, qword [rsp + 0x28]
je 0x18001dc80
cmp rbx, rbp
jne 0x18001dc20
cmp qword [rsp + 0x20], r14
jne 0x18001dc4d
mov qword [r15], rbx
mov r12, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x80]
mov r15, qword [rsp + 0x40]
mov qword [r13], rbx
mov qword [rbx + 8], r13
mov r13, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x78]
mov rax, rbp
add rsp, 0x50
pop r14
pop rsi
pop rbp
ret
cmp qword [rsp + 0x20], r14
jne 0x18001dc8f
mov qword [r15], r12
mov rax, r12
jmp 0x18001dc92
mov rax, r13
mov qword [r15 + 8], rax
cmp rbx, rbp
je 0x18001dc4d
nop dword [rax + rax]
movzx ecx, byte [rbx + 0x10]
movabs rdx, 0x100000001b3
mov r15, qword [rsi + 0x30]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movzx eax, byte [rbx + 0x11]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x12]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x13]
imul rcx, rdx
xor rcx, rax
imul rcx, rdx
and r15, rcx
shl r15, 4
add r15, qword [rsp + 0x30]
mov r14, qword [r15 + 8]
nop dword [rax]
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x28
call fcn.1800a7420
dec qword [rsi + 0x10]
cmp rdi, r14
je 0x18001dd26
cmp rbx, rbp
jne 0x18001dd00
jmp 0x18001dc4a
mov qword [r15], r12
mov qword [r15 + 8], r12
cmp rbx, rbp
jne 0x18001dca0
jmp 0x18001dc4d
Function at 0x18001db70
Capabilities:
Hash data using fnv

Disassembly:
push rdi
sub rsp, 0x30
mov rdi, qword [rcx]
test rdi, rdi
je 0x18001db5c
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x18001db5c
mov rax, qword [rdi + 0x38]
shr rax, 3
cmp rax, rcx
jbe 0x18001daf3
mov rdx, qword [rdi + 8]
mov rcx, rdi
mov r8, rdx
mov rdx, qword [rdx]
add rsp, 0x30
pop rdi
jmp 0x18001db70
mov rcx, qword [rdi + 8]
mov rax, qword [rcx + 8]
mov qword [rax], 0
mov rcx, qword [rcx]
test rcx, rcx
je 0x18001db2a
mov qword [rsp + 0x48], rbx
nop
mov rbx, qword [rcx]
mov edx, 0x28
call fcn.1800a7420
mov rcx, rbx
test rbx, rbx
jne 0x18001db10
mov rbx, qword [rsp + 0x48]
mov rax, qword [rdi + 8]
lea r8, [rsp + 0x20]
mov qword [rax], rax
mov rax, qword [rdi + 8]
mov qword [rax + 8], rax
mov qword [rdi + 0x10], 0
mov rax, qword [rdi + 8]
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x18]
mov qword [rsp + 0x20], rax
call fcn.180004980
add rsp, 0x30
pop rdi
ret
mov rax, rsp
push rbp
push rsi
push r14
sub rsp, 0x50
mov rbp, r8
mov r14, rdx
mov rsi, rcx
cmp rdx, r8
je 0x18001dc74
mov rdx, qword [rcx + 0x18]
movabs r8, 0x100000001b3
mov qword [rax + 0x10], rbx
mov rbx, r14
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
mov r12, qword [rcx + 8]
movzx ecx, byte [r14 + 0x10]
mov qword [rax - 0x20], r13
mov r13, qword [r14 + 8]
mov qword [rax - 0x28], r15
movabs rax, 0xcbf29ce484222325
mov r15, qword [rsi + 0x30]
xor rcx, rax
movzx eax, byte [r14 + 0x11]
imul rcx, r8
mov qword [rsp + 0x30], rdx
xor rcx, rax
movzx eax, byte [r14 + 0x12]
imul rcx, r8
xor rcx, rax
movzx eax, byte [r14 + 0x13]
imul rcx, r8
xor rcx, rax
imul rcx, r8
and r15, rcx
shl r15, 4
add r15, rdx
mov rax, qword [r15]
mov qword [rsp + 0x20], rax
mov rax, qword [r15 + 8]
mov qword [rsp + 0x28], rax
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x28
call fcn.1800a7420
dec qword [rsi + 0x10]
cmp rdi, qword [rsp + 0x28]
je 0x18001dc80
cmp rbx, rbp
jne 0x18001dc20
cmp qword [rsp + 0x20], r14
jne 0x18001dc4d
mov qword [r15], rbx
mov r12, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x80]
mov r15, qword [rsp + 0x40]
mov qword [r13], rbx
mov qword [rbx + 8], r13
mov r13, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x78]
mov rax, rbp
add rsp, 0x50
pop r14
pop rsi
pop rbp
ret
cmp qword [rsp + 0x20], r14
jne 0x18001dc8f
mov qword [r15], r12
mov rax, r12
jmp 0x18001dc92
mov rax, r13
mov qword [r15 + 8], rax
cmp rbx, rbp
je 0x18001dc4d
nop dword [rax + rax]
movzx ecx, byte [rbx + 0x10]
movabs rdx, 0x100000001b3
mov r15, qword [rsi + 0x30]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movzx eax, byte [rbx + 0x11]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x12]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x13]
imul rcx, rdx
xor rcx, rax
imul rcx, rdx
and r15, rcx
shl r15, 4
add r15, qword [rsp + 0x30]
mov r14, qword [r15 + 8]
nop dword [rax]
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x28
call fcn.1800a7420
dec qword [rsi + 0x10]
cmp rdi, r14
je 0x18001dd26
cmp rbx, rbp
jne 0x18001dd00
jmp 0x18001dc4a
mov qword [r15], r12
mov qword [r15 + 8], r12
cmp rbx, rbp
jne 0x18001dca0
jmp 0x18001dc4d
Function at 0x1800238d0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r12, r8
mov r14, rdx
mov rsi, rcx
movzx r13d, byte [r8]
movabs rax, 0xcbf29ce484222325
xor r13, rax
movabs rcx, 0x100000001b3
imul r13, rcx
movzx eax, byte [r8 + 1]
xor r13, rax
imul r13, rcx
mov rcx, qword [rsi + 0x30]
and rcx, r13
add rcx, rcx
mov rax, qword [rsi + 0x18]
mov rbx, qword [rax + rcx*8 + 8]
lea rdx, [rsi + 8]
mov r15, qword [rdx]
cmp rbx, r15
jne 0x18002393f
mov rbx, r15
mov rbp, r15
jmp 0x180023988
mov rcx, qword [rax + rcx*8]
movzx eax, word [r8]
cmp ax, word [rbx + 0x10]
je 0x18002395f
nop dword [rax]
cmp rbx, rcx
je 0x180023982
mov rbx, qword [rbx + 8]
cmp ax, word [rbx + 0x10]
jne 0x180023950
mov qword [r14], rbx
mov byte [r14 + 8], 0
mov rax, r14
mov rbx, qword [rsp + 0x88]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r15, rbx
mov rbp, rbx
movabs rax, 0x7ffffffffffffff
cmp qword [rsi + 0x10], rax
jne 0x1800239a6
lea rcx, str.unordered_map_set_too_long
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x28], 0
mov ecx, 0x20
call fcn.1800a7430
mov rdi, rax
mov qword [rsp + 0x28], rax
movzx eax, word [r12]
mov word [rdi + 0x10], ax
xor r12d, r12d
mov qword [rdi + 0x18], r12
mov rcx, qword [rsi + 0x10]
add rcx, 1
xorps xmm0, xmm0
js 0x1800239ea
cvtsi2ss xmm0, rcx
jmp 0x1800239ff
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [rsi + 0x38]
xorps xmm1, xmm1
test rcx, rcx
js 0x180023a12
cvtsi2ss xmm1, rcx
jmp 0x180023a27
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rsi]
seta al
test al, al
je 0x180023a89
mov rcx, rsi
call fcn.180009d60
mov rcx, r13
and rcx, qword [rsi + 0x30]
add rcx, rcx
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [rsi + 8]
cmp rax, rbx
je 0x180023a7c
mov rdx, qword [rdx + rcx*8]
movzx ecx, word [rdi + 0x10]
cmp cx, word [rax + 0x10]
je 0x180023a79
mov rbx, rax
cmp rax, rdx
je 0x180023abd
mov rax, qword [rax + 8]
cmp cx, word [rax + 0x10]
jne 0x180023a67
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rbp, rbx
mov r15, qword [rsp + 0x20]
mov rdx, qword [rbx + 8]
inc qword [rsi + 0x10]
mov qword [rdi], r15
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rcx, qword [rsi + 0x18]
mov rax, qword [rsi + 0x30]
and rax, r13
add rax, rax
mov r8, qword [rcx + rax*8]
cmp r8, qword [rsi + 8]
jne 0x180023ac4
mov qword [rcx + rax*8], rdi
jmp 0x180023ad6
mov qword [rsp + 0x20], rax
jmp 0x180023a81
cmp r8, rbp
jne 0x180023acf
mov qword [rcx + rax*8], rdi
jmp 0x180023adb
cmp qword [rcx + rax*8 + 8], rdx
jne 0x180023adb
mov qword [rcx + rax*8 + 8], rdi
mov qword [r14], rdi
mov byte [r14 + 8], 1
jmp 0x180023967
Function at 0x180033130
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r13, r8
mov r14, rdx
mov rsi, rcx
movzx r12d, byte [r8]
movabs rax, 0xcbf29ce484222325
xor r12, rax
movabs rcx, 0x100000001b3
imul r12, rcx
movzx eax, byte [r8 + 1]
xor r12, rax
imul r12, rcx
movzx eax, byte [r8 + 2]
xor r12, rax
imul r12, rcx
movzx eax, byte [r8 + 3]
xor r12, rax
imul r12, rcx
mov rcx, qword [rsi + 0x30]
and rcx, r12
add rcx, rcx
mov rax, qword [rsi + 0x18]
mov rbx, qword [rax + rcx*8 + 8]
lea rdx, [rsi + 8]
mov r15, qword [rdx]
cmp rbx, r15
jne 0x1800331b7
mov rbx, r15
mov rbp, r15
jmp 0x1800331fa
mov rcx, qword [rax + rcx*8]
mov eax, dword [r8]
cmp eax, dword [rbx + 0x10]
je 0x1800331d1
cmp rbx, rcx
je 0x1800331f4
mov rbx, qword [rbx + 8]
cmp eax, dword [rbx + 0x10]
jne 0x1800331c3
mov qword [r14], rbx
mov byte [r14 + 8], 0
mov rax, r14
mov rbx, qword [rsp + 0x88]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r15, rbx
mov rbp, rbx
movabs rax, 0x666666666666666
cmp qword [rsi + 0x10], rax
jne 0x180033218
lea rcx, str.unordered_map_set_too_long
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x28], 0
mov ecx, 0x28
call fcn.1800a7430
mov rdi, rax
mov qword [rsp + 0x28], rax
mov eax, dword [r13]
mov dword [rdi + 0x10], eax
xor r13d, r13d
mov qword [rdi + 0x14], r13
mov qword [rdi + 0x1c], r13
mov rdx, qword [rsi + 0x10]
add rdx, 1
xorps xmm0, xmm0
js 0x18003325e
cvtsi2ss xmm0, rdx
jmp 0x180033276
mov rcx, rdx
shr rcx, 1
mov rax, rdx
and eax, 1
or rcx, rax
cvtsi2ss xmm0, rcx
addss xmm0, xmm0
mov rcx, qword [rsi + 0x38]
xorps xmm1, xmm1
test rcx, rcx
js 0x180033289
cvtsi2ss xmm1, rcx
jmp 0x18003329e
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rsi]
seta al
test al, al
je 0x180033308
mov rcx, rsi
call fcn.18001d910
mov rdx, rax
mov rcx, rsi
call fcn.18001d760
mov rdx, qword [rsi + 0x30]
and rdx, r12
add rdx, rdx
mov rcx, qword [rsi + 0x18]
mov rax, qword [rcx + rdx*8 + 8]
mov rbx, qword [rsi + 8]
cmp rax, rbx
je 0x1800332fb
mov rdx, qword [rcx + rdx*8]
mov ecx, dword [rdi + 0x10]
cmp ecx, dword [rax + 0x10]
je 0x1800332f8
mov rbx, rax
cmp rax, rdx
je 0x18003333c
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x1800332e7
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rbp, rbx
mov r15, qword [rsp + 0x20]
mov rdx, qword [rbx + 8]
inc qword [rsi + 0x10]
mov qword [rdi], r15
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rcx, qword [rsi + 0x18]
mov rax, qword [rsi + 0x30]
and rax, r12
add rax, rax
mov r8, qword [rcx + rax*8]
cmp r8, qword [rsi + 8]
jne 0x180033343
mov qword [rcx + rax*8], rdi
jmp 0x180033355
mov qword [rsp + 0x20], rax
jmp 0x180033300
cmp r8, rbp
jne 0x18003334e
mov qword [rcx + rax*8], rdi
jmp 0x18003335a
cmp qword [rcx + rax*8 + 8], rdx
jne 0x18003335a
mov qword [rcx + rax*8 + 8], rdi
mov qword [r14], rdi
mov byte [r14 + 8], 1
jmp 0x1800331d9
Function at 0x180033cd0
Capabilities:
Log keystrokes via polling

Disassembly:
push rbx
sub rsp, 0x40
mov rax, qword [0x18011d040]
xor rax, rsp
mov qword [rsp + 0x30], rax
movss xmm2, dword [0x18012188c]
mov rbx, rcx
lea rcx, [0x180120420]
call fcn.180005a50
subss xmm2, dword [0x180121888]
xorps xmm1, xmm1
mov eax, eax
xorps xmm0, xmm0
lea rdx, [0x180121898]
mov rcx, rbx
cvtsi2ss xmm1, rax
subss xmm1, xmm0
addss xmm1, xmm0
mulss xmm1, dword [0x180107224]
mulss xmm1, xmm2
addss xmm1, dword [0x180121888]
movss dword [0x180121890], xmm1
call fcn.18000a7a0
lea rcx, [rsp + 0x20]
call fcn.180005e10
xorps xmm1, xmm1
mov rcx, qword [rax]
movabs rax, 0x20c49ba5e353f7cf
mov qword [rbx + 0x10], rcx
sub rcx, qword [rbx + 8]
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cvtsi2ss xmm1, rdx
divss xmm1, dword [0x180107440]
movss dword [rbx + 0x1c], xmm1
movss xmm0, dword [0x180121894]
addss xmm0, dword [0x180121890]
subss xmm0, xmm1
divss xmm0, dword [0x180107440]
cvtps2pd xmm0, xmm0
call fcn.1800335a0
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180033dd0
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1800a7090
add rsp, 0x40
pop rbx
ret
lea rcx, [rsp + 0x28]
mov qword [rsp + 0x28], 0
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rsp + 0x2c]
mov edx, 0x204
mov rcx, qword [0x180120100]
mov r8d, 0x2000000
call qword [sym.imp.USER32.dll_PostMessageW]
lea rcx, [rsp + 0x20]
call fcn.180005e10
mov rcx, rbx
mov rdx, qword [rax]
mov qword [rbx + 8], rdx
call fcn.18000a5d0
mov al, 1
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1800a7090
add rsp, 0x40
pop rbx
ret
Function at 0x180035220
Capabilities:
Log keystrokes via polling

Disassembly:
push rbx
sub rsp, 0x40
mov rax, qword [0x18011d040]
xor rax, rsp
mov qword [rsp + 0x30], rax
movss xmm2, dword [0x18012182c]
mov rbx, rcx
lea rcx, [0x180120420]
call fcn.180005a50
subss xmm2, dword [0x180121828]
xorps xmm1, xmm1
mov eax, eax
xorps xmm0, xmm0
lea rdx, [0x180121838]
mov rcx, rbx
cvtsi2ss xmm1, rax
subss xmm1, xmm0
addss xmm1, xmm0
mulss xmm1, dword [0x180107224]
mulss xmm1, xmm2
addss xmm1, dword [0x180121828]
movss dword [0x180121830], xmm1
call fcn.18000a7a0
lea rcx, [rsp + 0x20]
call fcn.180005e10
xorps xmm1, xmm1
mov rcx, qword [rax]
movabs rax, 0x20c49ba5e353f7cf
mov qword [rbx + 0x10], rcx
sub rcx, qword [rbx + 8]
imul rcx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cvtsi2ss xmm1, rdx
divss xmm1, dword [0x180107440]
movss dword [rbx + 0x1c], xmm1
movss xmm0, dword [0x180121834]
addss xmm0, dword [0x180121830]
subss xmm0, xmm1
divss xmm0, dword [0x180107440]
cvtps2pd xmm0, xmm0
call fcn.1800335a0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180035320
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1800a7090
add rsp, 0x40
pop rbx
ret
lea rcx, [rsp + 0x28]
mov qword [rsp + 0x28], 0
call qword [sym.imp.USER32.dll_GetCursorPos]
movsxd r9, dword [rsp + 0x2c]
mov edx, 0x201
mov rcx, qword [0x180120100]
mov r8d, 0x1000000
call qword [sym.imp.USER32.dll_PostMessageW]
lea rcx, [rsp + 0x20]
call fcn.180005e10
mov rcx, rbx
mov rdx, qword [rax]
mov qword [rbx + 8], rdx
call fcn.18000a5d0
mov al, 1
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1800a7090
add rsp, 0x40
pop rbx
ret